虽然没有得到官方的支持,我想在Debian Jessie上运行Chef Server 12(12.3.0)。
修正了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的专家,但是这里有一些debugging信息:
# 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缺less提供的runsvdir ( -P /opt/opscode/service )的path参数。 任何方式来添加这个额外的目录到runit的“searchpath”?
编辑:导出$SVDIR ( export SVDIR=/opt/opscode/service )帮助我解决问题至less在当前用户会话。 问题仍然是, sudo会忽略这一点,无论出口在哪里。