在Puppet中,Ansible的delegate_to相当于什么

时间:2015-04-27 19:56:28

标签: puppet ansible

使用Ansible配置器时,delegate_to:ip_address可用于在最初调用ansible(主机)而不是guest虚拟机的机器上执行操作。

使用Puppet时,类似的等同物是什么?

2 个答案:

答案 0 :(得分:2)

清单中的函数在puppet master上执行(如果使用代理)。资源由节点上的代理程序评估。请注意,这是分阶段发生的,因此在编译清单时会调用函数,并且在编译的目录发送到代理之后资源会发生。目录缓存还可以防止在调用puppet master时调用函数。

答案 1 :(得分:2)

Puppet实现了一个客户端/服务器范例(Puppet术语中的agent / master)。我不确定这是否能干净地映射到Ansible的客人/主持人。

尽管如此,Puppet DSL功能在目录构建期间在主服务器上运行。您可以相对轻松地编写自定义DSL函数,并且可以通过内置的generate()函数运行任意命令(在相关用户的功能范围内)。

此外,如果主服务器管理自己(这很常见),那么您可以使用导出的资源在构建任何节点的目录期间定义资源,以便以后收集并应用到主服务器。

但是,Puppet没有提供任何方法来使代码在主服务器上运行,作为将代码应用于其他节点的代理程序的一部分。