GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So richten Sie Nginx High Availability Cluster mit Pacemaker unter CentOS 7 ein

In diesem Tutorial zeigen wir Ihnen, wie Sie einen Nginx High Availability-Cluster mit Pacemaker unter CentOS 7 einrichten. Um einen Nginx-Server zu haben, der über einen langen Zeitraum ohne Ausfall betrieben werden kann, müssen wir den Server mit Aktiv-Passiv-Nginx-Instanzen konfigurieren . Pacemaker ist eine Open-Source-Cluster-Manager-Software, die eine maximale Hochverfügbarkeit Ihrer Dienste erreicht. Es ist ein fortschrittlicher und skalierbarer Hochverfügbarkeits-Cluster-Manager, der von ClusterLabs vertrieben wird, er verwaltet alle Cluster-Dienste und nutzt die Messaging- und Mitgliedschaftsfunktionen der zugrunde liegenden Cluster-Engine.

1. Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie:

  • 2 oder mehr Server
  • CentOS 7-Betriebssystem
  • Root-Zugriff auf jeden der Server

2. Anmelden und CentOS aktualisieren

ssh root@IP_Address -p7022
yum update
yum upgrade

Bearbeiten Sie die /etc/hosts-Datei auf beiden Servern mit einem Terminal-Texteditor Ihrer Wahl

nano /etc/hosts

Fügen Sie die folgenden Zeilen zur Datei /etc/hosts hinzu

192.168.0.22    webserver-01
192.168.0.23    webserver-02

3. Installieren Sie das Epel-Repository und Nginx

Zur Installation von Nginx ist das Repository Extra Packages for Enterprise Linux (EPEL) erforderlich. Führen Sie die folgenden Befehle auf beiden Servern aus.

yum install epel-release -y

yum install nginx -y
systemctl enable nginx
systemctl start nginx

4. Ändern Sie die standardmäßige Nginx-Indexseite

Sobald Sie fertig sind, müssen wir Änderungen an der Standard-Nginx-Indexseite auf beiden Servern vornehmen.

Führen Sie den folgenden Befehl auf Server eins

aus
echo ‘

webserver-01

’ > /usr/share/nginx/html/index.html

Führen Sie den folgenden Befehl auf Server zwei aus

echo ‘

webserver-02

’ > /usr/share/nginx/html/index.html

5. Pacemaker installieren und konfigurieren

In diesem Abschnitt installieren wir den Pacemaker-Stack. Sie müssen diesen Schritt auf beiden Servern durchführen.

yum install corosync pacemaker pcs -y

Aktivieren Sie nach Abschluss der Installation mit den folgenden systemctl-Befehlen, dass alle Dienste beim Systemstart automatisch gestartet werden.

systemctl enable pacemaker
systemctl enable corosync
systemctl enable pcsd

6. Synchronisieren Sie die Konfiguration

Die Installation erstellt einen „hacluster“-Systembenutzer. Außerdem müssen wir pcsd ausführen, um die Konfiguration zu synchronisieren

systemctl start pcsd

7. Erstellen Sie ein Passwort

Erstellen Sie als Nächstes ein neues Passwort für den Benutzer „hacluster“, das während der vorherigen Installation automatisch erstellt wurde. Wir müssen dasselbe Passwort für alle Server verwenden

passwd hacluster

8. Cluster erstellen

Führen Sie als Nächstes diesen Befehl unten aus

pcs cluster auth webserver-01 webserver-02

An diesem Punkt können wir den Cluster einrichten.

pcs cluster setup –name rosecluster webserver-01 webserver-02

rosecluster ist der Name des Clusters, während webserver-01 und webserver-02 die Server sind, die Teile von rosecluster sein werden.

Aktivieren Sie es beim Booten und starten Sie es jetzt.

pcs cluster enable –all
pcs cluster start –all

Wir können den Cluster-Status mit diesem Befehl überprüfen:

pcs status

9. STONITH deaktivieren

STONITH oder Shoot The Other Node In The Head ist die Fechtimplementierung auf Pacemaker. Wenn Sie in der Produktion sind, ist es besser, STONITH zu aktivieren. Da wir das Fechtgerät nicht verwenden, deaktivieren wir den STONITH.

Wenn Sie den Befehl pcs status ausführen, sehen Sie in der Ausgabe eine Warnung, dass keine STONITH-Geräte konfiguriert sind und STONITH nicht deaktiviert ist:
WARNUNG:keine stonith-Geräte und stonith-enabled ist nicht falsch

Deaktivieren Sie STONITH mit dem folgenden pcs-Befehl.

pcs property set stonith-enabled=false

10. Ignorieren Sie die Quorum-Richtlinie

In diesem Tutorial konfigurieren wir Pacemaker so, dass das Quorum ignoriert wird:

pcs property set no-quorum-policy=ignore

Überprüfen Sie die Eigenschaftsliste und stellen Sie sicher, dass stonith und die Quorum-Richtlinie deaktiviert sind.

pcs property list

11. Ressourcen hinzufügen

Floating IP ist die IP-Adresse, die sofort von einem Server auf einen anderen im selben Netzwerk migriert werden kann. Sie wird verwendet, um Failover in einem Hochverfügbarkeitscluster zu unterstützen. In diesem Tutorial lautet die Floating-IP-Adresse für die Pacemaker High-Availability „192.168.0.100“. Im Moment fügen wir zwei Ressourcen hinzu, die Floating-IP-Adressressource mit dem Namen „v_ip“ und eine neue Ressource für den Nginx-Webserver mit dem Namen „webserver“.

Fügen Sie die neue Floating-IP-Adresse „v_ip“ mit dem folgenden Befehl hinzu.

pcs resource create v_ip ocf:heartbeat:IPaddr2 ip=192.168.0.100 cidr_netmask=32 op monitor interval=20s

Als Nächstes können wir die zweite Ressource zum Cluster hinzufügen. Der Ressourcenagent des Dienstes ist ocf:heartbeat:nginx mit dem Namen „webserver“.

pcs resource create webserver ocf:heartbeat:nginx configfile=/etc/nginx/nginx.conf op monitor timeout=”5s” interval=”5s”

Stellen Sie sicher, dass kein Fehler vorliegt, und überprüfen Sie dann die Ressourcen.

pcs status resources

Wenn Sie zwei Ressourcen sehen; „v_ip“ und „webserver“ bedeutet, dass Floating IP und Nginx-Webserver hinzugefügt wurden.

12. Einschränkungen konfigurieren

In diesem Schritt teilen wir dem Server mit, dass beide zuvor erstellten Ressourcen auf demselben Host ausgeführt werden sollen. Wir werden eine Kollokationsbeschränkung für die Ressourcen mit einer Punktzahl von INFINITY festlegen.

pcs constraint colocation add webserver v_ip INFINITY

Stellen Sie die Nginx-Ressource (Webserver) so ein, dass sie immer auf demselben Host ausgeführt wird, auf dem v_ip aktiv ist.

pcs constraint order v_ip then webserver

Um zu überprüfen, ob die Ressourcen auf demselben Host ausgeführt werden, können wir Folgendes aufrufen:

pcs status

13. Testen Sie den Cluster.

Navigieren Sie in Ihrem Webbrowser zu http://192.168.0.100, Sie sehen die Standard-Nginx-Seite vom Webserver-01.

Rufen Sie dann den folgenden Befehl auf, um den Cluster auf dem Webserver-01 zu stoppen:

pcs cluster stop webserver-01

Wenn Sie jetzt die Seite unter http://192.168.0.100 aktualisieren, erhalten Sie die Standard-Nginx-Seite vom Webserver-02.

Herzlichen Glückwunsch, Sie haben erfolgreich einen Nginx High Availability Aktiv-Passiv-Cluster mit Pacemaker eingerichtet. Wenn Sie eine sehr ausgelastete Website haben, können Sie erwägen, Ihre Website auf einem Nginx HA zu betreiben. Es gibt viele bekannte Websites, die auf Nginx HA laufen, und sie verwenden Nginx HA, um ihre Inhalte schnell, zuverlässig und sicher bereitzustellen.

Natürlich müssen Sie Nginx High Availability Cluster nicht mit Pacemaker unter CentOS 7 einrichten, wenn Sie eine unserer Nginx Hosting-Lösungen verwenden. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, Ihnen dabei zu helfen. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.

PS . Wenn Ihnen dieser Beitrag zum Einrichten des Nginx-Hochverfügbarkeitsclusters mit Pacemaker unter CentOS 7 gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Cent OS
  1. So richten Sie den virtuellen Nginx-Host (Serverblöcke) unter CentOS 7 ein

  2. So installieren Sie Nginx unter CentOS 7

  3. Wie richte ich das MySQL-Master-Slave-Setup mit CentOS 7-Knoten ein?

  4. So richten Sie Nginx-Serverblöcke unter Ubuntu und CentOS ein

  5. So legen Sie benutzerdefinierte Gerätenamen mit udev in CentOS/RHEL 7 fest

So richten Sie einen Pacemaker-Cluster für Linux mit hoher Verfügbarkeit ein

So richten Sie einen FTP-Server unter CentOS 8 mit VSFTPD ein

So installieren Sie Nginx mit dem Yum-Befehl unter CentOS

So richten Sie WebDAV mit Apache unter CentOS 7 ein

Hochverfügbarkeit für Namenode einrichten – Teil 5

So richten Sie Hochverfügbarkeit für Resource Manager ein – Teil 6