Хотя официально не поддерживается, я хочу запустить Chef Server 12 (12.3.0) на Debian Jessie.
После исправления ошибки системного эго Debian, как описано в поварские книги / повар-сервер # 86, он успешно устанавливается и работает.
Однако runit
настройка кажется неправильной:
# chef-server-ctl status
fail: bookshelf: unable to change to service directory: file does not exist
fail: nginx: unable to change to service directory: file does not exist
...
Я еще не эксперт ни в systemd, ни в runit, но вот некоторая отладочная информация:
# systemctl status private_chef-runsvdir-start.service
● private_chef-runsvdir-start.service - private_chef Runit Process Supervisor
Loaded: loaded (/etc/systemd/system/private_chef-runsvdir-start.service; enabled)
Active: active (running) since Sun 2015-11-15 14:52:13 UTC; 36min ago
Main PID: 2572 (runsvdir)
CGroup: /system.slice/private_chef-runsvdir-start.service
├─2572 runsvdir -P /opt/opscode/service log: ....................................................................................................................................................................................
├─2702 runsv rabbitmq
├─2719 ....
Проверка статуса sv
команда:
# sv status bookshelf
fail: bookshelf: unable to change to service directory: file does not exist
# sv status /opt/opscode/service/bookshelf/
run: /opt/opscode/service/bookshelf/: (pid 6075) 2242s; run: log: (pid 6116) 2241s
Я предполагаю, что в какой-то момент sv
отсутствует параметр пути, который runsvdir
(-P /opt/opscode/service
) был поставлен. Любым способом добавить этот дополнительный каталог в «путь поиска» runit
?
РЕДАКТИРОВАТЬ: экспорт $SVDIR
(export SVDIR=/opt/opscode/service
) помогает мне решить проблему, по крайней мере, для текущего сеанса пользователя. Проблема все еще в том, что sudo
будет игнорировать это, куда бы он ни экспортировался.