我们在启用自动启动(START=yes in /etc/default/puppet)的debian客户端上使用傀儡版本2.7.11。我们使用一个使用FQDN (dummyclient.work-network.pri)的证书连接到傀儡主,它工作得很好。例如,修改后的/etc/default/puppet文件会发送给我们的客户端。
问题是:重新启动后,我们看到dummyclient提出了一个新的证书请求,我们的傀儡主人认为这是一台完全不同的机器。原因之一似乎是我们使用DHCP作为我们的客户端名称和ip地址,并且当puppet-agent启动时网络可能还没有完全存在。(在我们的syslog中,puppet-agent是在NetworkManager提供名称服务器和域名信息之前启动的。)作为进一步的证明,hostname -f在引导过程中也是空的(而hostname -s给出了正确的答案)。
显然,无论系统运行多长时间,运行的傀儡进程都不会更新此信息。(手动启动木偶运行,使用FQDN。)
是否可以延迟傀儡启动的时间,或者在网络信息发生变化时触发傀儡重新启动。(例如,当客户端启动时根本没有网络连接。)
或者,最优的解决方案是在客户端的/etc/hosts文件中硬编码FQDN?(但话又说回来,这应该是我们DHCP服务器的工作,不是吗?)
发布于 2013-02-21 09:18:20
在启动时完全可以更改服务的启动顺序。有关运行级工作方式和如何更改启动脚本运行顺序的信息,请参见www.debian.org。
如果希望在获得新dhcp租约时重新启动木偶,则可以放入cron作业,定期检查/var/lib/ dhcp租约中的新dhcp租约,并在发生更改时重新启动。
https://serverfault.com/questions/480764
复制相似问题