Dynamický clustering pošty

S tím, jak se e-mail stává hlavním médiem pro firemní komunikaci, musejí systémy navíc poskytovat dostupnost blíž...


S tím, jak se e-mail stává hlavním médiem pro firemní komunikaci, musejí
systémy navíc poskytovat dostupnost blížící se pěti devítkám, tj. 99,999 %.
Vybudování clusteru mailových serverů je však záležitostí o něco
komplikovanější, než je tomu např. u clusterů webových serverů. Míra
modifikace dat je zde mnohem vyšší, jejich zpracování je komplikovanější a
musí být podporováno více přístupových metod, jako např. POP3 (Post Office
Protocol), IMAP 4 (Internet Message Access Protocol) či WebMail.
Statický cluster
Dřívější generace mailserverů (používaná v raných 90. letech) umožňovala
škálovatelnost prostřednictvím rozdělení uživatelských účtů každý server v
clusteru obsahoval část účtů vytvořených na jeho lokálních discích. Adresářový
server obsahoval informaci o umístění každého účtu a pomocí mailového
multiplexeru, mail routeru nebo front-endového serveru byly požadavky
uživatelů směrovány ke správnému serveru. Ačkoliv tento typ systému nabízí
možnost efektivní škálovatelnosti (je limitován pouze výkonem a stabilitou
adresářového serveru), neřeší problém dostupnosti. Selhání kteréhokoliv ze
serverů v clusteru způsobí nepřístupnost všech účtů, které jsou na něm
umístěny. Takový typ clusteru je označován jako statický.
Systémy vyvinuté před 5-6 lety se vysokou dostupnost pokoušely řešit použitím
sdíleného souborového systému s několika paralelně běžícími mail servery.
Taková konfigurace umožňovala přístup ke všem účtům i při poruše některého ze
serverů, problém však spočíval v synchronizaci dat. Tradiční metoda
synchronizace byla založena na zamykání souborového systému, které nejenže
čtyř či pětinásobně zpomalovalo operace se soubory, ale navíc bylo značně
nespolehlivé, jestliže bylo používáno se sdílenými souborovými systémy.
Dynamický cluster
Moderní systémy jsou založeny na synchronizaci na úrovni účtů implementované v
řídicí jednotce clusteru, který pro komunikaci mezi servery využívá
speciálního protokolu. Tak má být zajištěno, že kterýkoliv účet je v dané
chvíli přímo používán pouze jedním uzlem clusteru.
Jestliže uzel A otevře účet X a uzel B se pokusí tentýž účet otevřít rovněž,
řídicí server zašle uzlu B instrukce, aby se připojil k serveru A a použil jej
jako zprostředkovatele (proxy) pro přístup k datům na tomto účtu.
Synchronizace mezi uzly clusteru je implementována za použití rychlejších
technik multithreadingu namísto uzamykání souborového systému. Na rozdíl od
nespolehlivého zamykání souborů nezanechává zamykání na úrovni účtu žádné
záznamy v souborovém systému, v případě poruchy některého serveru tedy není
nutné provádět vyčištění. Tento typ clusteru bývá označován jako dynamický.
Uvedený způsob umožňuje předejít potížím při selhání kteréhokoliv uzlu a
zajistí přístup ke všem účtům, dokud bude alespoň jeden ze serverů v provozu.
Jestliže dojde k poruše řídicího serveru, jeho roli převezme některý z
ostatních. Takový dynamický cluster splňuje (nebo i převyšuje) požadavky na
99,999% dostupnost, avšak stále umožňuje v podstatě lineární škálovatelnost,
protože režie synchronizace je minimální a zahrnuje pouze jednu rychlou
transakci během otevírání účtu. Škálovatelnost je tak limitována jenom
rychlostí sdíleného souborového systému a dynamický cluster může obsahovat
rychlé high-endové file servery nebo clusterové souborové systémy.
Vzhledem k vysoké míře integrace mohou dynamické clustery poskytovat
single-server-image, který zjednoduší správu až na úroveň správy jediného
serveru.
Pro instalace více než 5 milionů účtů typu ISP je možné využít tzv.
supercluster. Nejedná se o nic jiného, než o statický cluster několika
dynamických clusterů, který poskytuje virtuálně neomezenou škálovatelnost
statických clusterů a vysokou dostupnost dynamických clusterů.
1 1852 / wep









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.