如何让傀儡在目录运行结束时启动所有服务?

特别是从零开始build立一个全新的服务器时,只要所有的依赖关系都满足,puppet往往会启动相关的服务。 这有时会导致服务在启​​动时不必要的太早,而其他软件包(不依赖于服务)的设置仍在运行。

是否有任何单行定义或配方会自动使所有服务在整个目录运行结束时开始/刷新? 我试图弄清楚是否可以利用运行阶段 ,但是按照我的理解,这要求所有服务定义都明确定义为“最后”阶段。


更新1:我的问题的一些背景。 木偶,在一个节点的初始设置,工作相当密集,从而保留一个相当小的虚拟机(在我的情况下,开发计算机上的stream浪者)的资源。 当安装阶段发现一些服务(在我的情况下是后台工作人员)准备就绪时,Puppet启动它们,工作人员开始从队列中接收工作。 这个工作负载减缓了仍在继续的Puppet节点设置过程以及Puppet减慢了工作人员,直到整个设置完成并且该框处于稳定状态。

这就是为什么我开始认为让Puppet在节点上的所有服务开始之前让初始设置工作到最后,为什么我想知道是否有任何简单的方法来使用Puppet来做到这一点。

一个方法来完成这个是

1有如上所述的订阅。

2使用舞台元数据http://docs.puppetlabs.com/references/latest/metaparameter.html#stage

您可以将其作为默认值分配给服务资源types

服务{stage => last}

如果你在nodes.pp中定义了它,它将应用于所有的节点,或者你可以为每个节点定义它。

我会build议不要全球重启。 相反,使用木偶依赖。

就像是:

service { 'first': ensure => running, enable => true, } service { 'second': ensure => running, enable => true, subscribe => Service['first'] } 

你没有。

这完全不是傀儡应该做的事情,虽然你可能想出一个办法,但这根本不是一个好主意。 如果所有你想达到的是服务不应该减慢傀儡(我也发现相当落后,我更喜欢反过来),为什么不教你的服务,让轻松,如果傀儡运行,而他们得到开始了吗?