Wie konfiguriere ich eine andere Redis-Instanz auf Ubuntu?

8

Grundsätzlich möchte ich 2 Instanzen von Redis unter Ubuntu haben. Ich habe mir das Skript /etc/init.d/redis-server angesehen und versucht, ein neues (redis-server-dev) zu erstellen, das auf eine andere Konfigurationsdatei (neuer Port usw.) verweist, aber es schien nicht zu funktionieren.

Was ist das richtige Verfahren?

Vielen Dank

Dan
quelle
Ich habe dieses debian.org/doc/debian-policy/ch-opersys.html#s-sysvinit gefunden , das erklärt, wie diese Skripte funktionieren, aber ich habe immer noch keine Ahnung, wie man eine neue Instanz erstellt.
Dan

Antworten:

19
  • Erstellen Sie eine neue Konfigurationsdatei /etc/redis/redis-new.conf(kopiert von redis.conf) und ändern Sie diese Felder in der neuen Konfiguration
    • PID-Datei
    • Hafen
    • Logdatei
    • dir (für die Standard-Datenbank)
  • Erstellen Sie eine neue Datei /etc/init.d/redis-server-new(kopiert vom Datei-Redis-Server) und ändern Sie diese Felder in der neuen Datei
    • Name
    • PID-Datei (wie in der Konfigurationsdatei in Schritt 1)
    • deamon_args (der Pfad zur Konfigurationsdatei in Schritt 1).
  • Erstellen Sie das benötigte Verzeichnis mkdir /var/lib/redis-new (und geben Sie ihm die richtigen Rechte chown redis:redis /var/lib/redis-new)
  • Machen Sie die neue Datei ausführbar: chmod +x /etc/init.d/redis-server-new
  • Registrieren Sie den neuen Deamon: update-rc.d redis-server-new defaults
Dan
quelle
Ich erhalte folgende Fehlermeldung: # update-rc.d redis-server-dev ist standardmäßig insserv: script redis-server-dev: Dienst redis-server bereits bereitgestellt! insserv: jetzt beenden!
Bobby S
5

Zu Dans Antwort hinzufügen :

Entsprechend diesem Fehler in der Protokolldatei müssen wir ein zusätzliches Verzeichnis erstellen

# Can't chdir to '/var/lib/redis-new': No such file or directory

damit

mkdir /var/lib/redis-new

Sonst /etc/init.d/redis-server-newstartet nicht.

Vergessen Sie nicht, die richtigen Rechte hinzuzufügen

chown redis:redis /var/lib/redis-new
Hypo
quelle
0

Es gibt auch eine andere Möglichkeit: Wir können das Installationsskript verwenden, das sich unter https://github.com/antirez/redis/blob/3.0/utils/install_server.sh befindet (wird mit der Quelle geliefert, wenn Sie Redis aus der Quelle kompiliert haben). Es gibt 2 Vorlagendateien:

  1. redis_init_script.tpl (befindet sich im Verzeichnis utils)
  2. redis.conf(befindet sich im ../Verzeichnis von Utils in der Quelle

Sie müssen nur den Port angeben, an dem die neue Instanz ausgeführt werden soll (es gibt andere konfigurierbare Optionen, aber die Standardeinstellungen können verwendet werden). Der Rest der Platzierung der Dateien erfolgt automatisch.

Mohit
quelle