Heim >Datenbank >Redis >So erstellen Sie einen Redis-Replikationscluster

So erstellen Sie einen Redis-Replikationscluster

王林
王林nach vorne
2023-06-03 08:03:491292Durchsuche

Umgebungsvorbereitung

1. Server (oder Cloud-Server) basierend auf dem Centos7-System;

2. Redis-Installationspaket

Aufgrund von Ressourcenbeschränkungen wird dieser Artikel auf einem Server erstellt.

1. Laden Sie das Redis-Installationspaket in das angegebene Verzeichnis hoch (und dekomprimieren Sie es)

So erstellen Sie einen Redis-Replikationscluster

2. Erstellen Sie im aktuellen Verzeichnis drei Verzeichnisse

Erstellen Sie im aktuellen Verzeichnis 7001 bzw. 7002. 7003 drei Dateiverzeichnisse

So erstellen Sie einen Redis-Replikationscluster

3. Kopieren Sie die Konfigurationsdatei redis.conf unter dem Redis-Dekomprimierungspaket in die drei Verzeichnisse

So erstellen Sie einen Redis-Replikationscluster

4. Ändern Sie die Standardportnummer jeder Konfigurationsdatei Speicherverzeichnis

kann mit dem Befehl sed stapelweise ersetzt und geändert werden

sed -i -e 's/6379/7001/g' -e 's/dir .\//dir \/tmp\/7001\//g' 7001/redis.conf
sed -i -e 's/6379/7002/g' -e 's/dir .\//dir \/tmp\/7002\//g' 7002/redis.conf
sed -i -e 's/6379/7003/g' -e 's/dir .\//dir \/tmp\/7003\//g' 7003/redis.conf

So erstellen Sie einen Redis-ReplikationsclusterNachdem die Änderung abgeschlossen ist, können wir genauso gut eine Konfigurationsdatei nach Belieben anzeigen,

So erstellen Sie einen Redis-Replikationscluster

5 IP jeder Instanz

Die virtuelle Maschine selbst verfügt über mehrere IPs. Um zukünftige Verwirrung zu vermeiden, müssen die verbindlichen IP-Informationen jeder Instanz in der Datei redis.conf angegeben werden. Das Format lautet wie folgt:

replica -announce-ip Die aktuelle IP

kann weiterhin verwendet werden. Bearbeiten durch Stapeländerung
sed -i '1a replica-announce-ip 当前IP' 7001/redis.conf
sed -i '1a replica-announce-ip 当前IP' 7002/redis.conf
sed -i '1a replica-announce-ip 当前IP' 7003/redis.conf

So erstellen Sie einen Redis-ReplikationsclusterNachdem die Änderung abgeschlossen ist, können Sie sie mit dem folgenden Befehl bestätigen

So erstellen Sie einen Redis-ReplikationsclusterDie Änderung der obigen Konfigurationsdatei ist grundsätzlich abgeschlossen

6. Cluster-Startup

Starten Sie 3 separate Instanzen, der Startvorgang ist wie folgt:

7001-Instanz:

So erstellen Sie einen Redis-Replikationscluster

7002-Instanz:

So erstellen Sie einen Redis-Replikationscluster

7003 Instanz :

So erstellen Sie einen Redis-ReplikationsclusterWenn Sie es mit einem Klick stoppen möchten, können Sie den folgenden Befehl ausführen:

printf '%s\n' 7001 7002 7003 | xargs -I{} -t redis-cli -p {} shutdown

7. Konfigurieren Sie die Master-Slave-Beziehung zwischen 3 Instanzen

Drei Instanzen werden oben gestartet, aber dort Es besteht keine Master-Slave-Beziehung zwischen ihnen. Um den Master-Slave zu konfigurieren, können Sie „replicaof“ oder „slaveof“ (vor 5.0) verwenden.

Es gibt zwei Modi: temporär und permanent:

    Ändern Sie die Konfigurationsdatei (permanent), fügen Sie eine Konfigurationszeile in redis.conf hinzu: Slaveof ; redis- Der CLI-Client stellt eine Verbindung zum Redis-Dienst her und führt den Befehl „slaveof“ aus (ungültig nach dem Neustart): „slaveof“ ; Führen Sie über den Redis-Cli-Befehl zum Herstellen einer Verbindung mit 7002 den folgenden Befehl aus:
  • redis-cli -p 7002

  • Dann führen Sie den folgenden Befehl aus

    SLAVEOF 127.0.0.1 7001

    Sobald Sie den obigen Befehl ausgeführt haben, können Sie die Ausgabeinformationen der beiden Instanzkonsolen von sehen 7001 und 7002, und Sie können sehen, dass 7002 abgeschlossen ist. Verbindung zu 7001 und Datensynchronisierung.

Verwenden Sie dieselbe Methode, um eine Verbindung zum 7003-Client herzustellen und die oben genannten Vorgänge auszuführen. So erstellen Sie einen Redis-Replikationscluster

Mit dem 7001-Client verbinden und ausführen Verwenden Sie den Befehl „info“, um die Clusterinformationen anzuzeigen und die folgenden Informationen anzuzeigen. Zeigt an, dass der Cluster erfolgreich erstellt wurde

So erstellen Sie einen Redis-Replikationscluster

Aber wenn ein Schlüssel auf 7002 oder 7003 gesetzt ist, wird ein Fehler gemeldet, das heißt, der Slave-Knoten hat keine Schreibberechtigung

So erstellen Sie einen Redis-Replikationscluster

Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Redis-Replikationscluster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen