Die Keepalive-Software implementiert hauptsächlich Hochverfügbarkeitsfunktionen über das VRRP-Protokoll. VRRP ist die Abkürzung für Virtual Router Redundancy Protocol; VRRP ist darauf ausgelegt, das Problem des Single Point of Failure statischer Routen zu lösen, was sicherstellen kann, dass bei Ausfällen einzelner Knoten das gesamte Netzwerk ununterbrochen betrieben werden kann. Daher hat Keepalive die Funktion, LVS zu konfigurieren und zu verwalten, sowie die Kontrolle der Gesundheit von Knoten unter LVS, und andererseits kann es auch die hohe Verfügbarkeitsfunktion von Systemnetzwerkdiensten realisieren.
Keepalive-Prinzip der Hochverfügbarkeits-Failover
Das Keepalived-Failover zwischen Hochverfügbarkeitsdienstpaaren wird über VRRP (Virtual Router Redundancy Protocol) implementiert.
Wenn der Keepalive-Dienst normal funktioniert, sendet der Master-Knoten kontinuierlich Herzschlag-Nachrichten an den Standby-Knoten (Multicast), um dem Backup-Knoten mitzuteilen, dass er noch lebt, und wenn der Master-Knoten ausfällt, kann er keine Heartbeat-Nachrichten senden, sodass der Standby-Knoten den Herzschlag vom Master-Knoten nicht mehr erkennen kann und sein eigenes Übernahmeprogramm aufruft, um die IP-Ressourcen und -Dienste des Master-Knotens zu übernehmen. Wenn der primäre Masterknoten wiederhergestellt wird, gibt der Backup-Knoten die vom Masterknoten übernommenen IP-Ressourcen und -dienste frei und stellt ihn in seine ursprüngliche Standby-Rolle zurück.
Keepalive-Hochverfügbarkeitspaare kommunizieren untereinander über VRRP
1) VRRP, der vollständige Name des Virtual Router Redundancy Protocol, der chinesische Name ist Virtual Route Redundancy Protocol, VRRP entstand, um den Single Point of Failure statischer Routen zu lösen. 2) VRRP ist ein Kampagnenprotokollmechanismus, der Routing-Aufgaben an einen VRRP-Router weitergibt. 3) VRRP verwendet IP-Multicast (Standard-Multicast-Adresse (224.0.0.18)) ermöglicht die Kommunikation zwischen hochverfügbaren Paaren. 4) Wenn der Master-Knoten Pakete sendet und der Standby-Knoten Pakete empfängt, wird das Übernahmeprogramm gestartet, um die Ressourcen des Master-Knotens zu übernehmen, wenn der Standby-Knoten die vom Master-Knoten gesendeten Datenpakete nicht empfangen kann. Es kann mehrere Standby-Knoten geben, die durch Prioritätswettbewerb ausgewählt werden, aber in der Regel gibt es ein Paar beim Betrieb und der Wartung des Keepaled-Systems. 5) VRRP verwendet ein Verschlüsselungsprotokoll zur Verschlüsselung der Daten, aber Keepalive-Verantwortliche empfehlen weiterhin Klartext zur Konfiguration von Authentifizierungstyp und Passwort.
Wie der Keepalive-Service funktioniert
1) Keepalived-Hochverfügbarkeitspaare kommunizieren über VRRP, VRRP wird über den Kampagnenmechanismus bestimmt, die Priorität des Masters ist höher als der Standby, daher gibt der Master beim Arbeiten Priorität, um alle Ressourcen zu erhalten, der Standby-Knoten befindet sich im Wartezustand, wenn der Master hängt, übernimmt der Standby-Knoten die Ressourcen des Master-Knotens und ersetzt dann den Master-Knoten, um Dienste für die Außenwelt bereitzustellen.
2) zwischen Keepalive-Dienstpaaren,Nur der Server, der Master ist, wird ständig sendenVRRPSendepaketWenn der Master nicht verfügbar ist, also wenn der Host das vom Master gesendete Broadcast-Paket nicht anhören kann, wird der relevante Dienst gestartet, um die Ressourcen zu übernehmen und die Geschäftskontinuität zu gewährleisten. Die schnellste Übernahmegeschwindigkeit kann weniger als 1 Sekunde betragen.
Testumfeld
System: CentOS 8
| IP-Adresse | illustrieren | | 192.168.50.222 | VIP-Adresse | | 192.168.50.227 | MASTER-Master-Knoten | | 192.168.50.131 | BACKUP-Standby-Knoten |
Schauen wir uns die fertigen Renderings wie folgt an:
Installieren Sie den Nginx-Dienst
Benutze Yum direkt inMasternodeundAlternative KnotenDer Server installiert nginx mit folgendem Befehl:
Bearbeiten Sie die nginx-Konfigurationsdateien des primären und Standby-Knotens separat, Pfad:/etc/nginx/nginx.confDie Konfiguration ist wie folgt:
Gestartet mit dem nginx-Befehl, Testzugriff auf Port 8055 über den Browser, wie im folgenden Bild gezeigt:
Installieren Sie Keepalive Um sowohl auf dem primären Knoten als auch auf dem Standby-Knoten zu installieren, lautet der Befehl wie folgt:
Profiladresse:/etc/keepalived/keepalived.conf
Hier musst du ein Gesundheitscheck-Skript konfigurieren und ein neues erstellenchk_nginx.shDatei lautet der Code wie folgt:
Lade das Skript ins Verzeichnis /etc/keepalived hoch. und Ausführungsberechtigungen wie folgt gewähren:
192.168.50.227 primärer Knoten keepalived.conf KonfigurationFolgendermaßen:
192.168.50.133 Alternativer Knoten keepalived.conf-KonfigurationFolgendermaßen:
Richte Boot und Boot auf beiden Servern separat ein
BisherDie Konfiguration ist abgeschlossen (siehe oben im Artikel für die Darstellung), kann über den nginx-Dienst mit folgendem Befehl getestet werden:
(Ende)
|