나는 monit을 사용하여 모든 것이 제대로 작동하는지 확인했지만 monit 데몬도 중지되었습니다.
이것이 어떻게 진행되는지, 그리고 monit 데몬이 중지되는 것을 방지하는 방법은 무엇입니까?
답변1
우분투 9.10에서는/etc/inittabUbuntu가 사용하기 때문에 존재하지 않습니다.갑자기 나타나다대신에/sbin/초기화. 따라서 위의 답변 #1과 동일한 결과를 얻으려면 시작 스크립트가 필요합니다.
# This is an event.d (upstart) script to keep monit running
# To install disable the old way of doing things:
#
# /etc/init.d/monit stop && update-rc.d -f monit remove
#
# then put this script here: /etc/init/monit.conf
#
# You can manually start and stop monit like this:
#
# start monit
# stop monit
#
# Karim Ratib (http://thereisamoduleforthat.com)
#
# Based on monit.upstart (https://code.google.com/p/monit/source/browse/trunk/contrib/monit.upstart?r=132)
# by Michael Hale (http://halethegeek.com)
start on runlevel [2345]
stop on runlevel [06]
exec /usr/sbin/monit -Ic /etc/monit/monitrc
respawn
답변2
반드시 실행해야 하고, 죽으면 다시 시작해야 하는 작업에 대해 제가 생각할 수 있는 가장 좋은 옵션은 init에서 프로세스를 실행하는 것입니다.
다음과 같은 항목을 넣었습니다./etc/inittab:
이름:234:respawn:/usr/local/bin/daemon
그런 다음 다음을 사용하여 초기화를 다시 시작하십시오.
초기화 q
이제 데몬이 죽을 때마다 자동으로 "다시 생성"됩니다.
편집: 저는 Monit에 대해 잘 모르지만 우연히 그들의 내용을 확인했습니다.FAQ 페이지, 그들은 특별히 monit에 대해 자세히 설명했습니다.
답변3
monit 문서에서 가져옴:http://mmonit.com/wiki/Monit/FAQ#init
Q: monit이 예기치 않게 종료되는 경우 다시 생성될 수 있도록 init에서 monit을 어떻게 실행할 수 있습니까?
A: Init에서 Monit을 실행할 때는 Monit 버전 5 이상을 사용하는 것이 좋습니다.
monits 구성 파일에서 'set init' 문을 사용하거나 명령줄에서 -I 옵션을 사용하세요. 다음은 monit에 대한 샘플 /etc/inittab 항목입니다.
# Run monit in standard runlevels mo:2345:respawn:/usr/local/sbin/monit -Ic /etc/monitrc
inits 구성 파일을 수정한 후 다음 명령을 실행하여 런레벨을 다시 검사하고 monit를 시작할 수 있습니다.
telinit q
모니터링 상태를 확인하려면 Nagios/Icinga, Zabix 또는 Sensu와 같은 또 다른 모니터링 계층을 시나리오에 추가하는 것을 고려해야 합니다.
모니터가 죽으면 다시 생성될 수 있지만, 모니터가 작동을 멈추고 데몬이 여전히 살아 있는 경우가 있으므로 다시 생성이 실행되지 않습니다.
이 시점에서 모니터 상태를 사용할 수 없다는 경고 이메일을 보내고 문제를 해결하도록 모니터링의 또 다른 계층을 구성할 수 있습니다.