心海恋歌 发表于 2015-11-26 15:09:12

Puppet有条件的执行Exec

notify、subscribe以及refreshonly
  在多个资源与Exec类型资源依赖时,notify、subscribe以及refreshonly就很常用了。
  这种情况多见于配置文件更新、防火墙配置调整等等,基本上是配置一类的,像Nagios这类监控系统也是可以这么操作(监控配置调整必须要重启daemon啊,麻烦)。

onlyif
  onlyif只会使Exec在返回0的时候才会执行,常用的命令是test命令。
  如果直接输入命令返回0但是Exec还是执行时,不妨加入test看看,像我这一条:

    onlyif    =>"grep 'dport 80 -j ACCEPT' /etc/sysconfig/iptables | wc -l",就是无效的,虽然按照其格式返回了,于是后来修改成这样:

    onlyif    =>"test `grep 'dport 80 -j ACCEPT' /etc/sysconfig/iptables | wc -l` -eq 0",于是就OK了,很奇怪


  
页: [1]
查看完整版本: Puppet有条件的执行Exec