我遇到了一个问题,我无法找到解决方案......
想象一下1个主设备和3个从设备的拓扑结构。
每次更改主节点上的配置文件时,我都需要在所有节点上重新启动服务。 (我知道这很愚蠢,但我没有写应用程序......)
有没有办法在其他3个节点上触发服务重启?
//为了清晰起见而编辑
我的意思是,从相同的食谱/食谱中触发服务重启,而不在其他节点上运行Chef ...
谢谢!
答案 0 :(得分:2)
如果您不想运行chef-client进行服务重启。那么,恕我直言有两种选择,
远程ssh命令执行。 - 执行远程ssh并通过执行资源启动重启命令。
ssh -i < key> < user>@< IP> "< Restart command>"
厨师推送作业 - 直接在从属节点上使用POST API在其他节点上安装厨师推送作业客户端和触发命令作为作业。您可以从master上运行的cookbook中调用push job rest API。因此,只要主服务器上重新启动,您就可以使用notify触发对Push Server的休息调用以启动作业(即重启命令)。