Натолкнулся тут на не очень приятное поведение Prosody, хранящего данные в Посгресе. При перезапуске pg или даже если просто prosody запущен при загрузке раньше, чем pg, он не может найти данные и не работает. К счастью, для CentOS с systemd есть быстрый фикс, уменьшающий неприятности этой проблемы — надо лишь чуть-чуть подправить файл сервиса.
0. Если бы у нас был новый systemd, мы бы набрали команду
systemctl edit prosody
и попали бы на шаг 2
1. но systemd в CentOS 7 уже староват и там такой команды еще не было, так что делаем всё вручную
mkdir /etc/systemd/system/prosody.service.d
cd /etc/systemd/system/prosody.service.d
touch override.conf
2. в override.conf помещаем следующий текст:
[Unit]
After=postgresql.service
Requires=postgresql.service
3. даем systemd обновить конфиги
systemctl daemon-reload
4. Профит! Теперь при запуске prosody будет пытаться сначала запустить и подождать postgres и перезапускаться при его перезапуске