Bonjour,
sur un linux redhat 7* j'ai créé un service pour une application spécifique. Lorsque je start ou stop mon service via la commande systemctl start monservice et systemctl stop monservice je n'ai aucun problème , mais j'ai cru que la commande systemctl reboot avant l'arrêt de la machine allait arréter proprement mon service , hors ce n'est pas le cas.
Comment dois je spécifier au systéme d'arréter proprement mon service pendant la phase de reboot ? faut il redéfinir le target reboot ?
Merci d'avance pour votre aide ?
# Constatation
Posté par WhiteCat . Évalué à 3.
Bonjour,
Comment tu constates que ton service ne s'arrête pas proprement lors d'un reboot ?
[^] # Re: Constatation
Posté par dofre114 . Évalué à 1.
Bonjour,
car dans mon script d'arret je redemarre le Service sur une autre machine . Et lors du redemarrage du serveur j'ai des erreurs sur le produit qui indique que l arret etait brutal
Je vois que le reboot target est disabled de meme que les run Level,faut il activer le target reboot et ensuite specifier a mon Service via WantedBy ?
[Unit]
Description= TEST Application
After=syslog.target network.target sshd.service
[Service]
Type=simple
WorkingDirectory=/opt/xfbgw/run_time
ExecStart=/home/test/bin/start-gw.sh
ExecStop=/home/test/bin/stop-gw.sh
TimeoutSec=360
RemainAfterExit=true
[Install]
WantedBy=multi-user.target
reboot.target disabled
remote-cryptsetup.target disabled
remote-fs-pre.target static
remote-fs.target enabled
rescue.target disabled
rpc_pipefs.target static
rpcbind.target static
runlevel0.target disabled
runlevel1.target disabled
runlevel2.target enabled
runlevel3.target enabled
runlevel4.target enabled
runlevel5.target static
runlevel6.target disabled
shutdown.target static
# Commentaire supprimé
Posté par Anonyme . Évalué à 2.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Manque de précisions
Posté par dofre114 . Évalué à 0.
Bonjour,
car dans mon script d'arret je redemarre le Service sur une autre machine . Et lors du redemarrage du serveur j'ai des erreurs sur le produit qui indique que l arret etait brutal
Je vois que le reboot target est disabled de meme que les run Level,faut il activer le target reboot et ensuite specifier a mon Service via WantedBy ?
[Unit]
Description= TEST Application
After=syslog.target network.target sshd.service
[Service]
Type=simple
WorkingDirectory=/opt/xfbgw/run_time
ExecStart=/home/test/bin/start-gw.sh
ExecStop=/home/test/bin/stop-gw.sh
TimeoutSec=360
RemainAfterExit=true
[Install]
WantedBy=multi-user.target
reboot.target disabled
remote-cryptsetup.target disabled
remote-fs-pre.target static
remote-fs.target enabled
rescue.target disabled
rpc_pipefs.target static
rpcbind.target static
runlevel0.target disabled
runlevel1.target disabled
runlevel2.target enabled
runlevel3.target enabled
runlevel4.target enabled
runlevel5.target static
runlevel6.target disabled
shutdown.target static
[^] # Re: Manque de précisions
Posté par dofre114 . Évalué à 1.
oui mon service est bien enable, en mode manuel via systemctl stop monservice et systemctl start monservice cela fonctionne.
c est lors du reboot que ca ne fonctionne pas
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 2.
Ce commentaire a été supprimé par l’équipe de modération.
# moche
Posté par NeoX . Évalué à 5.
c'est très moche
ca devrait être la machine distante qui regarde si le service local est present et s'active
ca peut se faire via un heartbeat (un paquet envoyé par la machine locale et reçu par la distante), tant que le paquet est là, la machine attend, si le paquet n'arrive pas, le service s'active.
ainsi si la machine locale plante ou le reseau tombe le service repart ailleurs, meme si ton script de reboot n'est pas joué
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.