我在我的环境中使用 Puppet 自动配置 Linux 服务器。配置了许多 puppet 模块,它运行良好。允许特定用户 (nagios) 读取某些特定日志是出于某种动机。Nagios 和 NRPE 由相关 puppet 模块安装,该模块还创建了 nagios 用户。创建 nagios 用户后,我希望 puppet 将其添加到名为 的组中users
。
但是当我想到它时,我不知道 Puppet 按照什么顺序加载模块,所以如果它试图在 nagios 模块加载和 nagios 用户创建之前将其添加nagios user
到中users group
,那么就会出现错误,因为用户尚不存在。
我的问题是,例如,如何强制首先加载 Nagios 模块?
提前致谢
答案1
这可以通过诸如“等等”选项来实现require
……
关于关系的官方文档是这里。
链接中的一个例子:
package { 'openssh-server':
ensure => present,
before => File['/etc/ssh/sshd_config'],
}
将确保另一个资源中定义的文件仅在安装/etc/ssh/sshd_config
后才会应用。openssh-server