Jedním z nejrychlejších a nejjednodušších způsobů, jak nastavit aplikaci s vysokou dostupností a zlepšit výkon, je implementace nástroje pro vyrovnávání zatížení (LB).
Na vysoké úrovni existují tři typy vyvažovačů zátěže.
- Na základě hardwaru
- Cloudové
- Softwarové
Hardwarový nástroj pro vyrovnávání zatížení je vyhrazené zařízení, které zajišťuje rozložení zatížení a jeho příslušné funkce. Někteří z populárních prodejců hardwaru LB jsou:
Jsou drahé, ale poskytují vám plnou kontrolu.
Cloud load balancer je trendem více než kdy jindy.
Používání cloud LB je jedním z dostupných způsobů, jak si užít plné funkce bez investic do hardwarového zařízení. Platíte za to, co používáte. Následují některé známé cloudové LB.
Můžete to začít již od 20 $ měsíčně.
A poslední je softwarová, kde si instalujete, spravujete a konfigurujete software LB sami. To může být buď komerční, nebo open-source/zdarma.
Pokud nemáte rozpočet nebo byste chtěli prozkoumat bezplatný nástroj pro vyrovnávání zatížení, níže vám pomůže.
Table of Contents
Houpačka
Použito uživatelem Googlespolehlivý server pro vyrovnávání zátěže založený na Linuxu, který poskytuje potřebné rozložení zátěže ve stejné síti.
Houpačka je vyvinut v jazyce Go a funguje dobře na distribuci Ubuntu/Debian. Podporuje anycast a DSR (přímý návrat serveru) a vyžaduje dva uzly Seesaw. Mohou být fyzické nebo virtuální.
Za zmínku stojí, že Seesaw pracuje se sítěmi čtvrté vrstvy, takže pokud hledáte vyrovnávání zátěže sedmé vrstvy, možná budete chtít prozkoumat další možnosti.
KEMP
ZDARMA pokročilý řadič doručování aplikací od KEMP je podporován na všech hlavních hypervizorech. Můžete si jej stáhnout a používat ve svém datovém centru nebo jej nasadit v cloudovém DC, jako je AWS nebo Azure.
Je zdarma, ale nabízí komerční úroveň funkcí včetně těch níže.
- Vyrovnávání zátěže vrstvy 4 pro TCP/UDP pomocí algoritmů round-robin nebo nejmenších připojení
- Vyrovnávání vrstvy 7
- Integrace webového aplikačního firewallu (WAF)
- Vestavěný modul prevence narušení (IPS)
- Skutečné globální vyrovnávání zátěže serveru, podporuje multi-site
- Ukládání do mezipaměti, komprese obsahu, přepínání obsahu
- Perzistence webových souborů cookie
- IPSec tunelování
- Předběžná autentizace
- Pojďme šifrovat
- Kubernetes
KEMP LB používají některé z velkých značek jako Apple, Sony, JP Morgan, Audi, Hyundai atd. Bezplatná edice poskytuje dostatečné funkce; pokud však potřebujete více, můžete se podívat na jejich komerční licenci.
Pokud se vy nebo vaše organizace rozhodnete prozkoumat KEMP LB a potřebujete nějaké online školení, můžete se obrátit na toto online kurz Mike Walton.
HAProxy
Jedním z populárních na trhu je poskytovat vysokou dostupnost, proxy, vyvažování zátěže TCP/HTTP. HAProxy používá některé z renomovaných značek na světě, jako je uvedeno níže.
Některé z funkcí stojí za zmínku.
- Podpora IPv6 a UNIX socket
- Deflate & Gzip komprese
- Zdravotní prohlídka
- Přilnavost relace na základě zdroje
- Vestavěné hlášení statistik (pokladna demo)
Jak můžete očekávat, HAProxy má podnikovou edici, hardware a virtuální zařízení.
Nejlepší způsob, jak se o HAProxy dozvědět, je vyzkoušet je. Community Edition přichází se spoustou funkcí a ty jsou každopádně ZDARMA.
ZEVENET
Zevenet podpora L3, L4 a L7. Je k dispozici jako zdrojový kód, obraz IOS a v úložišti dockeru.
Podporuje pokročilé monitorování zdravotního stavu, takže vadné servery/služby jsou rychle mimo provoz, aby byla zajištěna bezproblémová uživatelská zkušenost. Zevenet dříve známý jako Zen dobře funguje s protokolem založeným na TCP, jako je FTP, SIP, SSL, HTTP atd.
Pokud hledáte hosting Zevenet, můžete to zkusit Kamatera.
Neutrino
Neutrino používá eBay a je vytvořen pomocí Scala & Netty. Podporuje algoritmy nejmenšího připojení a kruhové obměny s následujícími funkcemi přepínání.
- Používání kanonických jmen
- Kontextově založené
- L4 pomocí čísel portů TCP
Neutrino je testováno na zpracování 300+ požadavků za sekundu na 2jádrovém virtuálním počítači. Pokud srovnáváte s HAProxy, pak jednou z hlavních výhod použití Neutrina je přepínání L7.
Ale jako vždy vyzkoušejte obojí a uvidíte, co nejlépe vyhovuje vašemu prostředí.
Zůstatek
Zůstatek by In lab networks je TCP proxy round-robin LB, který podporuje IPv6 na straně naslouchání. To znamená, že můžete mít IPv4 na přední straně a IPv6 na zadní straně.
Má všechny základní funkce LB.
Pero
Pero je testován na Linuxu, FreeBSD, HP-UX, Solaris a Windows, ale není důvod, proč by neměl fungovat na jiném unixovém distru. Podporuje protokoly založené na UDP a TCP, jako je HTTP, SNMP, DNS atd.
Některé z funkcí zahrnují následující spolu se základními.
- GeoIP filtr
- Ukončení SSL
- Kompatibilita IPv4 a IPv6
Nginx
Vím, co si možná myslíš. Nginx je webový server, proxy server atd. Ale open-source Nginx podporuje základní úroveň přepínání obsahu a distribuce směrování požadavků na více serverů.
Edice Nginx Plus je však mnohem víc než to.
Nginx Plus je komplexní řešení pro poskytování webových aplikací včetně vyrovnávání zátěže, ukládání obsahu do mezipaměti, webový server, WAF, monitorování atd. Poskytuje vysoce výkonné řešení pro vyrovnávání zatížení pro škálování aplikací tak, aby obsluhovaly miliony požadavků za sekundu.
Traefik
Moderní a rychlý HTTP rezervní proxy a LB vytvořené s GO. Traefik podpora více back-endových služeb Amazon ECS, Docker, Kubernetes, Rancher atd.
Podporuje WebSockets, HTTP/2, automatickou obnovu SSL certifikátu s Let’s encrypt, čisté rozhraní pro správu a monitorování zdrojů.
Gobetween
Gobetween je minimalistický, ale výkonný vysoce výkonný L4 TCP, TLS a UDP založený na vyrovnávání zátěže.
Funguje na více platformách jako Windows, Linux, Docker, Darwin a v případě zájmu můžete stavět ze zdrojového kódu. Vyvažování se provádí na základě následujících algoritmů, které zvolíte v konfiguraci.
- IP hash
- Světově proslulý – kruhorožec
- Nejmenší šířka pásma
- Nejmenší spojení
- Hmotnost
Na základě toho benchmarkGo-between je rychlejší než HAProxy, ale ne od Nginx.
Pokud hledáte moderní řešení vyvažování L4 s automatickým zjišťováním pro dynamické prostředí, pak se Go-between zdá slibný. Zkuste to a uvidíte, jak to půjde.
Závěr
Doufám, že výše uvedený open-source software pro vyrovnávání zatížení vám pomůže vybrat jeden pro vaši aplikaci. Všechny jsou ZDARMA, takže nejlepší způsob, jak zjistit, co funguje, je vyzkoušet je.
Pokud se chcete naučit nové dovednosti, zkuste Udemy, kde jsou k dispozici tisíce videokurzů.