Hlavní navigace

High Availability a Linux

Věroš Kaplan

Úvodní díl nového krátkého seriálu o tom, kterak rozchodit High Available cluster pod Linuxem. Dnes se dostalo pouze na motivaci, ale v příštích dílech si to vynahradíme.

Bylo, nebylo…

Bylo, nebylo, v jednom městě stál domeček a v tom domečku bydlel Honza. Pracoval jako dobře placený správce IT v prosperující firmě. Na nějakém starším serveru si nainstaloval Linux (tu nejlepší distribuci) a na něm mailový démon (taky ten nejlepší). Server krásně fungoval, zaměstnanci firmy i pan ředitel odesílali a přijímali maily a všichni byli spokojení. Když pan ředitel zjistil, kolik stojí jiné komerční mailové systémy a spočítal si, kolik Honza firmě ušetřil, dal mu za odměnu služební letadlo. Honza však nezpychl a v nevyužité pracovní době dál odpovídal na začátečnické dotazy z konference <linux@linux.cz>. Tak by to mohlo jít až dodnes, ale to by tahle pohádka byla moc krátká… (Nebrečte děti, Honzovi se nic nestane.)

Jednou Honza odpověděl na všechny začátečnické dotazy a najednou s údivem zjistil, že už deset minut žádný začátečnický dotaz nedorazil. Dokonce ani žádná flamewar! Nevěřil svým očím a šel zkontrolovat svůj server. A opravdu, zjistil, že se serverem se děje opravdu něco divného. Po několika minutách přišel na to, že disk v serveru se odebral do věčných lovišť (přece jenom byl už server starší, že). Honza zalezl do skladu, našel v tajných zásobách nový disk, obnovil obsah disku ze zálohy a za tři hodiny mohl znovu odpovídat na začátečnické dotazy…

Co to je za ptákovinu?

Dobře, tak trošku vážněji.

Pokud se zamyslíme nad tím, co se všechno stalo, narazíme na několik problémů.

  1. Honza obnovil data ze zálohy, tedy všechny změny od poslední zálohy se ztratily. Až si znovu stáhne maily, bude tam mít staré začátečnické dotazy, které už byly zodpovězeny. Pan ředitel, který je teď na dovolené, naopak přijde o maily, které došly mezi zálohou a havárií systému. Až to zjistí, pravděpodobně Honzovi odebere služební letadlo.
  2. V době, kdy nefungoval server, protože Honza hledal náhradní disk a obnovoval za zálohy, nemohla celá firma číst maily. Pokud se to donese panu řediteli, Honza přijde o letadlo.

Pomineme-li fakt, že Honza je pečlivý správce, protože pravidelně zálohuje (kolik ze správců zálohuje?), musíme si položit otázku: „Jak mohl Honza následkům havárie předejít?“

Tabulka č. 517
a) Použít nový server? – I nové železo občas může dělat problémy.
b) Použít RAID? – RAID je sice pěkná věc, ale chrání pouze proti havárii disku. Kdyby neshořel disk, ale řadič disků, je Honza tam, kde byl před chvilkou.
c) Postavit mail server jako High Available cluster? – Ano, c) je správně!

Cluster a HA

Existuje několik různých výkladů slova cluster. V angličtině to značí shluk, v počítačové terminologii se slovo cluster používá pro několik počítačů, které zajišťují jednu činnost. V následujícím textu budu (poněkud nepřesně, leč snad srozumitelně) používat termín cluster pro to, co se obvykle označuje jako HA Cluster.

Anglický termín High Availability (HA) se do češtiny překládá nejčastěji jako vysoká dostupnost''. Nevím, zdali existuje přesná definice, co si pod tím jeden může představit, neb každá firma o svých HA řešeních bude tvrdit něco jiného, nazývat a definovat je jinak. Pro intuitivní představu však můžeme říci, že HA řešení (= hardware + software + konfigurace) by mělo být odolné proti výpadkům – zejména proti nepředvídaným poruchám hardware.

Pěkným příkladem HA řešení je DNS – výpadek jednoho nameserveru by celosvětovou DNS vyřadit neměl.

Snažíme se tedy zajistit dostupnost služby i v případě poruch hardware. V Honzově případě je službou mail, ale může to být cokoliv jiného, co je poskytováno po síti klientům, například webové stránky, databáze (MySQL) či třeba slovník.

Protože potřebujeme zajistit dostupnost služby v případě výpadku hardware, musíme mít k dispozici alespoň dva počítače. Jeden z počítačů bude pracovat (nazývejme ho pracující) a druhý (dozorce) na něho bude dávat pozor. Když pracující přestane fungovat, dozorce to zjistí a začne dočasně pracovat místo něho. Když se pracující zotaví, dozorce může přestat pracovat a začne ho zase hlídat.

Kdyby Honza z úvodní pohádky použil HA řešení, při havárii jednoho počítače z clusteru by se nic vážného nestalo. Druhý počítač by převzal jeho úlohu, Honza by to zjistil a začal by problém řešit. Protože by pro ostatní zaměstnance firmy všechno fungovalo, nikdo by ho neotravoval s telefonáty typu „Tady Franta Běžný, nefunguje mi mail, můžete se na to přijít podívat?“ a mohl by v klidu porouchaný počítač opravit.

Že to zní to jako z pohádky? Ale kdepak, to už je realita…

Našli jste v článku chybu?