深入探索Ohai插件开发与属性管理
1. Ohai简介与属性收集
1.1 Ohai版本要求
Ohai 7.0及更高版本于2014年4月发布,并且包含在Chef 11.20.0及后续版本中。Ohai 7引入了新的DSL来定义插件,取代了之前版本的DSL。
1.2 Ohai属性收集
当ohai运行时,它会遍历所有已知的插件,构建描述底层节点的属性集合,然后将这些属性传递给chef-client进程。由于这些属性代表的是节点本身的信息,而非正在执行的食谱信息,Chef需要确保在Chef运行过程中这些属性不会被更改。为了保证这一点,Chef为这些属性分配了自动优先级。
1.3 Chef属性优先级
在Chef中,属性的定义位置和定义级别决定了它是否优先于在食谱、角色、环境等中定义的同名属性。以下是属性优先级从低到高的顺序列表:
1. 位于食谱属性文件中的默认属性(优先级最低)
2. 位于食谱中的默认属性
3. 位于环境中的默认属性
4. 位于角色中的默认属性
5. 位于食谱属性文件中的强制默认属性
6. 位于食谱中的强制默认属性
7. 位于食谱属性文件中的普通属性
8. 位于食谱中的普通属性
9. 位于食谱属性文件中的覆盖属性
10. 位于食谱中的覆盖属性
11. 位于角色中的覆盖属性
12. 位于环境中的覆盖属性
13. 位于食谱属性文件中的强制覆盖属性
14. 位于食谱中的强制覆盖属性
15. 在chef-client运行开始时由Ohai识别的自动属性(优先级最高)
超级会员免费看
订阅专栏 解锁全文
9

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



