Zvyšování výkonu serverových farem - Server Load Balancing (2)

Petr Odvárka Tutoriály 8. října 2008

Ve druhé části článku o vyšování výkonu serverových farem se podíváme na Global Server Load Balancing (GLSB), což je rozšíření funkce na rozkládání zátěže mezi serverové farmy. Důvodem je zavedení geografická distribuce serverových farem v planetárním měřítku a zálohování serverových farem.

Global Server Load Balancing (GLSB)

Global Server Load Balancing je rozšíření funkce rozkládání zátěže mezi servery na rozkládání zátěže mezi serverové farmy. K zavedení této technologie vedly dva požadavky:

  • geografická distribuce serverových farem v planetárním měřítku;
  • zálohování serverových farem.

Global Server Load Balancing

Global Server Load Balancing

Geografická distribuce

V planetárním měřítku nemá valný význam, aby uživatelé z Austrálie, Evropy či Japonska, nakupující přes portál eBay komunikovali se serverovou farmou v USA a zatěžovali tak páteřní linky Internetu. Namísto toho jsou jejich požadavky přesměrovány k nejbližší serverové farmě portálu a zátěž tak probíhá pouze po nezbytně nutné trase.

Geografická distribuce je založena na alokaci IP adres IANA. Tato alokace bohužel není optimální. Proto mají SLB switche možnost vytvořit vlastní tabulku, pomocí níž provádějí optimalizaci.

Zálohování serverových farem

Může se stát, že některá serverová farma je z jakéhokoliv důvodu nedostupná (útok, odstávka z důvodu údržby...). V tomto případě provozovateli vznikají ztráty nerealizovanými obchody, ale v krajním případě i ztrátou důvěry zákazníků. Z tohoto důvodu je vhodné mít záložní serverovou farmu (farmy) na jiném místě.

Princip GSLB

GSLB je rozšířením funkčnosti SLB o několik funkcí:

  • kontrolu stavu ostatních farem;
  • zavedení authoritativního name serveru na SLB switchích;
  • přesměrování záznamu z DNS serverů domény na SLB switche.

Kontrola stavu ostatních farem

SLB switch v každé farmě provádí kontrolu dostupnosti a výkonnosti lokálních serverů a informuje pomocí speciálního protokolu ostatní SLB servery v GSLB skupině.

Každý SLB switch v GSLB skupině má stejnou informaci o výkonu a dostupnosti jednotlivých farem.

Na základě konfigurovatelných parametrů pak vrací informaci o konkrétním virtuálním serveru, s nímž by měl konkrétní klient komunikovat (více viz dále).

Vzájemná kontrola stavu serverových farem

Vzájemná kontrola stavu serverových farem

Autoritativní name server na SLB switchi

Pro pochopení funkce DNS je možné použít např. tento odkaz http://www2.rad.com/networks/2006/dns/main.htm, na němž je flashová presentace, popisující co vše se stane, když uživatel zadá do svého prohlížeče webovou adresu, na niž se chce podívat.

Při zavedení GSLB je potřeba:

  • na všech zúčastněných SLB switchích nastavit:
  • vazby na SLB switche v GSLB skupině;
  • záznam domény, jména a odpovídající IP adresy (lokální virtuální adresa);
  • na doménových serverech domény je potřeba nastavit informaci, že name serverem pro daná jména jsou SLB switche.

Záznam na DNS serveru pak vypadá např. takto:

Záznam na DNS serveru

california.gslb.foocorp.com a denver.gslb.foocorp.com jsou SLB switche v GSLB skupině.

Souhrn informace o funkčnosti GSLB

A teď si spojíme informace o stavu dostupnosti služeb v jednotlivých farmách a DNS záznamů.

 

Postup získání informace o dostupnosti služeb a DNS záznamů

Postup získání informace o dostupnosti služeb a DNS záznamů

  1. klient pošle DNS požadavek na www.foocorp.com;
  2. po sérii dotazů a přesměrovávání se požadavek dostane až na switch v konkrétní GSLB lokalitě;
  3. switch vyhodnotí zeměpisné hledisko včetně stavu serverových farem a odešle DNS odpověď; ta obsahuje seznam IP adres a hodnotu TTL;
  4. klient otevře TCP spojení na předanou IP adresu.

Doplnění informace GSLB

Technologii GSLB lze používat pro rozkládání zátěže mezi více serverových farem, ale při vhodném nastavení metrik i pro zajištění failover redundance, kdy za normálního stavu je v provozu pouze jedna farma a druhá je záložní, používaná pouze v případě nedostupnosti první farmy.

SLB s cookie pro https

V textu bylo uvedeno, že load balancing pomocí cookie je použitelný pouze pro http protokol. Použití SLB s cookie v případě protokolu https předpokládá, že https spojení není ukončeno na serveru, ale na tzv. SSL akcelerátoru.

SSL akcelerátor je hardwarové zařízení, které ukončuje SSL spojení (např. https) a prostřednictvím nezabezpečeného protokolu (v daném případě http) komunikuje se serverem. Z toho je patrné, že v tomto případě již lze s cookie pracovat.

Topologie zapojení a průběh spojení pak může vypadat např. podle obrázku:

Topologie zapojení a průběh spojení SSL akcelerátoru

Topologie zapojení a průběh spojení SSL akcelerátoru

Opět je uveden poměrně jednoduchý způsob zapojení, který může být redundantní.

Pro zvýšení výkonu a redundanci SSL akcelerace lze více jednotek zapojit do clusteru. V rámci clusteru se pak konfigurace provádí na jedné (master) jednotce. Na ni se např. instalují i certifikáty.

SSL akcelerátory lze provozovat i bez SLB switchů (přínosy pak jsou zejména ty, že pro skupinu serverů jsou certifikáty ukládány na jedno místo – na SSL akcelerátor).

Pro některé lokality bez požadavku na vysoké výkony nebo rozšiřování je použitelný SLB switch s integrovaným SSL akcelerátorem.


Vytisknout


    Komentáře k článku

    ...k článku nejsou žádné komentáře

Vložte Váš komentář k tomuto článku

Máte dotaz? Neváhejte nám napsat.

Pole označená hvězdičkou (*) jsou povinná


Reklama v příspěvcích není dovolena, dodržujte etiketu. Redakce Světa sítí si vyhrazuje právo smazat příspěvěk, který v diskuzi použije vulgární slova a společensky neúnosné výrazy. Délka příspěvku je limitována 1500 znaky.