Souborové systémy v cloudu
Transkript
Souborové systémy v cloudu Filip Hubík @ MetaCloud ([email protected]) Adam Tomek @ MetaCloud Masarykova univerzita a CESNET 7.10.2014 Obsah a cíle prezentace Obsah I Představení MetaCloud skupiny I Definice problematiky I I I I I Cloud a úložiště Náhled na souborové systémy Ceph podrobně Gluster podrobně Benchmarking I I Testovací infrastruktura Výsledky testů Závěr a otázky Cíle přednášky I Vytvořit základní představu o vhodnosti použití vybraných distr. soub. systémů v cloudovém prostředí I Porovnat měřením jejich vlastnosti na testovací infrastruktuře a dopomoci tak k případnímu rozhodování o jejich nasazení I Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 2 / 37 Kdo jsme MetaCloud team I I Cloudové služby pro akademické sféry Spolupráce dvou iniciativ I I CESNET – MetaCentrum – Xen Masarykova univerzita – CERIT-SC – KVM I Hybridní cloud I Malá až střední velikost I OpenNebula middleware I Více jak 3 roky zkušeností I Doprovodné aktivity (HA, support, . . . ) I Výzkumné projekty I Kontakt: [email protected] Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 3 / 37 Úvodem - architektura cloudu Typy cloudů: I Service (SaaS) I Platform (PaaS) I Infrastructure (IaaS) * as a service [3] Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 4 / 37 Úvodem - skladba IaaS cloudu Jádrem cloudu na IaaS úrovni je I Middleware (uživ. rozhraní, scheduler, API, managment, . . . ) I I I I I I I OpenNebula, Openstack, CloudStack, Nimbus Virtualizace HW (Xen, KVM, VMWare, . . . ) Množství uzlů CPU Pamět Síťové prostředky (OpenFlow + Open vSwitch) Úložiště obrazů a dat („Image storage“) I I I I Základní rozhodnutí ovlivňující dlouhodobý provoz cloudu Různé formáty obrazů (QCOW, RDB, RAW, VDI, . . . ) Velikost obrazu alokována předem Problém - distribuce obrazů cloudem I I I Kopírování (rsync, scp, ftp, . . . ) Distribuovaný souborový systém Jiné přístupy (SAN/NAS magie, replikace, vzdálená úložiště & marketplace, . . . ) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 5 / 37 Typy souborových systémů I I Lokální – klasické FS, žádné sdílení dat mezi uzly Síťové – lokální + síťový protokol, klient/server 1:N model (NFS, FTP) I Distribuované – data jsou transparentně distribuována mezi více uzlů úložiště, M:N model (DFS, AFS) I I I I Symetrické – metadata umístěna na klientské i serverové části Asymetrické – metadata umístěna na klientské nebo serverové části Sdílené – sdílený přístup všech uzlů, zámky I I I I Paralelní – konkurentní I/O operace nad soubory, „striping“ (GPFS, Ceph, Gluster(!), MooseFS, HDFS, Lustre, . . . ) Klastrované – symetrické, přímý přístup k blokovému zařízení, drahá kapacita, SAN (GFS, OCFS, . . . ) „User-space“ – běží mimo kernel v uživatelském prostoru Objektové – data objekty + metadata + globalID, ne struktura, ploché, méně metadat Globální – každý uzel stejný pohled Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 6 / 37 Požadavky na FS v cloudu I Každý host dokáže spustit každou VM I Distribuovanost (levná a heterogenní infrastruktura) I Lineární škálovatelnost kapacity a propustnosti I Eliminace SPOF (metadata server) I Konkurentní přístup k datům I Vysoká dostupnost, tolerance chyb I Ideálně paralelní I/O operace I Správa přístupu (různé části úložiště různá ACL) I Open-source I Live migrace I Snapshoty bez podpory obrazu Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 7 / 37 Požadavky na škálovatelnost Kapacita I Vertikální - počet disků na stroj (omezeno řadičem) Propustnost I Horizontální - počet strojů formujících úložiště Problémy u distribuovaných FS I Linearita - kapacita úložiště musí být rovna součtu kapacit jedn. strojů I Síťová infrastuktura musí mít dostatečnou propustnost Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 8 / 37 Vhodné souborové systémy Cíleny pro použití v cloudu I Ceph I GlusterFS Další možné varianty I GPFS - proprietární, problémy s Xen I HDFS - metadata server SPOF, Copy-On-Write model I MooseFS, XtreemFS - poměrně mladý, vyhodnocování I Lustre - supercomputing I ... Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 9 / 37 Souboj titánů Ceph v produkci (Inktank, později Red Hat) GlusterFS v produkci (Gluster, poté Red Hat) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 10 / 37 Ceph I I I I I I I I Částečně POSIX distribuovaný soub. systém Nativně objektový, blokový (RBD), souborový (CephFS) Metadata oddělena i neoddělena CephFS není v produkční fázi (08-2014) „Rados block device“ – vhodné pro cloud bez FUSE Rozsáhlé možnosti konfigurace (v testech výchozí hodnoty) Komplexní ACL CRUSH algoritmus I I I I I I I Dynamický, load balancing, prokládání nativně, replikace Stavební kameny OSD – CPU, paměť, síťové rozhraní, diskový prostor Monitor – Informuje OSD o změnách topologie („cluster map“) MDS – Metadata server (CephFS) Klient – Jádro >= 3.9 Není infiniband pouze TCP Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 11 / 37 Ceph – architektura Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 12 / 37 GlusterFS I I I I I I I I I I I I I Distribuovaný POSIX FS primárně na souborové úrovni Není centralizovaný metadata server (elastický hash) Teoretická velikost až 72 ∗ 106 zettabyte (XFS subvol.) Integrace s QEMU (blokově bez FUSE, libgfapi - drive file=gluster://server[:port]/volname/image[?transport=...]) HA a samoopravné vlastnosti Souborový systém v otevřené formě, user-space model Georeplikace (asynchronní replikace) Pasivní load balancing, prokládání, replikace (synchr.) Dynamická práce se svazky Globální namespace RDMA, TCP Nejsou snapshoty! (potřeba použít QCOW) Jednoduchá konfigurace Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 13 / 37 Gluster – architektura a API Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 14 / 37 Gluster – terminologie a použití Terminologie I Brick – zákl. stavební kámen, úl. prostor zapojen do volume I Volume (svazek) – log. org. souborů, globální namespace I Klient – uzel připojující volume (i server) I Server – uzel, na kterém leží brick I Translator – kód prováděný nad daty (modulárnost) I Storage, Debug, Encryption, Scheduler, Protocol, . . . I Subvolume – brick, který už byl zpracován translatorem Módy organizace dat ve svazku I Distribuce I Replikace I Prokládání Příklad tvorby svazku I $ gluster volume create vol0 replica 2 stripe 2 server1:/data/gv0 server2:/data/gv0 server3:/data/gv0 server4:/data/gv0 Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 15 / 37 Distribuovaný mód I I I I Data distribuována na úrovni souborů Žádná redundance Obdoba RAID0 či JBOD Selhání uzlu znamená ztrátu dat Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 16 / 37 Replikace I I Redundance Selhání disku I I Self-healing Manuální intervence („Split-brain“ scénář) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 17 / 37 Distribuovaná replikace I I I Koefient replikace r=2 Počet bricků musí být nasobek r Redundance + propustnost při čtení Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 18 / 37 Prokládání („striping“) souborů I I I I Dělení na úrovni souborů (RAID0) Velmi velké soubory Vhodné pro vysoce konkurentní prostředí (DB, HPC) Počet bricků roven koeficientu prokládání Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 19 / 37 Distribuované prokládání I I Předchozí výhody + škálovatelnost Počet bricků násobkem koeficientu prokládání Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 20 / 37 Prokládaná replikace I I Obdoba RAID1+0 Velké soubory ve vysoce par. prostředí (MapReduce) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 21 / 37 Distr. prokládaná replikace I I I Výhody předchozího + škálovatelnost MapReduce Počet bricků násobkem násobků obou koeficientů Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 22 / 37 Gluster – georeplikace I I I I I I I I Asynchronní replikace (checkpointing) Inkrementální – rsync Master/slave model LAN, WAN Zálohování dat Čas musí být synchronizován na všech uzlech (NTP) V cloudu použítí s QCOW real-time snapshoty Kaskádování (cíl = zdroj) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 23 / 37 Testovaná architektura Hardware I 10 klientských uzlů, 4 serverové uzly stejného typu I Intel Xeon CPU E5472 3.00GHz, 2GB RAM Disk I I I I I 250GB na uzel hdparm – 192MB/s čtení iozone – cca 190MB/s čtení i zápis dd – 40MB/s zápis I Odstranění virt. vrstvy (bez Xen či KVM) I Gluster nutno připojovat přes FUSE I Debian 7 Wheezy (jádra >= 3.9, 3.14-0.bpo.2-amd64) I XFS (produkční u obou FS) I IPoIB (Ceph neumí RDMA!) – 4X DDR (20 Gb/s) Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 24 / 37 Testovací konfigurace Iozone I V praxi 1-10 souběžných procesů na uzel (menší cloud) I Souběžné vytížení úložiště ze strany klientů Velikost obrazů 1-4GB na uzel I Verze 3.397 I Distribuovaný režim (parametr -+m) I Velikost záznamu (record size) 256kB Ceph I Verze 0.80.4 (06-2014) I Koeficient replikace 2, min repl. 1, prokládání výchozí I pg_num & pgp_num = 256 I Obrazy připojeny přímo přes RBD blokové zařízení GlusterFS I Verze 3.5.2 (09-2014) I Koeficient replikace 2, prokládání 2 I Obrazy připojeny přes FUSE (pokud není uvedeno jinak) I Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 25 / 37 Gluster 1-9 uzlů, 1 proces/uzel I DR mód ovlivněn replikací, DS pomalejší nelineární Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 26 / 37 Ceph 1-10 uzlů, 4GB image Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 27 / 37 Initial write, 1-10 procesů/uzel I I Jak se v tom vyznat? Ceph - konst., Gluster DR 1 pr. lineární, další log. Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 28 / 37 Rewrite, 1-10 procesů/uzel I Obdobný stav Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 29 / 37 Read, 1-10 procesů/uzel I 1 pr. DR 1-6 lineární, 7-10 klesá, Ceph pro 1 uzel taktéž Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 30 / 37 Re-read, 1-10 procesů/uzel Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 31 / 37 Random read, 1-10 proc./uzel I Ceph někde rychlejší než DS Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 32 / 37 Random write, 1-10 proc./uzel Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 33 / 37 Výsledky měření - závěr Ceph I Kam se poděla škálovatelnost? Konstantní? I Nejspíš silně omezena RBD vrstvou na uzlu Pravděpodobně CRUSH - větší infrastruktury Gluster ukázal že to jde I Nativní striping také hraje proti Gluster I Také omezen, ale snáší to lépe I Škáluje lineárně či logaritmicky I Ve stripingu propustnost klesá pro >=6 uzlů I Ale pozor na čtení pro >= 8 uzlů I Gluster padal ve stripingu pro 8 a 10 uzlů Doporučení pro cloud I Gluster v distribuovaném replikovaném módu * Výsledky pouze simulují běh v cloudu I I Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 34 / 37 Další aktivity I I Bakalářská práce, další výzkum Testování Xen vs. KVM I Srovnání z pohledu vhodnosti pro cloudové využití I Testování kompatibility Ceph a GlusterFS s virtualizační vrstvou (problém s GPFS) I Hrátky s parametry Cephu i Glusteru I Revalidace podivné škálovatelnosti Cephu Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 35 / 37 Konec – Díky za pozornost – Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 36 / 37 Literatura [1] Ceph offfical site – http://ceph.com [2] Gluster offical site – http://www.gluster.org [3] http://www.katescomment.com/iaas-paas-saas-definition [4] Cloud Storage for the Modern Data Center, Copyright 2011, Gluster, Inc. [5] http://www.inktank.com/partners/ceph-at-the-red-hat-summit/ [6] http://yourstory.com/2011/09/yourstory-exclusive-californiabased-indian-entrepreneurs-powering-petabytes-of-cloud-storagethe-gluster-story/ [7] GlusterFS Cloud Storage, John Mark Walker [8] Red Hat documentation – https://access.redhat.com/documentation Hubík, Tomek (MUNI+CESNET) Masarykova univerzita 7.10.2014 37 / 37
Podobné dokumenty
QEMU - Hippo
Na platformě PC QEMU simuluje tento hardware :
i440FX host PCI bridge and PIIX3 PCI to ISA bridge
➔ Cirrus CLGD 5446 PCI VGA card or dummy VGA card with
Bochs VESA extensions (hardware level, inclu...
Hmotnostní spektrometrie
• “nejtvrdší” ionizační technika - molekula získá velký přebytek vnitřní energie, který se
projeví fragmentací molekulárního iontu (někdy v takovém rozsahu, že molekulární ion
zcela chybí ve spektr...
Diplomová práce
- Linux vs. Windows - Total Cost
of Ownership - Comparison[30] jednoznačně mluvı́ pro řešenı́ postavená na základě linR
uxových OS. Oproti tomu porovnánı́ společnosti Microsoft
- Compare...
Cloud computing
Cloud poskytuje fyzický nebo virtuální stroj – blokové úložiště, firewall,
load balancery, disk image library, VLANs, …