GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So installieren Sie Redis unter CentOS 7

Redis ist eine besonders schnelle Open-Source-Datenbank dank ihrer Daten, die sowohl im Arbeitsspeicher als auch auf der Festplatte gespeichert werden können. Es stellt eine der besten Lösungen für die Entwicklung von Anwendungen dar, die eine Datenverarbeitung in Echtzeit erfordern.

Dieses Tutorial bietet eine detaillierte Erklärung zur Installation und Konfiguration der Redis-Datenbank auf einem Server mit Linux CentOS 7-Distribution und zur Verbesserung Ihrer Datenbanksicherheit und zum Erstellen einer Replikatinstallation.

Verbinden Sie sich zunächst über eine SSH-Verbindung mit Ihrem Server. Wenn Sie dies noch nicht getan haben, wird empfohlen, unserer Anleitung zu folgen, um sich sicher mit dem SSH-Protokoll zu verbinden. Im Falle eines lokalen Servers gehen Sie zum nächsten Schritt und öffnen Sie das Terminal Ihres Servers.

Installation von Redis

Um Redis zu installieren, verwenden Sie einfach den Yum-Paketmanager:

$ sudo yum install redis

Sobald die Installation abgeschlossen ist, starten Sie den Dienst und installieren Sie ihn auf dem System:

$ sudo systemctl start redis

$ sudo systemctl enable redis

Prüfung der Installation

Um die korrekte Installation von Redis zu überprüfen, verwenden Sie den Befehlszeilenclient redis-cli und legen Sie einen Testwert in Ihrer Datenbank fest:

$ redis-cli set test 123456

OK

Wenn alles korrekt funktioniert, antwortet der Server mit "OK". Prüfen Sie daher, ob der Wert korrekt gespeichert wurde:

$ redis-cli get test

"123456"

Redis gibt den gerade gespeicherten Wert zurück (in diesem Fall den String "123456"). Löschen Sie dann diesen Testschlüssel:

$ redis-cli del test

(integer) 1

Verbesserung der Sicherheit Ihrer Installation

Die anfängliche Konfiguration von Redis ermöglicht es Ihnen, sich nur von einer lokalen Adresse aus mit der Datenbank zu verbinden, ohne dass ein Passwort oder eine Form der Authentifizierung erforderlich ist.

Alle Redis-Einstellungen werden von der Konfigurationsdatei in /etc/redis.conf gelesen und können jederzeit und in Echtzeit überschrieben werden, indem Sie eine beliebige Client-Software über die Befehle CONFIG SET / CONFIG GET verwenden. Beachten Sie jedoch, dass die vom Client geänderten Einstellungen nicht in der Konfigurationsdatei gespeichert werden und beim nächsten Start von Redis verloren gehen. .

Um Ihre Datenbanksicherheit zu verbessern, legen Sie ein Authentifizierungspasswort fest, indem Sie den requirepass-Eintrag in der Konfigurationsdatei ändern oder einfügen:

requirepass 5eMX822gZ0lCGdd81rSIrTvPCUfeEFYAUIgyJNs4

Das Passwort wird in der Klartext-Konfigurationsdatei gespeichert und muss lang genug sein, um Bruteforce-Angriffen standzuhalten, da Redis mehrere Verbindungen pro Sekunde verarbeiten kann.

Unter den wichtigsten Einstellungen finden wir auch den Bind, der festlegt, welche Adresse Redis haben muss, um den Empfang von Verbindungen zu ermöglichen:

bind 127.0.0.1

Nur die lokale Adresse 127.0.0.1 ist standardmäßig aktiviert. Wenn Sie den Redis-Server jedoch nach außen freigeben müssen, können zusätzliche Adressen hinzugefügt werden, z. B.:

bind 127.0.0.1 51.125.63.201

Ein weiterer häufiger Fehler besteht darin, den Standardport zum Abhören eingehender Verbindungen zu belassen. Dadurch kann jede Port-Scanning-Software den Redis-Server finden.

port 2589

Durch Ändern des Ports von 6379 auf 2589 kann der Redis-Dienst ausgeblendet und Ihrer Installation eine zusätzliche Sicherheitsstufe hinzugefügt werden.

Nachdem Sie alle Änderungen an der Konfigurationsdatei vorgenommen haben, starten Sie den Dienst neu:

$ sudo systemctl restart redis

Um die gerade angelegten Parameter zu überprüfen, verwenden Sie redis-cli, um beispielsweise die aktuellen Bindungsparameter zu erhalten, indem Sie den neu konfigurierten Port und das oben festgelegte Passwort verwenden:

$ redis-cli -a 5eMX822gZ0lCGdd81rSIrTvPCUfeEFYAUIgyJNs4 -p 2589 config get bind

Der Server sollte mit den erforderlichen Parametern antworten:

1) "bind"

2) "127.0.0.1"

Erstellen einer replizierten Installation

Mit Redis können Sie in wenigen Schritten einen Replikat-(Kopie-)Server konfigurieren. Im Vergleich zur Master-Version wird dieser Replica-Server in Echtzeit aktualisiert.

Durch diese Konfiguration kann ein Backup-Service zum Auslesen bei Ausfall des Hauptservers angeboten werden.

Nachdem Sie sich mit dem Slave-Sekundärserver verbunden haben, schließen Sie die Installation von Redis mit yum ab:

$ sudo yum install redis

Die gleichen Sicherheitsverfahren im vorherigen Absatz können auch angewendet werden, um diese Redis-Instanz zu sichern. Im folgenden Beispiel werden die Standardparameter verwendet.

Um mit dem Hauptserver (Master) synchronisiert zu werden, muss der Slave-Rechner korrekt mit dem Master-Rechner kommunizieren. Stellen Sie sicher, dass die öffentliche IP-Adresse in der Konfiguration des Master-Rechners vorhanden ist (Bind-Parameter) und überprüfen Sie, ob die Verbindung funktioniert, indem Sie den Befehl vom Slave-Rechner aus starten:

$ redis-cli -h [MASTER_IP_ADDRESS] -a [PASSWORD_MASTER] ping

PONG

Wenn eine Antwort auf den Ping-Befehl gegeben wird, kann der Slave korrekt kommunizieren.

Fahren Sie dann mit der eigentlichen Konfiguration des Slaves fort, indem Sie die folgenden Parameter in der Konfigurationsdatei /etc/redis.conf ändern:

# If it is there, specify the master connection password too. 
masterauth password
                # The slaveof directory specifies the master connection parameters (ADDRESS_IP PORT) 
slaveof 195.231.4.71 6379

Speichern Sie nach Abschluss die Konfiguration und starten Sie den Redis-Slave-Server, indem Sie Folgendes eingeben:

$ sudo systemctl start redis

$ sudo systemctl enable redis

Um zu überprüfen, ob die Synchronisation korrekt aktiviert wurde, verwenden Sie tail, um die letzten Zeilen der Dienstprotokolldatei anzuzeigen:

$ tail /var/log/redis/redis.log

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: receiving 77 bytes from master

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Flushing old data

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Loading DB in memory

6345:S 02 Jul 10:53:46.695 * MASTER <-> SLAVE sync: Finished with success

Die letzten Zeilen bestätigen, dass die Synchronisierung aktiv ist und ordnungsgemäß funktioniert.

Führen Sie dann einen echten Test durch, indem Sie einen Wert in Ihrer Datenbank festlegen und überprüfen, ob er vom Masterserver korrekt gelesen wird.

Stellen Sie den Testschlüssel vom Masterserver ein:

$ redis-cli -a password set test hello

OK

derselbe Wert wird vom Slave-Server gelesen:

$ redis-cli get test

"hello"

Wie Sie sehen können, haben sowohl Master als auch Slave denselben Wert gespeichert. Das bedeutet, dass das Replikat korrekt funktioniert!


Linux
  1. So installieren Sie ClickHouse unter CentOS 7

  2. So installieren Sie Minecraft Server unter CentOS 7

  3. So installieren Sie Teamspeak 3 Server auf CentOS 8

  4. So installieren Sie Redis Server auf CentOS 8

  5. So installieren Sie Redis Server unter Debian 11

So installieren Sie Redis unter CentOS 7

So installieren Sie Nginx unter CentOS 7

So installieren Sie Webmin unter CentOS 7

So installieren Sie ownCloud auf CentOS 7

So installieren Sie MyWebSQL unter CentOS 8

So installieren Sie WordPress auf einem CentOS 8-Server