Chef infra 在chef运行期间,node与node.default有何不同?
我注意到,如果在cookbooks中使用Chef infra 在chef运行期间,node与node.default有何不同?,chef-infra,configuration-management,Chef Infra,Configuration Management,我注意到,如果在cookbooks中使用node.default,则环境中的属性不会得到应用(而是cookbook属性得到应用)。但是,如果改用节点,则会应用环境中更改的属性;为什么?我认为节点和节点。默认值是同一个?节点属性优先级可能会混淆。一旦你读了几遍,这份文件确实会有所帮助 我的忠告如下: 在烹饪书的属性文件中设置默认属性。不要因为在食谱中这样做而混淆自己 通过设置“普通”属性覆盖其他烹饪书的属性,然后在烹饪书的属性文件中再次执行此操作 在运行时使用环境或角色属性覆盖cookbooks
node.default
,则环境中的属性不会得到应用(而是cookbook属性得到应用)。但是,如果改用节点
,则会应用环境中更改的属性;为什么?我认为节点
和节点。默认值
是同一个?节点属性优先级可能会混淆。一旦你读了几遍,这份文件确实会有所帮助
我的忠告如下:
这里的目标是一致性节点属性优先级可能会令人困惑。一旦你读了几遍,这份文件确实会有所帮助 我的忠告如下:
这里的目标是一致性
节点
为您提供整个节点对象的视图<代码>节点。默认值仅告诉您在默认值
级别设置了哪些值。因此,您永远不应该从节点进行读取。默认值
,因为您将明确忽略所有更高的优先级。也就是说,您的覆盖
将不起作用<代码>节点。默认值允许您在节点上设置默认值。节点
提供整个节点对象的视图<代码>节点。默认值仅告诉您在默认值
级别设置了哪些值。因此,您永远不应该从节点进行读取。默认值
,因为您将明确忽略所有更高的优先级。也就是说,您的覆盖
将不起作用<代码>节点。默认值允许您在节点上设置默认值。@josten Oh,抱歉。是的,在Chef 11中更改了语法。以下链接提供了更多详细信息:。简而言之,“节点[a]”用于读取保存在Chef节点对象中的现有值,“节点.默认值[a]”用于设置值。@josten Oh,抱歉。是的,在Chef 11中更改了语法。以下链接提供了更多详细信息:。简而言之,“节点[a]”用于读取保存在Chef节点对象中的现有值,“节点.默认值[a]”用于设置值。