redis-server2 é start-stop-daemon: aviso: este sistema não é capaz de rastrear nomes de processos com mais de 15 caracteres

4

Então, tive a necessidade de executar duas instâncias de redis no mesmo servidor. Meu servidor é uma caixa do Ubuntu 14.04.

Então eu segui este guia , mas não de maneira restrita. Quero dizer, em vez de modificar scripts de inicialização redis (que vêm de pacotes do Ubuntu), decidi criar novos scripts para a segunda instância e deixar os originais intocados para a primeira instância.

Então, o que eu fiz foi:

1) Crie um novo script para nova instância (ele será executado na porta 6380, ao invés do padrão 6379):

sudo cp /etc/init.d/redis-server /etc/init.d/redis-server6380

2) Modifique /etc/init.d/redis-server6380 para ser um pouco diferente. Em vez de:

DAEMON=/usr/bin/redis-server
DAEMON_ARGS=/etc/redis/redis.conf
NAME=redis-server
DESC=redis-server

RUNDIR=/var/run/redis
PIDFILE=$RUNDIR/redis-server.pid

Teria:

NAME='basename ${0}'
DAEMON=/usr/bin/redis-server
DAEMON_ARGS=/etc/redis/${NAME}.conf
DESC=${NAME}

RUNDIR=/var/run/redis
PIDFILE=$RUNDIR/${NAME}.pid

3) Em seguida, copie a configuração:

cp /etc/redis/redis-server.conf /etc/redis/redis-server6380.conf

Edite o novo arquivo redis-server6380.conf como sendo de:

pidfile /var/run/redis/redis-server.pid
port 6379
logfile /var/log/redis/redis-server.log
dir /var/lib/redis

Para:

pidfile /var/run/redis/redis-server6380.pid
port 6380
logfile /var/log/redis/redis-server6380.log
dir /var/lib/redis6380

4) Em seguida, crie o diretório de trabalho:

sudo mkdir /var/lib/redis6380 && sudo chown redis.redis /var/lib/redis6380

O pequeno problema que tenho agora é que é difícil verificar se as instâncias estão em execução.

Antes, acho que eu poderia simplesmente executar:

service redis-server status

E saiba se os redis estão sendo executados.

Agora, se eu fizer isso, recebo:

$ service redis-server status
redis-server is not running

Mesmo quando a primeira instância está em execução! E para a segunda instância eu recebo:

$ service redis-server6380 status
redis-server6380 is start-stop-daemon: warning: this system is not able to track process
names longer than 15 characters, please use --exec instead of --name.
not running

MAS POR QUE? Eu não entendo ...

A mesma coisa acontece se eu usar /etc/init.d/redis-server* em vez de service . A maneira hacky que agora conheço para verificar se eles estão realmente funcionando é esta:

$ ps aux | grep redis
andrew     365  0.0  0.1  10468  2236 pts/0    S+   07:17   0:00 grep --color=auto redis
redis    22521  0.0  1.3  50860 23132 ?        Ssl  Feb19   4:38 /usr/bin/redis-server 0.0.0.0:6379
redis    52953  0.0  0.5  38572  8860 ?        Ssl  Feb25   0:23 /usr/bin/redis-server 0.0.0.0:6380

Mas eu gostaria de não precisar recorrer a isso: (

    
por user1623521 26.02.2016 / 08:23

0 respostas