Ansible 是否可以在“中运行剧本?”;拉动模式;?

Ansible 是否可以在“中运行剧本?”;拉动模式;?,ansible,ansible-playbook,Ansible,Ansible Playbook,我有在主主机上启动并在远程主机上运行特定操作的剧本。这是一种“推送”模式-活动由主主机启动 我的几位主持人在某个特定的时间出现故障,在这种状态下显然无法运行剧本。这导致主机是最新的,而其他主机则不是 为了解决这个问题,我可以在主主机上定期运行playbook(例如通过cron),但这并不是特别有效 Ansible中是否有一种内置方式来逆转流程,即从远程主机启动主机上可用的剧本,并在该远程主机上运行 我可以想象远程主机可以通过ssh连接到主机(例如在启动时),然后以主机作为参数(或者类似的想法)触

我有在主主机上启动并在远程主机上运行特定操作的剧本。这是一种“推送”模式-活动由主主机启动

我的几位主持人在某个特定的时间出现故障,在这种状态下显然无法运行剧本。这导致主机是最新的,而其他主机则不是

为了解决这个问题,我可以在主主机上定期运行playbook(例如通过
cron
),但这并不是特别有效

Ansible中是否有一种内置方式来逆转流程,即从远程主机启动主机上可用的剧本,并在该远程主机上运行


我可以想象远程主机可以通过ssh连接到主机(例如在启动时),然后以主机作为参数(或者类似的想法)触发playbook但是我更愿意使用Ansible功能,而不是重新设计它。

有一个脚本名为,它逆转了Ansible的默认推送架构。Ansible开发人员也提供了一个解决方案。

Ansible pull模式的使用非常简单和直接,此示例可能会帮助您:

ansible-pull -d /root/playbooks -i 'localhost,' -U git@bitbucket.org:arbabnazar/pull-test.git --accept-host-key
选项详细信息:

1. --accept-host-key: adds the hostkey for the repo url if not already added
 2. -U: URL of the playbook repository
 3. -d: directory to checkout repository to
 4. –i localhost,: This option indicates the inventory that needs to be considered. 
                   Since we're only concerned about one host, we use -i localhost,.
有关详细信息,请参阅此