Come configuro un'altra istanza di redis su Ubuntu?


8

Fondamentalmente voglio avere 2 istanze di redis su Ubuntu. Ho guardato /etc/init.d/redis-server script e ho provato a crearne uno nuovo (redis-server-dev) che punta a un altro file di configurazione (nuova porta ecc.) Ma non sembra funzionare.

Qual è la procedura corretta?

Grazie


Ho trovato questo debian.org/doc/debian-policy/ch-opersys.html#s-sysvinit che spiega come funzionano quegli script, ma non ho ancora idea di come creare una nuova istanza.
Dan,

Risposte:


19
  • Creare un nuovo file di configurazione /etc/redis/redis-new.conf(copiato da redis.conf) e modificare questi campi nella nuova configurazione
    • pidfile
    • porta
    • file di log
    • dir (per il db predefinito)
  • Crea un nuovo file /etc/init.d/redis-server-new(copiato dal file redis-server) e modifica questi campi nel nuovo file
    • nome
    • pidfile (uguale al file di configurazione nel passaggio 1)
    • deamon_args (il percorso del file di configurazione nel passaggio 1).
  • Crea la directory necessaria mkdir /var/lib/redis-new (e assegnagli i diritti appropriati chown redis:redis /var/lib/redis-new)
  • Rendi eseguibile il nuovo file: chmod +x /etc/init.d/redis-server-new
  • Registra il nuovo deamon: update-rc.d redis-server-new defaults

Ricevo questo errore: # update-rc.d impostazioni predefinite redis-server-dev insserv: script redis-server-dev: servizio redis-server già fornito! insserv: uscire adesso!
Bobby S,

5

Aggiungendo alla risposta di Dan ,

In base a questo errore nel file di registro, è necessario creare una directory aggiuntiva

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

così

mkdir /var/lib/redis-new

Altrimenti /etc/init.d/redis-server-newnon si avvia.

Non dimenticare di aggiungere i diritti corretti entro

chown redis:redis /var/lib/redis-new

0

Inoltre c'è un altro modo, possiamo usare lo script di installazione che si trova su https://github.com/antirez/redis/blob/3.0/utils/install_server.sh (viene fornito con il sorgente se hai compilato redis dal sorgente), ci sono 2 file modello:

  1. redis_init_script.tpl (si trova nella directory utils)
  2. redis.conf(è nella ../directory di utils nella fonte

Devi dire solo alla porta su quale nuova istanza deve essere eseguita (ci sono altre scelte configurabili, ma è possibile utilizzare le impostazioni predefinite), il resto del posizionamento dei file verrà eseguito automaticamente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.