Vorwort Das Redis, das ich zuvor gelernt habe, lief immer auf einem einzelnen Server und wurde direkt auf dem Server bereitgestellt. Ich habe gehört, dass die Verwendung von Docker den Konfigurationsprozess vereinfacht ZustandDrei Server (da zur Gewährleistung der Sicherheit mindestens drei Sentinels erforderlich sind) [können für einige Stunden in der Alibaba Cloud gemietet werden]
Docker installierenFühren Sie die folgenden Anweisungen zeilenweise aus: # 1. Aktualisieren Sie die Kompilierungsumgebung yum -y install gcc # 2. Wie oben yum -y install gcc-c++ # 3. Docker installieren # 3.1 Deinstallieren Sie die alte Version yum remove docker \ Docker-Client \ docker-client-neueste \ docker-allgemein \ docker-neueste \ docker-latest-logrotate \ docker-logrotate \ Docker-Engine # 3.2 Installieren Sie das erforderliche Installationspaket yum install -y yum-utils # 3.3 Richten Sie das Mirror-Warehouse ein. Es wird empfohlen, inländische Mirrors zu verwenden, da diese schneller sind. yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 3.4 Aktualisieren Sie den Yum-Paketindex. Die Funktion besteht darin, das Paket lokal zwischenzuspeichern. yum makecache # 3.5 Installieren Sie die Community-Version von docker-ce im Zusammenhang mit docker yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.13-3.1.el7.x86_64.rpm # 3.6 Installieren Sie yum install docker-ce docker-ce-cli containerd.io # 3.7 Docker starten systemctl starte Docker # 3.8 So konfigurieren Sie systemctl enable docker, dass es im Hintergrund gestartet wird # 3.9 Verwenden Sie die Docker-Version, um zu überprüfen, ob es erfolgreich ist # 3.10 Test (optional) Docker Run Hallo Welt # 3.11 Deinstallieren und löschen (nur als Referenz, dieses Mal nicht durchgeführt) yum entferne docker-ce docker-ce-cli containerd.io rm -rf /var/lib/docker # 4. Konfigurieren Sie den Beschleuniger sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "Registrierungsspiegel": ["https://qdxc3615.mirror.aliyuncs.com"] } Ende der Laufzeit sudo systemctl daemon-reload sudo systemctl Neustart Docker Konfigurieren Sie Redis-Master- und -SlaveknotenDie von uns verwendeten Server sind Server 1 und Server 3 (ursprünglich gab es einen Master und zwei Slaves, aber ich habe Server 2 heruntergefahren). TIPPS: Bei xshell können Sie mit der rechten Maustaste klicken und die Sendetaste auswählen, um sie in alle Sitzungen einzugeben. Sie müssen sie also nicht zweimal konfigurieren. Oder verwenden Sie die scp-Anweisung, um die konfigurierte Datei mit anderen Servern zu teilen: # scp lokale_Datei Remote-Benutzername@Remote-IP:Remote-Ordner scp redis.conf [email protected]:/blau/redis02 1. Erstellen Sie zunächst einen Ordner. Achten Sie darauf, ihn nicht im Home-Pfad abzulegen, da der Container sonst aufgrund von Berechtigungsproblemen möglicherweise nicht ausgeführt werden kann. Das von mir erstellte Verzeichnis ist /blue/redis02 und die Anweisungen sind relativ einfach: CD / mkdir blau && cd blau mkdir redis02 und cd redis02 2. Erstellen Sie eine Docker-Datei, die zum Laden einiger benötigter Umgebungen verwendet wird. vi Docker-Datei # Der Inhalt der Docker-Datei ist wie folgt: # Erben vom Basisimage redis FROM redis WARTUNGSBEARBEITER blau<[email protected]> # Kopieren Sie die Dateien im Verzeichnis, in dem sich Dockerfile befindet, in das Containerverzeichnis /usr/local/etc/redis. KOPIEREN Sie redis.conf /usr/local/etc/redis/redis.conf # Installieren Sie einige Umgebungen. Führen Sie apt-get update aus. Führen Sie apt-get install -y vim aus. Führen Sie den Befehl apt-get install procps --assume-yes aus. VOLUMEN ["/Daten"] ARBEITSVERZEICHNIS /etc/redis # Öffnen Sie Port 7000 EXPOSE 7000 # Starten Sie CMD mit der Konfigurationsdatei [ "redis-server", "/usr/local/etc/redis/redis.conf"] 3. Laden Sie eine redis.conf von der offiziellen Website herunter und nehmen Sie die folgenden Änderungen vor. redis.conf enthält einige Konfigurationen von Redis, die im Wesentlichen mit der Konfiguration eines Einzelmaschinen-Redis mit einem Master, einem Slave und drei Sentinels identisch sind. # Bind 127.0.0.1 auskommentieren # binden 127.0.0.1 Hafen 7000 # Wenn ja hier, wird es die Verwendung von Konfigurationsdateien beeinflussen, um daemonize zu starten nein pid-Datei /var/run/redis_7000.pid # Sie müssen die folgenden beiden Passwörter festlegen und die Passwörter müssen konsistent sein requirepass testmaster123 masterauth testmaster123 # Ändern Sie den Schutzmodus. Wenn ja, sind externe Server nicht erreichbar. protected-mode no # Für Server 3 müssen Sie einen Satz hinzufügen, der angibt, dass es sich um den Slave-Server von Server 1 handelt. # Slaveof Host.Maschine.IP-Port Slaveof 8.131.78.18 7000 4. Nachdem Sie die obige Konfiguration gespeichert haben, können Sie mit der folgenden Anweisung ein Image erstellen. Dieser Vorgang dauert lange, daher müssen Sie geduldig warten: # Sie sollten docker build -t myredis verwenden. Das ist leichter zu erkennen, aber als ich es getestet habe, hat es funktioniert, deshalb möchte ich es nicht ändern. Dieser Satz erstellt ein neues Image basierend auf unserer Docker-Datei. Du kannst es ins Lager schieben, um es beim nächsten Mal direkt abzuholen. Docker-Build -t-Test. 5. Starten Sie den Container mit der folgenden Anweisung: # Starten Sie den Container docker run -d -p 7000:7000 --name redis-test test # Die folgende Anweisung zeigt den laufenden Container Docker PS an #Geben Sie den Container ein docker exec -it redis-test /bin/bash 6. Sie können die folgende Anweisung innerhalb des Containers verwenden, um die laufenden Threads anzuzeigen: # Die laufenden Threads anzeigen ps -ef # Verwenden Sie den Redis-Client, um auf Port 7000 zuzugreifen redis-cli -p 7000 # Geben Sie das Passwort auth testmaster123 ein # Informationen zur Replikation anzeigen # Nachfolgend sind die vom Knoten zurückgegebenen Informationen aufgeführt. # Replikation Rolle: Sklave master_host:8.131.78.18 Master-Port: 7000 master_link_status:aktiv master_last_io_seconds_ago:10 Master-Synchronisierung läuft: 0 Slave_Repl_Offset: 28 Slave-Priorität: 100 Slave_schreibgeschützt: 1 verbundene_Slaves:0 master_replid:438c700922a30ebbc66ee5c89a176c426924b2a7 master_replid2:0000000000000000000000000000000000000000 master_repl_offset:28 zweiter_Repl_Offset:-1 repl_backlog_active:1 repl_backlog_size:1048576 repl_backlog_first_byte_offset:1 repl_backlog_histlen:28 An diesem Punkt sind die Master- und Slave-Knoten erfolgreich konfiguriert. Dies ist das Ende dieses Artikels über die Docker-Konfiguration im Redis-Sentinel-Modus (auf mehreren Servern). Weitere Informationen zur Docker-Konfiguration im Redis-Sentinel-Modus finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Implementierung des Vue-Zählers
>>: Eine kurze Diskussion darüber, welche Felder in Mysql für die Indizierung geeignet sind
1. Abgerundeter Rand: CSS- CodeInhalt in die Zwis...
Bei täglichen Betriebs- und Wartungsarbeiten werd...
Jetzt unterstützt der 2016-Server den Multi-Site-...
Vorwort InnoDB gehört in MySQL zur Speicher-Engin...
Inhaltsverzeichnis 1. Einleitung 1. Bauteildaten ...
Inhaltsverzeichnis 1. Einführung in die grub.cfg-...
Das Backend verwendet das Framework thinkphp3.2.3...
Ich habe heute Nachmittag mit der Konfiguration v...
Lassen Sie mich zunächst erklären, dass wir uns o...
Inhaltsverzeichnis Hintergrund Problembeschreibun...
Inhaltsverzeichnis Vorwort VMware-Klon virtueller...
Dieser Artikel dokumentiert die Installation und ...
Inhaltsverzeichnis Ausgabe Ausgabepfad Ausgabe.öf...
Ich habe mich beim Backend angemeldet, um die Lös...
Aufschlag: # chkconfig --list Alle Systemdienste ...