Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chef infra 在Chef中实现继承_Chef Infra_Puppet - Fatal编程技术网

Chef infra 在Chef中实现继承

Chef infra 在Chef中实现继承,chef-infra,puppet,Chef Infra,Puppet,在Puppet中,节点可以有一个继承层次结构,这有利于重用。可以定义包含一组派生节点的基础的公共变量和类。 然而,在Chef中,我找不到类似的构造。到目前为止,我遇到的唯一层次结构是属性 属性可以直接映射到Puppet节点继承吗?公共变量可以通过使用include_属性来定义和重写(Puppet类参数),但是调用其他配方怎么样 我能想到的一个解决方案是在元数据文件中提到依赖项 这是惯例吗 更新:到目前为止,我所做的是使用include_属性和include_recipe创建配方和托管依赖项,然后

在Puppet中,节点可以有一个继承层次结构,这有利于重用。可以定义包含一组派生节点的基础的公共变量和类。 然而,在Chef中,我找不到类似的构造。到目前为止,我遇到的唯一层次结构是属性

属性可以直接映射到Puppet节点继承吗?公共变量可以通过使用include_属性来定义和重写(Puppet类参数),但是调用其他配方怎么样

我能想到的一个解决方案是在元数据文件中提到依赖项

这是惯例吗


更新:到目前为止,我所做的是使用include_属性和include_recipe创建配方和托管依赖项,然后为应该出现的每个配方集合创建角色。这似乎是目前最好的方法,因为库、应用程序、包装器模式对于我的需求来说过于“细化”。

属性可以在许多地方定义,包括和。我认为这是一个概念,在文档的一节中有很好的解释


事实上,在设置节点属性时,这种多样的自由度需要特定基础结构中的一些约束(以避免混淆)。文章中描述了一个想法。也许这会给你一个想法,你可以如何与Chef一起处理这个问题。

这是一本非常好的书,Stephen,尽管它与我所面临的一些特定要求有一点不同。我将用我所采取的方法更新这个问题。我从未见过有人使用
include_attributes
,但是如果out适合你,那就很好了。因此,这可能不是厨师的“标准”用法,但可以随意使用这种方法。