Csak az állapotellenőrzésen átmenő szerverek kerülnek a rotációba. Így a szerver nem lesz kiválasztva használatra, ha nem megy át az állapotellenőrzésen, így minimálisra csökken az állásidő esélye. Ebben a bejegyzésben mélyebbre fogunk ásni annak megértésében, hogyan működnek a HAProxy állapotellenőrzései, és mi szükséges a hatékony állapotfelmérés végrehajtásához. Kezdjük!
Mik azok az egészségügyi ellenőrzések a HAProxyban
A HAProxy konfigurálásakor az egyik feladat annak meghatározása, hogy milyen háttérkiszolgálókat használjon az alkalmazáshoz. Így a forgalmat a szerverek között osztják szét, hogy elkerüljék a szerver túlterhelését. Az állapotellenőrzések azonban segítenek megbizonyosodni arról, hogy a kiszolgáló csak akkor van kiválasztva a forgalom kezelésére, ha az rendben van.
Az állapotellenőrzés minden kiszolgálón megtörténik, és csak azok, amelyek megfelelnek, hozzáadódnak a rotációhoz a terheléselosztáshoz. Az állapotellenőrzések végrehajtása kérések (például TCP vagy HTTP) elküldésével történik a háttérkiszolgáló egy előre meghatározott végpontjára. A háttérkiszolgáló által visszaküldött állapottal kapcsolatos eredmények határozzák meg annak állapotát. Például a szerver állapota UP vagy DOWN mutathat, vagy egy rendben lévő 200-as állapotot küldhet, amely megerősíti, hogy a szerver egészséges.
Az állapotellenőrzések konfigurálásakor győződjön meg arról, hogy van egy előre meghatározott végpontja az állapotellenőrzésekhez. Különféle lehetőségek állnak rendelkezésre a végpont beállításához. Például visszaküldhet állapotkódot vagy üzenetet a szerver állapotától függően. Az összes állapotellenőrzés a HAProxy konfigurációs fájljának háttérszakaszában van meghatározva. Nyissa meg a konfigurációs fájlt, és hozza létre a frontend szakaszt.
$ sudo nano /etc/haproxy/haproxy.cfg
Íme egy alapvető példa egy frontend szakaszra, amely összeköti a 80-as portot, beállít egy statisztikai oldalt, és meghatározza az alapértelmezett háttérprogramot.
A következő lépés a háttérszakasz létrehozása. Az alábbiakban különböző példák mutatják be a hatékony állapotellenőrzés végrehajtását a HAProxyban.
1. példa: Hatékony aktív állapotfelmérés végrehajtása
Az állapotellenőrzések HAProxyban való végrehajtásának egyszerű módja az aktív állapotellenőrzések beállítása. Ezzel az opcióval a HAProxy megpróbál csatlakozni a szerverhez. Ha nem érkezik válasz, akkor a szervert egészségtelennek ítéli, és eltávolítja a rotációból. Az aktív állapotellenőrzések végrehajtásának alapértelmezett módja a „check” kulcsszó hozzáadása minden szerversorhoz, hogy a HAProxy ellenőrizni tudja az összeset.
Bár ez az első példa működik, nem ez a legjobb módja az egészségügyi ellenőrzések végrehajtásának. Ezenkívül az alapértelmezett beállításokat használja. Például az ellenőrzések közötti intervallum, amelyet interként jelölünk, két másodpercre van beállítva. Az esés, a sikertelen ellenőrzések megengedett száma háromra van állítva. A beállítások módosításához adja meg az előnyben részesített időközt és az ellenőrzések számát az alábbi példában látható módon:
2. példa: HTTP állapotellenőrzés végrehajtása
HTTP állapotellenőrzéssel a HAProxy HTTP-kérést küld az összes szervernek a „check” kulcsszóval. A válasz alapján megállapítja a szerver állapotát. A sikeres szerverválaszok példái a 2xx vagy 3xx tartományba esnek. A 200 OK-hoz hasonló válasz azt jelenti, hogy a szerver jó állapotban van.
Ebben a példában adja hozzá az „opció httpchk” sort a háttérrendszeréhez.
3. példa: Munkavégzés GET-kéréssel
A HAProxy egy GET kérést küld a „/” elérési útra, amikor HTTP-kérést küld. Ha azonban a végpont egy másik elérési úton van konfigurálva, megadhatja az URL elérési utat, például „/health”, és a HAProxy elküldi neki a GET kérést.
A végpontja alapján a szerver a választ a szerver állapotának meghatározására fogja használni. A megvalósítás módja:
4. példa: GET-kérés elérési útvonalának és válaszállapotának megadása
Egy végponttal megadhatja, hogy milyen sikeres válasz várható a végpont GET-kérelmétől a kiszolgáló állapotának meghatározásához. Ebben a példában a GET-kérés elérési útja „/health”, és egy 200-as válaszállapotra számítunk, amely megerősíti, hogy a kiszolgáló megfelelő állapotban van a terheléselosztási és egyéb feladatok kezeléséhez.
Miután módosította a HAProxy konfigurációs fájlját, indítsa újra a HAProxyt, hogy a módosítások érvénybe lépjenek.
Ez az! Ön végrehajtotta a hatékony állapotellenőrzéseket HAProxyján. A következő paranccsal elérheti a statisztika oldalt, vagy ellenőrizheti a naplófájlt, hogy megbizonyosodjon arról, hogy az állapotellenőrzések a várt módon működnek:
$ farok -f /var/log/haproxy.logKövetkeztetés
A HAProxyban különböző módokon hajthat végre hatékony állapotfelmérést. Az állapotellenőrzések a HAProxy konfigurációs fájl backend szakaszában vannak megvalósítva, és ez a bejegyzés különböző példákat mutat be, hogyan kell eljárni. Ellenőrizze az ideális módszert, és kényelmesen végezzen hatékony állapotfelmérést a HAProxyban.