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=...
Другие вопросы по тегам