Como executar várias instâncias de redis com o systemd

2

Eu recentemente mudei para o Debian 8 "Jessie", que agora usa o systemd e não consigo encontrar uma maneira de executar várias instâncias de redis.

Descobri que há um arquivo /lib/systemd/system/redis-server.service para iniciar o redis-server na reinicialização. Então, criei uma nova chamada de arquivo /lib/systemd/system/redis-server-2.service com este conteúdo:

[Unit]
Description=Advanced key-value store
After=network.target

[Service]
Type=forking
ExecStart=/usr/bin/redis-server /etc/redis/redis-2.conf
TimeoutStopSec=0
Restart=always
User=redis
Group=redis

[Install]
WantedBy=multi-user.target

Mas quando tento iniciar o serviço da seguinte forma: service redis-server-2 start , recebo este erro:

Job for redis-server-2.service failed. See 'systemctl status redis-server-2.service' and 'journalctl -xn' for details.

E systemctl status redis-server-2.service me dá:

● redis-server-2.service - Advanced key-value store
   Loaded: loaded (/lib/systemd/system/redis-server-2.service; disabled)
   Active: failed (Result: start-limit) since Sat 2015-10-10 11:09:54 CEST; 33s ago
  Process: 2473 ExecStart=/usr/bin/redis-server /etc/redis/redis-2.conf (code=exited, status=1/FAILURE)
 Main PID: 2371 (code=exited, status=1/FAILURE)

Oct 10 11:09:54 server101 systemd[1]: redis-server-2.service: control process exited, code=exited status=1
Oct 10 11:09:54 server101 systemd[1]: Failed to start Advanced key-value store.
Oct 10 11:09:54 server101 systemd[1]: Unit redis-server-2.service entered failed state.
Oct 10 11:09:54 server101 systemd[1]: redis-server-2.service start request repeated too quickly, refusing to start.
Oct 10 11:09:54 server101 systemd[1]: Failed to start Advanced key-value store.
Oct 10 11:09:54 server101 systemd[1]: Unit redis-server-2.service entered failed state.

que não está realmente me ajudando.

Mas, se eu executar /usr/bin/redis-server /etc/redis/redis-2.conf minha instância do redis, inicie corretamente.

Então, alguma ideia de por que o systemd não sabe o que iniciar esta instância por si só?

Agradecemos antecipadamente pela ajuda.

    
por Nicolas BADIA 10.10.2015 / 11:15

1 resposta

0

Como sugerido por Michael Hampton, verifiquei o syslog e descobri que:

Oct 10 11:33:46 server101 redis-server[1947]: *** FATAL CONFIG FILE ERROR ***
Oct 10 11:33:46 server101 redis-server[1947]: Reading the configuration file, at line 5
Oct 10 11:33:46 server101 redis-server[1947]: >>> 'logfile /var/log/redis/redis-server-2.log'
Oct 10 11:33:46 server101 redis-server[1947]: Can't open the log file: Permission denied

Então, só tive que fazer isso para corrigir o problema:

chown redis:redis /var/log/redis/redis-server-2.log
    
por 10.10.2015 / 11:38