Monit для мониторинга 2 экземпляров searchd на одном сервере
У меня есть 2 приложения rails, размещенные на одном сервере, и каждое из них имеет свою собственную конфигурацию для think_sphinx /searchd с разными настроенными портами. Мне удалось настроить это на работу, и у меня запущено 2 экземпляра searchd.
Моя проблема в том, чтобы заставить Monit контролировать эти 2 экземпляра. Хотя эти 2 экземпляра searchd имеют свой собственный PID в отдельных каталогах, я не смог определить конфигурацию в monitrc, потому что имена процессов в этом случае совпадают, а именно searchd.
В моем monitrc у меня есть 2 отдельные команды следующим образом:
check process searchd with pidfile /var/www/app1/shared/pids/production.sphinx.pid
start program=....
stop program=....
check process searchd with pidfile /var/www/app2/shared/pids/production.sphinx.pid
start program=...
stop program=...
Monit требует уникального имени процесса. Можно ли запустить мой второй экземпляр searchd, используя другое имя процесса? Спасибо за помощь.
1 ответ
Вы можете вызывать процесс как угодно в конфигурационных файлах monit - он не должен совпадать с исполняемым файлом. Так:
check process searchd_app1 with pidfile /var/www/app1/shared/pids/production.sphinx.pid
start program=....
stop program=....
check process searchd_app2 with pidfile /var/www/app2/shared/pids/production.sphinx.pid
start program=...
stop program=...