Upstart: Запустить сервер после mongodb

Upstart: Запустить сервер после mongodb

Я хотел бы запустить сервер после запуска mongodb. Правильно ли использовать start on started mongodb?

Пример сценария upstart:

start on started mongodb
stop on starting rc RUNLEVEL=[016]

respawn

exec start-stop-daemon --start --make-pidfile --pidfile /var/run/myserver.pid --exec myserver >> /var/log/myserver.log 2>&1

решение1

Отказ от ответственности: Я практически ничего не знаю о mongo. Тем не менее, ответ на ваш вопрос будет: "Да, если есть upstart-сервис 'mongodb'".

Есть несколько способов это проверить:

sudo initctl list | grep mongo

Если эта команда что-либо возвращает, проверьте, что указанная в ней служба соответствует имени, которое вы используете («mongodb»).

В противном случае проверьте содержимое /etc/init(обратите внимание, не /etc/init.d) и посмотрите, есть ли файл .conf, связанный с mongo. Это будет имя используемой службы, то есть измените начало строфы на start on started [service name].

Если нет службы upstart, связанной с mongo, то mongo все еще использует скрипты init.d. Если это так, вам нужно найти или создать скрипт mongo upstart, установить его и отключить скрипты init.d (я использовал bumдля этого).

Поиск в Google дает несколько вариантов:

Скрипт Ubuntu upstart для MongoDB с автоматическим восстановлением

Этот выглядит более полным:

Скрипты запуска нескольких экземпляров MongoDB

Связанный контент