Zkušenosti z praxe

Ceph v clusteru Proxmox: vysoká dostupnost bez samostatného SAN

Ceph v clusteru Proxmox bez samostatného SAN: jak tři a čtyři hosty zvládnou výpadek, kolik kapacity zbývá na obnovu a co stojí čtvrtý host.

Logo DAXS a nápis Ceph nad třemi stylizovanými kopiemi dokumentu

Ceph v clusteru Proxmox může rozložit data VM na lokální SSD více hostů a nahradit samostatný SAN. Rozhoduje, co se stane s kopiemi po výpadku hostu: stačí quorum, volná kapacita a síť k včasné obnově požadované redundance? Následující výpočet odděluje dostupná data, automatické restarty VM a skutečnou dobu obnovy.

Článek se zaměřuje na mechaniku Ceph v provozu. Konkrétní kusovník HPE patří do samostatného návrhu hardwaru; volba mezi Ceph, replikací ZFS a externím úložištěm vyžaduje oddělené aplikační srovnání. Základem jsou lokální enterprise SSD jako jednotlivé OSD Ceph, replikovaný pool VM a host jako doména selhání. Zaváděcí média a externí záloha nejsou součástí poolu.

Jak lokální SSD zpřístupní data VM?

Ceph rozděluje datové objekty přes Placement Groups na OSD. Pravidlo CRUSH určuje hosty s kopiemi. Pro příklad výslovně nastavujeme size=3 a min_size=2: tři kopie včetně primární, I/O při nejméně dvou dostupných kopiích. Kopie na třech OSD stejného hostu by proti výpadku hostu neposkytly trojnásobnou ochranu. Quorum monitorů, stav OSD a dostupnost dat VM je třeba kontrolovat odděleně. Cluster Proxmox potřebuje pro spolehlivé HA quorum nejméně tři hlasy; přidává se quorum monitorů Ceph a pravidla HA virtuálních strojů.

Po výpadku jednoho z právě tří hostů při správném rozložení zůstanou dvě hostitelské kopie. Za uvedených podmínek může pool obsluhovat degradované I/O, ale třetí kopie na třetí doméně hostu vznikne až po návratu nebo náhradě hostu. U čtyř hostů ji Ceph může znovu vytvořit na čtvrtém, pokud má volné místo a výkon. To je praktický rozdíl mezi „data zůstávají dostupná“ a „redundance se obnoví během výpadku“. I s Ceph může VM vypadnout a teprve se znovu spustit na jiném hostu; nulové přerušení z toho neplyne.

Počítat kapacitu s rezervou na výpadek

Předpokládejme čtyři lokální datová SSD po 1,92 TB desetinných na host. Tři hosty dávají 23,04 TB hrubé kapacity, čtyři 30,72 TB. Při třech kopiích jde před metadaty, snapshoty a provozní rezervou teoreticky o 7,68 nebo 10,24 TB logických dat. Hypotetický plánovací limit 70 procent nejprve dává 5,38 nebo 7,17 TB. Není to standardní hodnota Ceph ani garantovaná využitelná kapacita.

Čtyři SSD po 1,92 TB na host, size=3, doména selhání host, hypotetický limit 70 procent
Kontrolovaná veličina 3 hosty 4 hosty
Hrubá / teoretická logická kapacita 23,04 / 7,68 TB 30,72 / 10,24 TB
70 % teoretické logické kapacity 5,38 TB 7,17 TB
Po výpadku jednoho hostu Dvě kopie na hostech; třetí až po náhradě Třetí kopie možná na třech zbývajících hostech
Limit 70 % po obnově na 3 hostech Bez třetího hostu nedosažitelné 23,04 ÷ 3 × 0,70 = 5,38 TB

Kdo chce udržet čtyřhostový cluster i po výpadku jednoho hostu po dokončení obnovy pod vlastním limitem 70 procent, plánuje tedy v příkladu nejvýše asi 5,38 TB logických dat, nikoli 7,17 TB. Rozhodují také nejplnější OSD a prahy Ceph pro nearfull, backfillfull a full. Jediný plný OSD může blokovat zápis či backfill, přestože celkový součet vypadá dobře. Desetinné TB nejsou binární TiB.

Jak dlouho obnova trvá?

Při modelových 5 TB logických dat a třech kopiích obsahuje čtyřhostový cluster 15 TB hrubých dat, ideálně rovnoměrně 3,75 TB na host. Po výpadku jednoho je pro třetí kopii nutno přenést přibližně 3,75 TB na zbývající tři hosty. Při naměřené efektivní rychlosti obnovy 250 MB/s je 3,75 TB ÷ 250 MB/s = asi 4 hodiny 10 minut aritmetická dolní mez; při 125 MB/s asi 8 hodin 20 minut. Peering, rozložení, souběžné I/O VM, limity obnovy a nové zápisy reálný čas prodlužují. Jmenovitá rychlost 25Gbit karty není takovým měřením.

DAXS by vyžadoval zkoušku výpadku při běžící aplikační zátěži: sledovat ceph health detail, ceph osd df a průběh Placement Groups, zaznamenat skutečné obnovované bajty a dobu a měřit latenci i dostupnost VM. V běžném provozu se PG mají vrátit do stavu active+clean . Test musí také ukázat, zda výpadek switche, linky či napájecí cesty současně nezasáhne quorum Corosync nebo provoz Ceph. Proxmox doporučuje nejméně 10 Gbit/s vyhrazených pro Ceph a s rychlými SSD více; konkrétní plán portů vychází z propustnosti OSD, cíle obnovy a fyzicky oddělených cest.

Co stojí další doména pro obnovu?

Pro rozpočet označme h nabídkovou cenu plně vybaveného hostu, n redundantní síť již dimenzovanou pro čtyři přípojky a b externí zálohovací server včetně médií. Na host hypoteticky připadá p eur ročně za servis, energii a housing. Jen pro tento model počítáme instalaci a převzetí 100 hodin × 90 € = 9 000 € a průběžný provoz 60 hodin × 90 € = 5 400 € ročně. Pro tři i čtyři hosty předpokládáme stejnou práci, kterou je nutno v nabídce znovu odhadnout. Oficiální ceníky Proxmox VE Standard a Proxmox Backup Server Standard uvádějí 550 € za osazený CPU socket a rok, respektive 2 240 € za zálohovací server a rok. Předpokládá se právě jeden osazený socket na host. Všechny částky jsou bez daně; nahradit skutečnými nabídkami a pracností.

Hypotetické celkové náklady bez DPH; h, n, b a p zůstávají nabídkové proměnné
Varianta 3 roky 5 let
3 hosty 3h + n + b + 36 870 + 9p € 3h + n + b + 55 450 + 15p €
4 hosty 4h + n + b + 38 520 + 12p € 4h + n + b + 58 200 + 20p €
Příplatek za 4. host h + 1 650 + 3p € h + 2 750 + 5p €

Vzorec ročně sčítá sockety Proxmox, PBS a 5 400 € provozu: u tří hostů 9 290 € plus 3p, u čtyř 9 840 € plus 4p. O 1 000 € vyšší cena jednoho hostu zvýší oba čtyřhostové horizonty o 4 000 €; o 1 000 € vyšší roční náklady na host přidají 12 000 nebo 20 000 €. Potřebuje-li čtyřhostová varianta jiné switche, přičte se rozdíl k n . Kopie Ceph stále nejsou záloha: samostatný systém, externí kopie a ověřená obnova patří do převzetí. Článek DAXS Proxmox Backup Server: ověření, uchovávání a obnova tuto kontrolu popisuje.

Rozhodnout lze až po změření latence, výpadku a obnovy a získání věrohodné nabídky hardwaru, sítě a provozu. DAXS může tento měřicí a přejímací protokol s firmou upřesnit přes Kontakt .

Zdroje: Proxmox VE Administration Guide: cluster a Ceph · Ceph: size a min_size · Ceph: zdravotní kontroly a zaplnění · Ceph: recovery a backfill · Proxmox VE: ceny · Proxmox Backup Server: ceny.