我正在使用Hiera和Puppet,我想将相同的参数值传递给多个类而不重复。 现在我已经(在Yaml):
--- class_a::database_server: myoraclebox.example.com class_b::database_server: myoraclebox.example.com
这有效,但我怎么才能指定服务器只有一次,仍然使用Puppet的自动参数查找? (我宁愿不在我的清单中embedded明确的Hiera查找,因为这会将它与Hiera耦合。)
使用&YAML锚点应该可以工作
database_server: &dbserver myoraclebox.example.com class_a::database_server: *dbserver class_b::database_server: *dbserver
使用hiera()
函数做一个查找作为默认值:
class class_a($database_server=hiera('database_server')){ } class class_b($database_server=hiera('database_server')){ }
这使用完整的Hiera机器来为您查找。