puppet客户端如何取消主动更新



runinterval
How often puppet agent applies the client configuration; in seconds. Note that a runinterval of 0 means “run continuously” rather than “never run.” If you want puppet agent to never run, you should start it with the --no-client option. Can be specified as a duration.
Default: 30m 
大致的意思是puppet客户端默认跟服务端同步时间为30分钟,如果runinterval为0的话,代表时刻同步;如果我们想客户端一直不跟服务端主动同步,可以在puppet客户端启动脚本里面增加 --no-client即可,然后重启puppet客户端服务即可。
具体修改方法如下:
vi /etc/init.d/puppet 
找到 [ -n "${PUPPET_SERVER}" ] && PUPPET_OPTS="--server=${PUPPET_SERVER} "这一行,然后在最末尾添加--no-client 
添加后的效果:
[ -n "${PUPPET_SERVER}" ] && PUPPET_OPTS="--server=${PUPPET_SERVER} --no-client"
然后重启客户端puppet,/etc/init.d/puppet restart ,这样客户端就不会主动跟服务端同步了(记得把/etc/puppet/puppet.conf里runinterval注释(⊙o⊙)哦)。

备注:先修改/etc/init.d/puppet文件,再重启puppet服务,最后注释/etc/puppet/puppet.conf里的runinterval.
然后去服务端执行puppet kick -d --host 客户端主机名 即可实现只想推送功能。

我在centos7修改vi /lib/systemd/system/puppet.service

wKioL1fY71WzTfbxAABSPMIGOOc428.png-wh_50

添加--no-client后,重启puppet 会提示运行

wKiom1fY8B-hI27hAAARsFFyNgw774.png-wh_50

按照提示运行即可。

重启puppet客户端,puppet客户端没有再主动更新了