Pra*_*tal 5 chef-infra chef-recipe
是厨师的新手,尝试各种选择.如果用例是将多个节点添加到特定角色,那么最简单的方法是什么?
对于单个节点,我将从chefdk(工作站)执行以下命令.
knife node run_list add <host-name1> "role[httpd-role]" (已经创建并上传了食谱到chef-server,并结合了一些食谱来创建角色'httpd-role').
假设我有许多主机名,在上面的场景中,将上述角色添加到所有节点的最简单方法是什么.
在本练习结束时,我想将角色'httpd-role'添加到所有节点,并在所有节点上执行'sudo chef-client'时,我希望获取所有最新策略并将其安装在节点.
提前致谢
Ste*_*ing 10
没有内置的API端点或knife子命令来向多个节点添加角色.
但是,您可以使用knife exec添加这样做:
knife exec -E 'nodes.find("chef_environment:dev") {|n| puts n.run_list << "role[base]" unless n.run_list.include?("role[base]"); n.save }'
Run Code Online (Sandbox Code Playgroud)
该示例按环境过滤dev并添加base角色.您还可以筛选某个节点名称(使用name:*)
(例子来自dougireton.com)
| 归档时间: |
|
| 查看次数: |
3685 次 |
| 最近记录: |