深入探索Chef:资源修改、插件创建与高级食谱编写
1. 资源修改
在Chef中, resources 方法可用于检索给定资源。例如,我们可以修改 execute 资源的命令:
resources("execute[Force sync hardware clock with system clock]").
command "hwclock --systohc -D"
这种资源修改发生在编译阶段,只有在Chef评估完整个食谱后,才会执行编译阶段构建的所有资源。需要注意的是,如果不想修改现有食谱,可以采用这种方式修改那些无法通过属性配置的部分,但这类似于在自己的源文件中重新打开Ruby类进行猴子补丁,可能会导致代码脆弱,因为代码依赖于其他代码的实现细节而非公共接口(在Chef食谱中,公共接口是其属性)。为了便于后续查找和调试,应将此类食谱修改放在单独的位置。
2. 创建自定义Ohai插件
Ohai是Chef客户端用于了解节点环境信息的工具,在Chef客户端运行期间,Ohai会将有关节点的所有信息(如操作系统、硬件等)填充到节点对象中。我们可以编写自定义Ohai插件来查询节点环境的其他属性。
2.1 准备工作
- 确保节点上安装了
iptables。 - 确保有
chef-client食谱可用:
1. 将chef-client
超级会员免费看
订阅专栏 解锁全文
17

被折叠的 条评论
为什么被折叠?



