Keepalive-software implementeert voornamelijk functies voor hoge beschikbaarheid via het VRRP-protocol. VRRP is de afkorting van Virtual Router Redundancy Protocol; VRRP is ontworpen om het probleem van single point of failure van statische routes op te lossen, wat ervoor kan zorgen dat wanneer individuele nodes uitvallen, het hele netwerk ononderbroken kan draaien. Daarom heeft Keepalive de functie om LVS te configureren en te beheren, en ook om de gezondheid van knooppunten onder LVS te controleren, en aan de andere kant kan het ook de hoge beschikbaarheidsfunctie van systeemnetwerkdiensten realiseren.
Keepalive-principe van hoge beschikbaarheid failover
Keepalive-failover tussen high-availability serviceparen wordt geïmplementeerd via VRRP (Virtual Router Redundancy Protocol).
Wanneer de Keepalive-service normaal functioneert, zal de master node continu heartbeat-berichten naar de standby-node (multicast) sturen om de back-upnode te laten weten dat deze nog leeft, en wanneer de master node faalt, kan hij geen heartbeat-berichten sturen, waardoor de standby-node de heartbeat niet meer kan detecteren van de master node, en daarom zijn eigen takeover-programma oproept om de IP-bronnen en -diensten van de master node over te nemen. Wanneer de primaire masternode is hersteld, geeft de back-upnode de IP-resources en diensten die door de master node zijn overgenomen vrij en herstelt deze naar zijn oorspronkelijke standby-rol.
Keepalive-paren met hoge beschikbaarheid communiceren met elkaar via VRRP
1) VRRP, de volledige naam van Virtual Router Redundancy Protocol, de Chinese naam is Virtual Route Redundancy Protocol, VRRP is ontstaan om het single point of failure van statische routes op te lossen. 2) VRRP is een campagneprotocolmechanisme dat routeringstaken aan een VRRP-router geeft. 3) VRRP gebruikt IP multicast (Standaard multicastadres (224.0.0.18)) maakt communicatie mogelijk tussen zeer beschikbare paren. 4) Wanneer de masternode pakketten verzendt en de standby-node pakketten ontvangt, en de standby-node de datapakketten van de master node niet kan ontvangen, wordt het overnameprogramma gestart om de middelen van de master node over te nemen. Er kunnen meerdere standby-nodes zijn, die worden geselecteerd via prioriteitscompetitie, maar over het algemeen is er een paar in de bediening en het onderhoud van het Keepaled-systeem. 5) VRRP gebruikt een encryptieprotocol om data te versleutelen, maar Keepalive-functionarissen raden nog steeds aan om platte tekst te gebruiken om het authenticatietype en wachtwoord te configureren.
Hoe de Keepalive-dienst werkt
1) Keepalive-paren met hoge beschikbaarheid communiceren via VRRP, VRRP wordt bepaald via het campagnemechanisme, de prioriteit van de master is hoger dan die van de standby, dus tijdens het werken geeft de master prioriteit om alle resources te verkrijgen, de standby-node is in een wachtende toestand, wanneer de master hangt, neemt de standby-node de resources van de master node over en vervangt vervolgens de master node om diensten aan de buitenwereld te leveren.
2) tussen Keepalive-dienstparen,Alleen de server die de master is, zal altijd verzendenVRRPUitzendpakketWanneer de master niet beschikbaar is, dat wil zeggen wanneer de host niet kan luisteren naar het door de master verzonden broadcastpakket, wordt de betreffende dienst gestart om de middelen over te nemen en zo de bedrijfscontinuïteit te waarborgen. De snelste overnamesnelheid kan minder dan 1 seconde zijn.
Testomgeving
Systeem: CentOS 8
| IP-adres | illustreren | | 192.168.50.222 | VIP-adres | | 192.168.50.227 | MASTER masterknooppunt | | 192.168.50.131 | BACKUP standby-knooppunten |
Laten we als volgt naar de voltooide renderings kijken:
Installeer de Nginx-dienst
Gebruik Yum direct inMasternodeenAlternatieve knooppuntenDe server installeert nginx met het volgende commando:
Bewerk de nginx-configuratiebestanden van de primaire en standby-nodes apart, pad:/etc/nginx/nginx.confDe configuratie is als volgt:
Gestart via nginx-commando, testtoegang tot poort 8055 via de browser, zoals getoond in de volgende afbeelding:
Installeer Keepalive Om te installeren op zowel de primaire node als de standby-node, is het commando als volgt:
Profieladres:/etc/keepalived/keepalived.conf
Hier moet je een health check-script configureren en een nieuw script aanmakenchk_nginx.shbestand is de code als volgt:
Upload het script naar de /etc/keepalive-map. en het verlenen van uitvoeringsrechten als volgt:
192.168.50.227 primaire node keepalived.conf configuratieAls volgt:
192.168.50.133 Alternate node keepalived.conf configuratieAls volgt:
Stel boot en boot apart op beide servers in
Tot nu toeDe configuratie is voltooid (zie bovenaan het artikel voor de weergave), kan worden getest via de nginx-dienst met het volgende commando:
(Einde)
|