Class puppet nodes类中的继承是否是可接受的替代方案?
在阅读了多个样式指南并尝试在我的节点定义()中不使用继承之后,我想知道在puppet中包含类而不使用继承的常见方法是什么 我一直在尝试以下节点定义,但似乎不起作用:Class puppet nodes类中的继承是否是可接受的替代方案?,class,inheritance,include,puppet,Class,Inheritance,Include,Puppet,在阅读了多个样式指南并尝试在我的节点定义()中不使用继承之后,我想知道在puppet中包含类而不使用继承的常见方法是什么 我一直在尝试以下节点定义,但似乎不起作用: # in module 'baseclass' # baseclass.pp class baseclass { include xclass include yclass include zclass } # servernode01.pp node 'servernode01' { include basecl
# in module 'baseclass'
# baseclass.pp
class baseclass {
include xclass
include yclass
include zclass
}
# servernode01.pp
node 'servernode01' {
include baseclass
}
其中xclass
,yclass
和zclass
是功能性的傀儡类,将它们包含在节点servernode01
中会产生所需的状态(即资源应用于节点)
我的问题是:
baseclass
的节点似乎没有收到xclass
、yclass
和zclass
中定义的资源
我的最终目标是有一个基类来实现我指定的最低要求
include基类
的替代方法是class{'baseclass':}
。如果您想使用参数,您需要后者,并且还必须考虑到您可以多次使用include
,但不能使用类
语法,因为puppet会抱怨重复的类定义。官方puppet文档明确指出,继承应该真正“谨慎”地使用。实际上,他们准确地说出了两种情况:
- 当您想要覆盖父类中定义的资源的参数时
- 如果要从标准参数值的参数类继承
因此,是的,这显然更好,即使有官方的祝福:)所有的优点。在克雷格·邓恩(Craig Dunn)的事实标准中,这一切都相当正式。