Zevenet Load Balancer Enterprise Editioni arhitektuuri siseosad kasutaja- ja kerneli ruumis

POSTITATUD 2. jaanuaril 2020

Ülevaade

Järgmise artikli eesmärk on anda arhitektuuriline ülevaade Zeveneti tarkvara sisemistest osadest, mis on suunatud süsteemi administraatoritele ja tarkvaraarendajatele, kellel on huvi teada saada rohkem, kuidas tarkvara Zevenet ADC töötab. Kogu seda teavet saab kasutada ka tootmissüsteemide konfigureerimise või tõrkeotsingu abistamiseks.

Zevenet arhitektuur

Zevenet haldab protsesse nii kasutaja kui ka kerneli ruumist, võimaldades koguda kõige rohkem jõudlust, kuid samas ka kõige paindlikumalt, et täita ka kõiki rakenduse kohaletoimetamise kontrollerile delegeeritud ülesandeid, nagu koormuse tasakaalustamine, turvalisus ja kõrge saadavus.

Allolev diagramm annab ülevaatliku ülevaate erinevatest komponentidest, mis Zeveneti süsteemi sisemiselt moodustavad. Lihtsama ja selge ülevaate saamiseks on kahe silma vahele jäänud vähem olulisi osi.

Järgmistes osades kirjeldatakse erinevaid tükke ja nende omavahelist ühendamist.

Zeveneti koormuse tasakaalustaja kasutajaruumis

Kasutajaruumis kasutatavad alamsüsteemid on:

Veebi GUI: Veebigraafiline kasutajaliides, mida kasutajad kasutavad kogu süsteemi konfiguratsiooni ja administreerimise haldamiseks, haldab seda HTTPS-i veebiserver, mis kasutab Zevenet API-d kõigi koormuse tasakaalustajaga seotud toimingute jaoks.

Zeveneti API: või Zeveneti rakendusprogrammi liides, mis on loodud järgides: REST ja JSON liideste kaudu, mida tarbitakse HTTPS-i kaudu, kasutavad seda ka muud erinevad kasutajaliidesed kasutaja seisukohast, näiteks veebi GUI liides või ZCLI (Zevenet käsurida liides). See tööriist kontrollib kõiki RBAC-alamsüsteemi vastaseid toiminguid ja kui see on lubatud, võetakse need Zeveneti aparaadis. API on võimeline ühendama ja haldama mis tahes muud diagrammis kirjeldatud kasutajaruumi alamsüsteemi.

RBAC: Rollipõhine juurdepääsu juhtimine on juurdepääsu, juhtimise mehhanism, mis on määratletud kasutajate, rühmade ja rollide ümber. See moodul määratleb, milliseid toiminguid saab kasutaja teha kõrge konfigureerimisega rühmade, kasutajate ja rollide vahel. See on täielikult integreeritud veebi GUI-liidesesse, mis võimaldab veebivaateid laadida vastavalt kasutaja rollile. Lisaks tarbitakse seda alamsüsteemi API või mõnda muud tööriista, mis kasutab API.

LSLB - HTTP (S): HTTP (S) -profiilist koosnev LSLB-moodul (Local Service Load Balancer) täidetakse kasutajaruumis pöördproksi nimega Zproxy, mis suudab suure jõudlusega rakendusi väga tõhusalt hallata. Selle alamsüsteemi konfigureerib API ja seda saab kaitsta IPDS-alamsüsteemi abil (kasutades BlackLists, DoS reegleid, RBL ja WAF reeglistikke).

GSLB: GSLB profiiliga eksemplariga realiseeritud GSLB moodul (Global Service Load Balancer) täidetakse kasutajaruumis Gdnsd-nimelise DNS-serveri protsessi abil, mis suudab töötada täiustatud DNS-nimelise serverina koos koormuse tasakaalustamise funktsioonidega. Selle alamsüsteemi konfigureerib API ja seda saab kaitsta IPDS-alamsüsteemiga (kasutades BlackLists, DoS ja RBL).

Tervisekontroll: Selle alamsüsteemi konfigureerib API ja seda kasutavad kõik koormuse tasakaalustamismoodulid (LSLB, GSLB ja DSLB) taustaprogrammide tervise kontrollimiseks. Lihtsad ja täpsemad kontrollid teostatakse taustprogrammi vastu ja kui kontroll ei õnnestu, märgitakse antud farmi taustprogramm allapoole ja liiklust enam ei edastata, kuni kontroll töötab uuesti taustal. Nende kontrollide eest vastutab farmi hooldaja ning see on kavandatud suure paindlikkuse ja konfigureeritavuse tasemel.

Konfiguratsiooni failisüsteem: Seda kataloogi kasutatakse konfiguratsiooni salvestamiseks. Kui see teenus on lubatud, korratakse selle kataloogi muudatusi klastris.

Nftlb: Seda kasutajaruumi protsessi haldab API alamsüsteem ja seda kasutatakse kahel peamisel eesmärgil: LSLB - L4XNAT programmi haldamine ja konfigureerimine IPDS alamsüsteemi moodul.

Kernaruumi Zeveneti koormuse tasakaalustaja

Kernel Space'is kasutatavad alamsüsteemid on:

Netfiltri süsteem LSLB L4xNAT: Nftlb kasutab Netfilteri alamsüsteemi koormuse tasakaalustamiseks. Selle Nftlb protsessiga laaditakse kernelisse Netfilteri reeglid ehitada suure jõudlusega L4 koormuse tasakaalustaja. Nftlb laadib kerneli koormuse tasakaalustaja reeglid tõhusal viisil, et liikluspakette võimalikult optimaalselt hallata. Lisaks laadib Nftlb Netfilteri reeglid sissetungimise ennetamiseks ja kaitseks (BlackLists, RBL ja DoS).

IPDS-i mustad loendid: See alamsüsteem on integreeritud Netfiltersüsteemi ja haldab Nftlb. See koosneb reeglite grupist, mis on konfigureeritud enne koormuse tasakaalustaja reegleid loobuge ühendused antud päritolu IP-de jaoks. Sisemiselt loob see reeglite komplekti, mis on järjestatud kategooria, riigi, ründaja tüübi jne järgi ja mida uuendatakse iga päev.

IPDS RBL: Analoogselt eelmisega on see alamsüsteem integreeritud ka Netfilteri ja haldab Nftlb. Päritolu IP hõivatakse enne ühenduse loomist ja kliendi IP valideeritakse väline DNS-teenus. Kui IP on lahendatud, märgitakse IP pahatahtlikuks ja ühendus katkestatakse.

IPDS-i toimingud: Sama konfiguratsioonisüsteem kui kahel varasemal moodulil, integreeritud Netfilterisse ja hallatav Nftlbi poolt. See on reeglid, mis on konfigureeritud enne koormusbilansi reegleid ja kontrollivad, kas paketid on osa a-st Teenuse keelamise rünnak. Enne rünnaku peatamist tuleb pakettvoogude suhtes kohaldada mõnda reeglit.

Ühenduse jälgimissüsteem: Netfilteri alamsüsteem kasutab seda süsteemi ühenduse haldamise, võrgutõlke ja võrgu jaoks statistika moodul, Samuti tervisekontroll alamsüsteemi, et sundida ühenduse toiminguid probleemi tekkimise hetkel tuvastama taustaprogrammis. Ühenduse jälgimissüsteemi kasutab ka Klastriteenus ühenduse oleku klastri teise sõlme edastamiseks juhul, kui klastri peasõlm ebaõnnestub, on teine ​​sõlm võimeline liiklust haldama sama ühenduse olekuga kui eelmine ülem.

Marsruutimissüsteem ja DSLB: Neid alamsüsteeme haldab API ja need on konfigureeritud kerneli ruumis. Marsruutimise alamsüsteem on üles ehitatud iproute2 mis võimaldab meil järjekorras hallata mitut marsruutimistabelit staatilise marsruudi keeruka reeglistiku säilitamise vältimisekslisaks on tänu iproute2-le loodud DSLB (Datalink Service Load Balancer) moodul, mis pakub mitme lüüsiga linkide koormuse tasakaalustamine.

Selle artikli kirjutamise hetkel on Zevenet 6 tootmises, nii et need alamsüsteemid võiksid tulevastes versioonides areneda, et pakkuda paremat jõudlust või rohkem funktsioone.

Lisadokumentatsioon

Zevenet zproxy etalonid, LSLB -HTTP (S) profiil
Zevenet nftlb võrdlusuuringud, LSLB - L4xNAT profiil

Jaga:

Dokumentatsioon GNU Vaba Dokumentatsiooni Litsentsi tingimustel.

Kas see artikkel oli kasulik?

seotud artiklid