Kedykoľvek váš systém rastie, návštevnosť sa zvyšuje, stále viac používateľov používa vaše produkty, servery začínajú reagovať pomalšie, výpadky nútia váš podnik trpieť a potom začnete premýšľať o škálovaní.
Existujú dve primárne stratégie škálovania – vertikálna a horizontálna.
Vertikálne škálovanie má za cieľ zvýšiť výkon systému pridaním väčšieho množstva CPU a RAM do vašich serverov.
Na rozdiel od toho sa horizontálne škálovanie zameriava na duplikovanie (alebo klonovanie) vašich serverov v skupine zdrojov.
Viac o týchto:
Vertikálne škálovanie
Vertikálne škálovanie je najlepšou voľbou pre systém s nízkou prevádzkou, pretože je to najdostupnejší prístup na zvládnutie rastu bez zavádzania ďalšej zložitosti. Nemusíte sa starať o nasadzovanie stratégií pre skupinu zdrojov, elasticitu fondu zdrojov, bezstavový stav vášho servera, distribuovanú vyrovnávaciu pamäť atď.
Vertikálne škálovanie má však vážne nevýhody
- Hardvérový limit, pretože nie je možné donekonečna pridávať zdroje
- Nedostatok núdzového prepnutia a redundancie zvyšuje riziko predĺženia prestojov a straty údajov
Horizontálne škálovanie
Horizontálne škálovanie eliminuje tieto problémy klonovaním vašich aplikačných serverov a vložením komponentu, ako je Load balancer .
Nástroj na vyrovnávanie záťaže distribuuje prevádzku na vašich serveroch pomocou špecifických algoritmov , ako napríklad:
Round-robin Vážená okrúhlica - Prístupy založené na IP hash
- Najmenší spôsob pripojenia
- Spôsob váženého najmenšieho pripojenia
- Metóda najmenšej odozvy a mnoho ďalších.
Napriek tomu má niekoľko nevýhod:
- Servery musia byť bez štátnej príslušnosti
- Relácie sa musia uchovávať v centralizovanom úložisku údajov
- Zložitejšie
nasadzovanie stratégií môže byť požadované - Nástroj na vyvažovanie zaťaženia sa môže stať prekážkou výkonu, ak je nesprávne nakonfigurovaný a zdroje nestačia
- Zavádza do systému dodatočnú zložitosť a predstavuje potenciálny jediný bod zlyhania, ktorý si vyžaduje použitie stratégií prepnutia
L4 / L7 Vyvažovače zaťaženia
Aby mohli dve zariadenia na internete navzájom komunikovať, základné systémy musia dodržiavať špecifické protokoly. Každý počul o modeli OSI, ktorý popisuje sedem vrstiev, ktoré počítačové systémy používajú na komunikáciu cez sieť. Aj keď je moderný internet založený na jednoduchšom modeli zásobníka protokolov TCP/IP, model OSI je široko používaný, pretože pomáha vizualizovať a komunikovať, ako siete fungujú, a pomáha izolovať a riešiť problémy so sieťou.
Väčšina priemyselných riešení na vyrovnávanie záťaže používa termíny L4 a L7, kde L4 označuje transportnú vrstvu v modeli OSI a L7 označuje aplikačnú vrstvu.
L4 load balancer je stále L2/L3, pretože používa dáta zo spodných vrstiev, ako je IP adresa a číslo portu.
Hlavné výhody L4 load balanceru
Je bezpečnejší a výkonnejší, pretože pri rozhodovaní o smerovaní sa nezohľadňuje obsah údajov
Medzi klientom a serverom existuje rovnaké pripojenie TCP, čo pomáha zabrániť prekročeniu limitu dostupných pripojení TCP na vyrovnávacom zaťažení
Hlavné nevýhody vyrovnávača zaťaženia L4
- Inteligentné smerovanie nie je možné, pretože obsah nie je dešifrovaný
- Stavový protokol prináša ďalšiu zložitosť
- Mapovanie medzi verejnými a súkromnými adresami
- Žiadne ukladanie do vyrovnávacej pamäte, pretože obsah je na tejto úrovni nedostupný
- Nie je možné použiť pre architektúru mikroslužieb, pretože presmerovanie prevádzky nie je dostupné na základe cesty URL
Na druhej strane L7 load balancer funguje na aplikačnej úrovni v modeli OSI
Hlavné výhody vyrovnávača zaťaženia L7
Inteligentné rozhodnutia možno robiť na základe cesty URL, hlavičiek, obsahu
Ukladanie do vyrovnávacej pamäte
Hlavné nevýhody vyrovnávača zaťaženia L7
- Dodatočná réžia v dôsledku udržiavania dvoch TCP spojení, jedno medzi klientom a vyrovnávačom zaťaženia, druhé medzi vyrovnávačom zaťaženia a serverom. Tiež je potrebné zvážiť limit TCP pripojenia vyrovnávača zaťaženia
- Menej bezpečné, pretože nástroj na vyrovnávanie zaťaženia musí poznať certifikáty, aby mohol dešifrovať údaje a robiť rozhodnutia o smerovaní
Záver
Vyrovnávač zaťaženia je životne dôležitým komponentom, keď sa horizontálne škálovanie používa na zvládnutie systémov s vysokou premávkou. Existujú dva hlavné typy vyrovnávačov záťaže L4 a L7.
L4 load balancer je oveľa bezpečnejší a výkonnejší kvôli obmedzeniam pri inteligentných rozhodnutiach
L7 load balancer funguje tak, že poskytuje inteligentné rozhodnutia o smerovaní kvôli nákladom na efektivitu a bezpečnosť
Výber vhodného typu závisí od systémových požiadaviek a mal by sa starostlivo zvážiť s primeranou rovnováhou uplatňovania bezpečnostných princípov a odstraňovania úzkych miest výkonu.
Tiež uverejnené tu.