2017-09-25 4 views
0

En fait, je suis sur le point de passer à debian 9 pour les nouveaux serveurs de production de la société et je veux les provisionner avec ansible. Jusqu'à présent, tout fonctionne bien, mais maintenant je suis coincé avec redis-server. Par défaut, Debian 9 est livré avec Redis version 3.2. J'installe le paquet via apt-get install redis-server. Après cela, Redis démarre en tant que démon en arrière-plan. Maintenant, je veux appliquer une configuration personnalisée, comme la liaison à 2 adresses IP différentes (127.0.0.1 et l'adresse IP du serveur). Après la modification de cette option et de l'option daemonize (yes), redis ne veut plus démarrer en arrière-plan. Chaque fois que vous faites service redis-server start ou /etc/init.d/redis-server start, la commande bloque juste.Problèmes de démarrage de Redis sur Debian Stretch (9)

journalctl -xe me dit que le fichier pid n'est pas lisible (redis-server.service: PID file /var/run/redis/redis-server.pid not readable (yet?) after start-post: No such file or directory), même si elle doit être créée selon le script init.d: ​​

start) 
    echo -n "Starting $DESC: " 
    mkdir -p $RUNDIR 
    touch $PIDFILE 
    chown redis:redis $RUNDIR $PIDFILE 
    chmod 755 $RUNDIR 

Après tout, je peux voir, que les deux service redis-server start et /etc/init.d/redis-server commencent le serveur et je suis également capable de se connecter au serveur via redis-cli. Mais le processus sacrément bloque.

Quelqu'un peut-il aider? Si vous avez besoin de plus d'informations, faites le moi savoir. Je fournirai tout ce qui est possible si cela résout le problème!

mieux Chris

+0

Ceci est probablement une meilleure question pour [Super User] (http://superuser.com/) ou [Unix et Linux Stack échange] (http://unix.stackexchange.com/). Il semble que vous avez un problème de configuration, pas une question de programmation. – jww

Répondre

0

J'ai eu une situation similaire sur un serveur Centos 7.

La résolution a été de changer supervised de pas à automatique

# By default Redis does not run as a daemon. Use 'yes' if you need it. 
 
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized. 
 
daemonize yes 
 

 
# If you run Redis from upstart or systemd, Redis can interact with your 
 
# supervision tree. Options: 
 
# supervised no  - no supervision interaction 
 
# supervised upstart - signal upstart by putting Redis into SIGSTOP mode 
 
# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET 
 
# supervised auto - detect upstart or systemd method based on 
 
#      UPSTART_JOB or NOTIFY_SOCKET environment variables 
 
# Note: these supervision methods only signal "process is ready." 
 
#  They do not enable continuous liveness pings back to your supervisor. 
 
supervised auto

Lorsque vous exécutez le processus en tant que démon il besoin d'interagir avec systemd pour la gestion des processus (si je lisez bien la documentation).

Merci