更改角色后更新客户端的Chef/knife命令

ard*_*ell 12 chef-infra

在我使用Chef启动服务器之后,如果我忘了在一个角色中包含一个配方(例如apache2 :: mod_ssl),有没有办法简单地更新客户端而不必删除它并再次"刀编服务器创建"?

更好的是,服务器都注册了我的Chef服务器(Opscode平台),因此理论上他们应该能够在我将角色更改推送到平台后从Opscode接收更新.这可能吗?或者是否可以让我的服务器定期检查Chef服务器是否有变化,可能每10分钟一次?

Emi*_*mil 17

这是2年后,但我希望它能帮助别人:)

在客户机节点(要运行新配方的服务器)上,运行:

sudo chef-client -i 600
Run Code Online (Sandbox Code Playgroud)

" -i 600":以600秒的间隔保持轮询厨师服务器的更改.


Min*_*ark 15

knife ssh SEARCH 'sudo chef-client'
Run Code Online (Sandbox Code Playgroud)

例如:

knife ssh 'role:webserver' 'sudo chef-client'
Run Code Online (Sandbox Code Playgroud)

要么

knife ssh 'name:mynode' 'sudo chef-client'
Run Code Online (Sandbox Code Playgroud)

有关SEARCH选项的更多详细信息,请查看文档.

注意:根据您的设置,您可能需要也可能不需要sudo.


ard*_*ell 7

找到我自己的答案:只需chef-client在服务器上运行即可.