是否可以在Hiera中定义两个类之间的依赖关系?假设您有一个安装服务的A类和将配置此服务的B类。在这个例子中,如何在这些类之间创建依赖关系?这样的事情会起作用吗?
---
classes:
- 'B':
require: Class[A]
答案 0 :(得分:1)
你可以在Puppet DSL中做到这一点。制作一个包装其他模块的模块最简单,然后将其包含在Hiera中。
然后,包装器模块可以使用Puppet订购工具,例如require
,其中:
require函数声明一个类,并使其成为周围容器的依赖项。
这方面的一些例子在Puppet文档Relationships and Ordering中。
以下是该文档页面上使用的此包装器模块的两个示例:
使用要求:
class wordpress {
require apache
require mysql
...
}
使用箭头链接:
class apache::ssl {
include site::certificates
# Restart every service in this class if any of our SSL certificates change on disk:
Class['site::certificates'] ~> Class['apache::ssl']
}