4 votes

La commande de redémarrage d'Upstart ne charge pas la nouvelle configuration du travail mise à jour (solr)

Ici ma configuration upstart pour solr qui se trouve sous /etc/init/solr.conf

# /etc/init/solr.conf

description "Démarre le serveur Solr"

respawn
start on startup solr_push

script
        echo "Démarrage du serveur solr..."
        cd /opt/solr/solr-4.2.1/example
        exec java -Xms50M -Xmx80M -Djava.util.logging.config.file=/etc/solr/logging.properties -Dsolr.solr.home=/etc/solr -jar start.jar >> /var/log/solr/solr-console.log 2>&1
end script

Lorsque je mets à jour cette configuration upstart, par exemple en changeant les options java de -Xmx80M à -Xmx70M et ensuite je fais

sudo restart solr
ps aux | grep solr

Je vois toujours -Xmx80M là-bas, même si le processus solr a été démarré avec un nouvel identifiant de processus.

Quand je fais sudo stop solr et ensuite sudo start solr manuellement - tout semble comme prévu et je peux voir de nouvelles valeurs dans le ps aux.

J'avais l'impression que le redémarrage upstart arrête et redémarre en arrière-plan, mais alors pourquoi les résultats de l'arrêt et du démarrage manuels diffèrent du redémarrage?

Veuillez conseiller, peut-être que je fais quelque chose de incorrectement?

7voto

Christophe Eblé Points 4606

De "man initctl"...

redémarrer JOB [CLÉ=VALEUR]...

Demande qu'une instance du JOB nommé soit redémarrée, en affichant le statut du travail sur la sortie standard une fois la commande terminée.

L'instance du travail redémarré conservera sa configuration d'origine.

Pour que la nouvelle instance s'exécute avec la dernière configuration du travail, arrêtez le travail puis redémarrez-le à nouveau.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X