我刚从CFEngine开始。我有一个策略服务器和两个客户端(Ubuntu14.04桌面,Ubuntu12.04桌面)。
首先在Ubuntu14.04桌面上创建一个本地策略,并在上面安装CFEngine代理。
此策略移除现有的"telnet“客户端。
当地的政策效果很好。因此,我想在策略服务器上使用策略,然后在5分钟后将其推送给客户端。这不管用。
以下是我在策略服务器上执行的步骤:Step1:在/var/cfengine/目录中创建一个文件remove_packages.cf
bundle agent remove_packages
{
methods:
"telnet" usebundle => package_absent("telnet");
}Step2:/var/cfengine/母文件目录中的 vi promises.cf并添加
body common control
{
bundlesequence => {
remove_packages,Step3:/var/cfengine/母文件目录中的 vi promises.cf并添加
inputs => {
# JF 15/08/2014 remove telnet package
"remove_packages.cf",
};Step4:检查错误
root@ubuntu:/var/cfengine/masterfiles# cf-promises ./promises.cf Step5:等待5分钟,直到它复制到客户端。
在客户身上什么都没有发生..。如你所见,它仍然存在:
root@ubu14client:~# which telnet
/usr/bin/telnet有人能解释一下为什么它不起作用吗?
发布于 2014-08-16 10:10:40
我在另一篇文章中发现这与“时钟倾斜”有关。
我已经为我的服务器设置了正确的时区,并使用进行更新。从那时起一切都好起来了。
https://serverfault.com/questions/387675/cfengine-3-policies-slow-update-to-clients
发布于 2016-02-09 08:06:57
我把你的问题提出来,只是为了把你所做的一步步地仔细地包括进去。我想我应该提到您可以采取的其余调试步骤,这些步骤可能会更容易(更直接)地向您展示什么是错误的,而不仅仅是在谷歌上搜索:
步骤6:在引导的主机上运行更新策略以获取更改的策略文件。
cf-agent -f update.cf如果您愿意,可以在详细的模式下运行它(颜色是为了便于阅读):
cf-agent -f update.cf -v -C如果更新策略刚刚运行,则可能需要使用-K覆盖时间锁。
cf-agent -f update.cf -v -C -K步骤7:在引导的主机上以详细模式运行代理(只是默认的promises.cf,而不是更新策略)
cf-agent ## or...
cf-agent -IC ## for "Inform" mode, with color output, or...
cf-agent -C -v ## verbose mode, color output, or...
cf-agent -C -v -K ## Evaluate all promises even if agent just ran.详细的输出可以非常详细,但是学习筛选是很好的。通过在详细模式下运行,您几乎总是可以找到诊断/调试问题所需的一切。
https://stackoverflow.com/questions/25332759
复制相似问题