linux – Puppet:如果puppet进行了更改,如何运行exec

我们通过puppet对一些服务器进行基本管理 – 服务器本身作为集群系统的一部分运行,处理用户帐户等其他方面,并包括检测密钥文件(/ etc / passwd等)变化的监控脚本.如果puppet更新包,它可能会更改触发监视系统的这些密钥文件. (这不是无意的)

监控系统有一个可以手动运行以清除状态的命令,每当木偶应用任何更改时我们都必须执行此操作,当我们开始收到电子邮件时!

我们可以定义一个在post run_stage中运行的exec来运行命令,但认情况下这会在每次puppet运行时触发,然后我们的报告将始终显示为puppet进行的更改,无论是否进行了更改.

有没有办法我们可以设置exec,只有当puppet应用了其他更改时它才会运行?

解决方法

如果exec资源具有专用阶段,则可以通过使其订阅所有其他阶段来实现所需的行为,例如,
exec { "pacify-rkhunter":
    ...
    subscribe   => Stage['pre','main','aux'],refreshonly => true,}

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...