abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    dnes 00:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 9
    včera 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    včera 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    včera 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    4.6. 12:55 | Zajímavý software

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 11
    Rozcestník

    Použití NBD - Network Block Devices při virtualizaci

    19.1.2012 12:35 | Přečteno: 1551× | Za vším hledej Linux | Výběrový blog | poslední úprava: 19.1.2012 12:50

    Chcete-li používat bloková zařízení po síti, máte několik možností. Můžete použít buď NBD nebo iSCSI. O NBD se tady zatím nikdo moc nerozmazával a tak by se někomu mohlo subjektivně zdát, že je iSCSI lepší. Záleží však na úhlu pohledu a podmínkách použití. iSCSI má tu výhodu, že již existuje v jádře podpora i pro target (server), a vypublikované zařízení lze použít i pro MS Windows. Na druhou stranu, podle toho co jsem vyšťáral na netu by mělo mít NBD menší režii a snad i o chlup lepší výkon. Každopádně však NBD není mrkev.

    Více se o NBD rozmazávám v naší wiki. Nechci se opakovat, tudíž bych zde pouze upozornil na několik zajímavých vlastností, které má soubor utilit xNBD.

    Použití NBD zařízení u linuxového SW RAID zařízení

    Zkoušel jsem u QEMU různé způsoby zprostředkování blokových zařízení virtuálním strojům skrz síť (viz kupř. můj starší zápis na téma sheepdog ), a nakonec se ukázalo jako nejefektivnější použití NBD. Bohužel však mělo jednu vadu. Možná jde pouze o mou neznalost, ale když virtuálnímu stroji "upadlo" blokové zařízení, tak ho nebyl schopen připojit znovu. Domnívám se, že tohle by mohlo uspokojivě řešit právě iSCSI, jenže v době kdy jsem to zkoušel jsem neměl podporu pro iSCSI target v jádře zakompilovanou.

    Po konzultaci s Pavlem Píšou mě napadlo zkusit využít SW RAID, sestavený ze dvou NBD zařízení. V případě výpadku jednoho z nich se uvnitř virtuálu problém neprojeví a zařízení lze pak znovu do raidu přidat, aniž by bylo nutné virtuální stroj vypnout. Výsledek se choval uspokojivě. A tak, jelikož virtuály provozuji v clustrovém prostředí, jsem použil SW RAID6, sestavený ze čtyř NBD zařízení, přičemž páté funguje jako SPARE.

    Díky tomu mohu postupně aktualizovat všechny virtuální stroje v clusteru, aniž by bylo nezbytně nutné odstavit spuštěné virtuály.

    Pro lepší názornost přidávám i odkazy na dva schématické obrázky - jsou použité v neveřejné části naší wiki, tudíž byste se k nim zatím asi neproklikali. Na prvním schematu je normální stav a na druhém stav při výpadku dvou nodů. Pochopitelně, že když upadne nod na kterém virtuál zrovna běží, tak lehne. Nicméně lze obratem tentýž raid sestavit a stroj znovu spustit na přeživších nodech.

    Proč xNBD a ne NBD?

    Výše uvedené řešení funguje výborně, ale má přeci jenom jeden háček. Jak ošetřit situaci kdy NBD zařízení upadne? Raid totiž zjistí, že je ve stavu FAIL až ve chvíli, kdy se na ně pokusí něco zapsat. A v tomto okamžiku se velice hodí parametr --recovery-command, kterým disponuje xnbd-client. Ten totiž umožňuje v případě kdy upadne NBD server spustit skript, který provede příslušnou sanaci zařízení v raidu, a případně spustí akci, která zajistí jeho přidání v okamžiku, kdy je server znovu připojen.

    No jo, ale co si počít, když je NBD zařízení připojeno přes jiného klienta, který tuto volbu nemá, případně v situaci, kdy v době připojení zařízení nebylo ještě známo co se má v případě jeho odpojení řešit? I pro takový případ nabízí xNBD pomocnou ruku - jeho součástí totiž není jenom NBD server a klient, ale také další nástroje. Mezi jinými utilita xnbd-watchdog, která je-li spuštěna může udělat stejnou službu.

    xNBD server v režimu proxy

    xNBD server nabízí ještě jednu pěknou vlastnost. Lze jej pustit v režimu proxy, čehož lze využít k bezbolestnému přestěhování, či zkopírování virtuálních strojů za běhu i po relativně pomalé síti, aniž by to vyžadovalo delší odstávku virtuálního stroje.

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    19.1.2012 13:32 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Nápad hezkej, ale bohužel jen pro jednoho hostitele virtuálních strojů :(
    19.1.2012 13:44 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Proč myslíš? Těch hostitelů může být klidně i víc. Já tedy osobně používám tři.
    19.1.2012 13:47 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Pochopitelně je ale třeba mít vytvořen odpovídající počet nbd zařízení. Já jich mám momentálně nastaveno 32, obvykle jich je jen 16.
    19.1.2012 13:55 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Právě že díky použití NBD nejsem vázaný na jednoho hostitele, ale mohu virtuál spustit na libovolném nodu. Ovšem to je pochopitelně krajní případ. V reálu spouštím produkční stroje pouze na dvou nodech, protože ty virtuály využívají společnou datovou oblast sdílenou přes DRBD. Na tom třetím si můžu spouštět ty, které s tím sdíleným datovým prostorem nepracují. Zbývající dva nody jsou postarší IBM stroje. Bohužel upgrade paměti by se u nich nevyplatil a jejich řadič taky stojí víceméně za houby, protože neumí hotplug. Ovšem jako záložní stroje pro ty raidy jsou ideální.
    19.1.2012 19:18 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Myslel jsem to tak, že to jednotlivý zařízení (v tomhle případě RAID svazek) neni dostupný z více hostitelů naráz. Pokud to chápu správně, každej hostitel si obhospodařuje svůj vlastní RAID svazek. Nebo mi něco uniká?
    19.1.2012 19:19 D-Evil | skóre: 25 | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Oprava: více hostitelům naráz
    19.1.2012 20:04 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Jo takhle..

    No tak to by v podstatě šlo, akorát že v mém případě by to dávalo smysl pouze když bych chtěl ten virtuál kamsi kopírovat.

    Pokud bych chtěl ten virtuál spouštět ve více instancích, tak bych použil nad tím sestaveným md zařízením xNBD server v režimu cow-target, případně proxy - podle toho jestli bych změny chtěl udržovat nebo ne a do virtuálu bych ho připojil rovnou jako nbd zařízení, tak jak jsem to dělal předtím. Jelikož by datové přenosy běžely lokálně, tak by výpadek z důvodu přerušení síťového spojení nehrozil.
    19.1.2012 14:21 Ondrej Zajicek
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    A co AoE (ATA over Ethernet), mate s nim nekdo nejake zkusenosti? To je obcas vydavano za sane alternativu k iSCSI.
    19.1.2012 19:28 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Mám s ním zkušenosti - několik let bezproblémového provozu. Jen je třeba počítat s využitím pouze v interní bezpečné síti, protože se AoE nedá routovat (=> je vhodná i vyhrazená síť jen pro AoE, ale může sdílet i stávající infrastrukturu, akorát to není moc bezpečné). Chce to také síť s podporou jumbo paketů aby to bylo rozumě rychlé (při standardním mtu 1500 to dělalo jen něco kolem 10MiB/s). Na straně serveru jsem používal vblade, dá se bez problémů nacpat i do HA clusteru (heartbeat/pacemaker).
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    19.1.2012 20:07 kyytaM | skóre: 35 | blog: kyytaM | Bratislava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    fy Coraid sa myslim na AoE specializuje. Ale nemam s tym osobne skusenosti, ale niektori ludia si to pochvaluju. Problem je myslim aj s implementaciu v linuxe, kde je viac moznosti (jedna nejaka defaultna ktora byvala ukrutne pomala a potom nejaka ovela vykonejsia - musel by som zalovit niekde v Xen mailing listoch). Kazdopadne tam bolo viacero ludi spokojnych aj ked je tam problem s bezpecnostou dat pri stratach v sieti, na co ini upozornovali.
    19.1.2012 20:15 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Chce to také síť s podporou jumbo paketů aby to bylo rozumě rychlé (při standardním mtu 1500 to dělalo jen něco kolem 10MiB/s).
    Tak mi to při ukládání přes NBD na disk bez raid6 dělalo něco kolem 18MiB/s a teď to dělá zhruba 28MiB/s, alespoň podle toho co při kopírování hlásí mc. Při čtení je rychlejší to dělá 42MiB/s.
    19.1.2012 20:42 Zdeněk Burda | skóre: 61 | blog: Zdendův blog | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    S AoE jsem narážel na limit gigabitu a to jak při čtení tak i při zápisu, takže s výkonem AoE problémy nebyly :-)
    -- Nezdar není hanbou, hanbou je strach z pokusu.
    19.1.2012 21:48 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Hm. Skleróza je mocná čarodějka - rychlosti které jsem naměřil u nbd v single režimu jsou uvedeny v rámci odkazovaného blogpostu o sheepdogu.
    19.1.2012 23:57 kyytaM | skóre: 35 | blog: kyytaM | Bratislava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Neskusal niekto porovnat vblade a ggaoed? :)
    19.1.2012 21:15 loki
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Nebylo by prosim nejake srovnani rychlosti tohoto reseni a iSCSI? Toto je pro mne uplne nove a vypada to imho zajimave.
    19.1.2012 21:44 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Zatím nebylo. Protože ono to testování rychlostí je v takovém prostředí dost ošidné.

    Průměrné hodnoty které mi vykazuje mc jsem zmínil výše. Také doporučuji okouknout můj blogpost o sheepdogu,tehdy jsem rovněž dělal menší testíky.
    19.1.2012 21:55 loki
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Proctu a okouknu. Dekuji.
    20.1.2012 12:45 cita
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Jaky ma smysl resit RAID nekde jinde nez v SAN/NAS? nebrete to jako provokaci, zajima me proc resit sw raid na hypervizorech a ne o vrstvu niz/driv.
    frEon avatar 21.1.2012 14:35 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    taky bych daval raid uz na ulozisti uz jenom pro to, abych zapisovana data neposilal po siti 2x (raid 1)
    Talking about music is like dancing to architecture.
    22.1.2012 14:48 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Když ti odejde úložiště, nebo konektivita k úložišti, jsi v háji. Ten cluster sám je defakto úložiště poskládané z relativně levných komponent. Jeho výhoda je v tom, že jej lze jako celek průběžně a s minimálními náklady upgradovat.
    frEon avatar 26.1.2012 17:10 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    jo, takhle to ma vlastne smysl ;-)
    Talking about music is like dancing to architecture.
    24.1.2012 00:13 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Domnívám se, že tohle by mohlo uspokojivě řešit právě iSCSI, jenže v době kdy jsem to zkoušel jsem neměl podporu pro iSCSI target v jádře zakompilovanou.
    Jedné testovací instanci RHEVu jsem jednou omylem vypl tgtd. Prvním příznakem byly pauznuté VM, po pohledu na storage jsem si uvědomil, odkud vítr vane. Po znovunahození tgtd se všechno znovu rozjelo... Takže přesně toto iSCSI řeší.

    BTW když zmiňuju RHEV, blíží se vydání oVirtu 1.0.
    24.1.2012 00:57 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Takže přesně toto iSCSI řeší.
    No. Je otázkou, jestli to řeší iSCSI, nebo infrastruktura RHEVu.

    Je-li totiž virtuál zapauzován dříve, než jeho kernel zaregistruje chyby na blokovém zařízení, je to v pohodě - to jsem zkoušel.

    Jenže pokud zapauzován není, tak se objeví chyby při práci s blokovým zařízením a je konec. On sice dál jede, ale fakticky je kaput a žádný reconnect už nepomůže.

    Navíc já nepotřebuji aby se stroje zapauzovaly, ale aby jely při odstavení libovolného stroje a to mi právě zajišťuje ten raid.

    24.1.2012 01:14 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Původně jsem uvažoval, že by mi iSCSI mohlo ušetřit minimálně jednu operaci, jenže když se blokové zařízení jednou dostane do stavu failed, tak se stejně musí vyhodit z raidu a znovu přidat. Takže jsem se rozhodnul to nakonec pořešit agentem pro pacemaker. Ale zatím je to ve fázi: chystám se na to..
    24.1.2012 23:23 David Jaša | skóre: 44 | blog: Dejvův blog
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Teď jsem si znovu přečetl #20 a spíš mě napadá - proč nepoužívat už hotové clusterovací/distribuované úložiště?
    25.1.2012 01:12 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Použití NBD - Network Block Devices při virtualizaci
    Nedá mi to, a musím se otázat co si vlastně pod pojmem "hotové clusterovací/distribuované úložiště" představujete. A také by mě zajímalo, jakou máte představu o objemu našich finančních prostředků pro nákup hardware.

    Pokud jde o zvolené technologie, vždy je třeba kloubit více hledisek. I když se to možná tak nezdá, řešení které používám je jednoduché a spolehlivé - i když cesta k němu jednoduchá nebyla. Ojetý hardware z druhé ruky sebou vždy nese pravděpodobnost záludné chyby, která se těžko hledá a hledat chybu tam kde problematice nerozumím je tak snadné.

    Náš cluster vznikl evolucí. Nejdřív byl jeden virtualizační stroj, pak druhý jako záložní a třetí se koupil protože vybyly nějaké prachy. Kromě toho, že se v jeho prostředí virtualizuje několik linuxových strojů, které poskytují nejrůznější služby, tak ho využívám zároveň i jako kompilační farmu pro kernel - přeci jenom je rozdíl mezi 5 minutami v clusteru a hodinou na notebooku.

    Ale ať jen tak neplácám, tak popíšu jeden z virtuálů. Stroj support má systémový disk složený z toho nbd raidu. Patří k těm větším - jako jediný virtuál na něm má i databáze. Jiné stroje, jako např. aa4cc používají externí databázový stroj. Virtualizace jede přes KVM a QEMU. Kromě lokálně uložených starších webů u kterých už k žádnému nárůstu dat nedojde, publikuje na web osobní adresáře z novellu, jako jsou např. roboti. Všechny adresáře, které průběžně bobtnají jsou ve skutečnosti součástí jednoho, do virtuálu namountovaného přes p9, adresáře ze sdíleného úložiště. Celý tento stroj podle potřeby mění hostitele, aniž by bylo nutno cokoliv kopírovat.

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.