Запуск сервера через PM2
В этой статье описаны шаги для запуска программного комплекса через менеджер процессов PM2.
Установка PM2
На хосте с программным комплексом необходимо установить PM2 командой:
console
$ sudo npm install -g pm2Конфигурация акторов
Для всех акторов необходимо выставить режим in-memory в файле /etc/saymon/actors.json, например:
json
"RestServerWorkerActor": {
"mode": "in-memory",
"onCrash": "respawn"
}Отключение сервиса
Если ранее на хосте программный комплекс запускался как сервис, то данный сервис необходимо остановить и отключить.
Команда для остановки сервиса:
console
$ sudo service saymon-server stopКоманда для отключения сервиса для systemctl:
console
$ sudo systemctl disable saymon-serverКоманда для отключения сервиса для init:
console
$ rm /etc/init/{saymon-server.conf,saymon-server-binary.conf}Запуск через PM2
Запуск программного комплекса через PM2 осуществляется командой:
console
$ sudo -Hu saymon pm2 start /usr/local/saymon/server/ecosystem.config.jsЧтобы сервисы стартовали автоматически при запуске операционной системы необходимо выполнить команду:
console
$ sudo -Hu saymon pm2 startupНастройка журнала
Логи по каждому актору пишутся в папку /home/saymon/.pm2/logs.
Для настройки ротации журнала необходимо создать файл с настройками /etc/logrotate.d/pm2-saymon и добавить в него следующее содержимое:
text
/home/saymon/.pm2/pm2.log /home/saymon/.pm2/logs/*.log {
maxsize 100M
daily
missingok
rotate 3
compress
notifempty
copytruncate
}Следующая команда очищает файлы журнала:
console
$ sudo -Hu saymon pm2 flushРабота с акторами
О статусе акторов можно узнать, выполнив команду
console
$ sudo -Hu saymon pm2 statusМониторинг работы акторов в режиме реального времени:
console
$ sudo -Hu saymon pm2 monitДля остановки/запуска/перезапуска конкретного или всех акторов необходимо использовать следующие команды:
console
$ sudo -Hu saymon pm2 start all - запуск всех акторов
$ sudo -Hu saymon pm2 restart all - перезапуск всех акторов
$ sudo -Hu saymon pm2 stop all - остановка всех акторов
$ sudo -Hu saymon pm2 start 4 5 - запуск акторов с номерами 4 и 5
$ sudo -Hu saymon pm2 restart 4 5 - перезапуск акторов с номерами 4 и 5
$ sudo -Hu saymon pm2 stop 4 5 - остановка акторов с номерами 4 и 5Для масштабирования акторов следует использовать команду:
console
$ sudo -Hu saymon pm2 scale saymon-rest-server 4где:
- saymon-rest-server – имя актора;
- 4 – желаемое количество акторов.
При этом перезапуск программного комплекса не требуется.