Keepalive-programvaran implementerar främst högtillgängliga funktioner via VRRP-protokollet. VRRP är förkortningen för Virtual Router Redundancy Protocol, VRRP är utformat för att lösa problemet med en enda felpunkt för statiska rutter, vilket kan säkerställa att när enskilda noder går ner kan hela nätverket köras oavbrutet. Därför har Keepalive funktionen att konfigurera och hantera LVS, och även att kontrollera hälsan hos noder under LVS, och å andra sidan kan det även realisera funktionen för hög tillgänglighet hos systemnätverkstjänster.
Principen för att hålla en övergång med hög tillgänglighet
Keepalive-failover mellan högtillgängliga servicepar implementeras via VRRP (Virtual Router Redundancy Protocol).
När Keepalive-tjänsten fungerar normalt skickar masternoden kontinuerligt hjärtslagsmeddelanden till reservnoden (multicast) för att informera reservnoden om att den fortfarande lever, och när huvudnoden misslyckas kan den inte skicka hjärtslagsmeddelanden, så reservnoden kan inte längre upptäcka hjärtslaget från huvudnoden, och anropar därför sitt eget övertagsprogram för att ta över IP-resurser och tjänster från huvudnoden. När primär masternod återställs släpper backupnoden de IP-resurser och tjänster som masternoden tagit över och återställer den till sin ursprungliga standby-roll.
Keepalive-par med hög tillgänglighet kommunicerar med varandra via VRRP
1) VRRP, det fullständiga namnet på Virtual Router Redundancy Protocol, det kinesiska namnet är Virtual Route Redundancy Protocol, VRRP uppstod för att lösa den enskilda felpunkten för statiska rutter. 2) VRRP är en kampanjprotokollmekanism som ger routinguppgifter till en VRRP-router. 3) VRRP använder IP-multicast (Standard multicast-adress (224.0.0.18)) möjliggör kommunikation mellan högt tillgängliga par. 4) När huvudnoden skickar paket och reservnoden tar emot paket, och standby-noden inte kan ta emot datapaketen som skickas av huvudnoden, startas övertagningsprogrammet för att ta över resurserna från huvudnoden. Det kan finnas flera standby-noder, som väljs genom prioriterad konkurrens, men generellt finns det ett par i drift och underhåll av Keepaled-systemet. 5) VRRP använder ett krypteringsprotokoll för att kryptera data, men Keepalive-tjänstemän rekommenderar fortfarande att använda klartext för att konfigurera autentiseringstyp och lösenord.
Hur Keepalive-tjänsten fungerar
1) Keepalive-par med hög tillgänglighet kommunicerar via VRRP, VRRP bestäms via kampanjmekanismen, prioriteten för mastern är högre än standby, därför ger mastern prioritet för att få alla resurser när man arbetar, standby-noden är i väntläge, när mastern hänger tar standby-noden över masternodens resurser och ersätter sedan masternoden för att tillhandahålla tjänster till omvärlden.
2) mellan Keepalive-servicepar,Endast servern som är master skickar hela tidenVRRPSändningspaketNär mastern är otillgänglig, det vill säga när värden inte kan lyssna på sändningspaketet som mastern skickat, startas den relevanta tjänsten för att ta över resurserna och säkerställa affärskontinuitet. Den snabbaste övertagandehastigheten kan vara mindre än 1 sekund.
Testmiljö
System: CentOS 8
| IP-adress | illustrera | | 192.168.50.222 | VIP-adress | | 192.168.50.227 | MASTER-huvudnoden | | 192.168.50.131 | BACKUP-standby-noder |
Låt oss titta på de färdiga renderingarna enligt följande:
Installera Nginx-tjänsten
Använd Yum direkt iMasternodeochAlternativa noderServern installerar nginx med följande kommando:
Redigera nginx-konfigurationsfilerna för primär- och standby-noden separat, sökväg:/etc/nginx/nginx.confKonfigurationen är följande:
Startade via nginx-kommandot, teståtkomst till port 8055 via webbläsare, som visas i följande bild:
Installera Keepalive För att installera på både primärnoden och standby-noden är kommandot följande:
Profiladress:/etc/keepalived/keepalived.conf
Här behöver du konfigurera ett hälsokontrollskript och skapa ett nyttchk_nginx.shfilen är koden följande:
Ladda upp skriptet till katalogen /etc/keepalive. och bevilja exekveringsbehörigheter enligt följande:
192.168.50.227 primärnod keepalived.conf-konfigurationFöljande följer:
192.168.50.133 Alternativ nod keepalived.conf-konfigurationFöljande följer:
Ställ in boot och boot på båda servrarna separat
HittillsKonfigurationen är klar (se toppen av artikeln för renderingen), kan testas via nginx-tjänsten med följande kommando:
(Slut)
|