Redis ist ein Open-Source-In-Memory-Key-Value-Datenspeicher. Es kann als Datenbank, Cache und Message Broker verwendet werden und unterstützt verschiedene Datenstrukturen wie Strings, Hashes, Listen, Sets und mehr. Redis bietet Hochverfügbarkeit über Redis Sentinel und automatische Partitionierung über mehrere Redis-Knoten mit Redis Cluster.
Diese Anleitung behandelt die Installation und Konfiguration von Redis auf CentOS 8.
Installieren von Redis auf CentOS 8 #
Redis Version 5.0.x ist in den standardmäßigen CentOS 8-Repositories enthalten. Um es zu installieren, führen Sie die folgenden Befehle als Root oder Benutzer mit sudo-Berechtigungen aus:
sudo dnf install redis-server
Aktivieren und starten Sie nach Abschluss der Installation den Redis-Dienst:
sudo systemctl enable --now redis
Geben Sie Folgendes ein, um zu überprüfen, ob der Redis-Server ausgeführt wird:
sudo systemctl status redis
● redis.service - Redis persistent key-value database
Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
└─limit.conf
Active: active (running) since Sat 2020-02-08 20:54:46 UTC; 7s ago
Das ist es. Sie haben Redis auf Ihrem CentOS 8-Server installiert und ausgeführt.
Redis-Fernzugriff konfigurieren #
Standardmäßig lässt Redis keine Remote-Verbindungen zu. Sie können sich nur von 127.0.0.1 (localhost) aus mit dem Redis-Server verbinden – dem Computer, auf dem Redis ausgeführt wird.
Wenn Sie ein Einzelserver-Setup verwenden, bei dem der Client, der sich mit der Datenbank verbindet, auch auf demselben Host ausgeführt wird, sollten Sie den Fernzugriff nicht aktivieren.
Um Redis so zu konfigurieren, dass Remote-Verbindungen akzeptiert werden, öffnen Sie die Redis-Konfigurationsdatei mit Ihrem Texteditor:
sudo nano /etc/redis.conf
Suchen Sie die Zeile, die mit bind 127.0.0.1
beginnt und fügen Sie Ihre private IP-Adresse des Servers nach 127.0.0.1
hinzu .
bind 127.0.0.1 192.168.121.233
Stellen Sie sicher, dass Sie 192.168.121.233
ersetzen mit Ihrer IP-Adresse. Speichern Sie die Datei und schließen Sie den Editor.
Starten Sie den Redis-Dienst neu, damit die Änderungen wirksam werden:
sudo systemctl restart redis
Verwenden Sie den folgenden ss
Befehl, um zu überprüfen, ob der Redis-Server Ihre private Schnittstelle auf Port 6379
abhört :
ss -an | grep 6379
Sie sollten etwas wie das Folgende sehen:
tcp LISTEN 0 128 192.168.121.233:6379 0.0.0.0:*
tcp LISTEN 0 128 127.0.0.1:6379 0.0.0.0:*
Als Nächstes müssen Sie Ihre Firewall konfigurieren, um Datenverkehr auf TCP-Port 6379
zu ermöglichen .
Normalerweise möchten Sie den Zugriff auf den Redis-Server nur von einer bestimmten IP-Adresse oder einem bestimmten IP-Bereich aus zulassen. Zum Beispiel, um nur Verbindungen von 192.168.121.0/24
zuzulassen , führen Sie die folgenden Befehle aus:
sudo firewall-cmd --new-zone=redis --permanent
sudo firewall-cmd --zone=redis --add-port=6379/tcp --permanent
sudo firewall-cmd --zone=redis --add-source=192.168.121.0/24 --permanent
sudo firewall-cmd --reload
Die obigen Befehle erstellen eine neue Zone mit dem Namen redis
, öffnet den Port 6379
und ermöglicht den Zugriff aus dem privaten Netzwerk.
An diesem Punkt akzeptiert der Redis-Server Remoteverbindungen auf TCP-Port 6379.
Stellen Sie sicher, dass Ihre Firewall so konfiguriert ist, dass sie nur Verbindungen von vertrauenswürdigen IP-Bereichen akzeptiert.
Um zu überprüfen, ob alles richtig eingerichtet ist, können Sie versuchen, den Redis-Server von Ihrem Remote-Computer aus mit redis-cli
zu pingen Dienstprogramm, das eine Befehlszeilenschnittstelle für einen Redis-Server bereitstellt:
redis-cli -h <REDIS_IP_ADDRESS> ping
Der Befehl sollte eine Antwort von PONG
zurückgeben :
PONG