远程主机上的ansible-pull

时间:2019-06-26 11:03:27

标签: ansible ansible-pull

我想在远程主机上运行该剧本,该剧本位于github中。因此,我遵循了此blog并分叉了仓库https://github.com/vincesesto/ansible-pull-example

在仓库中,我已将hosts文件修改为服务器IP。运行ansible-pull

veeru@carb0n:~/ansible-example$ ansible-pull -U https://github.com/veerendra2/ansible-pull-example -i hosts
Starting Ansible Pull at 2019-06-26 16:26:30
/usr/local/bin/ansible-pull -U https://github.com/veerendra2/ansible-pull-example -i hosts
 [WARNING]: Could not match supplied host pattern, ignoring: carb0n
ERROR! Specified hosts and/or --limit does not match any hosts

即使我指定了carb0n参数,也不确定为什么要选择当前服务器名称-i hosts

这是我的hosts文件

[hydrogen]
10.250.30.11

local.yml

---
- hosts: all

  tasks:
  - name: install example application
    copy:
      src: ansible_test_app
      dest: /tmp/
      owner: root
      group: root

我已将local.yml更改为hydrogen.yml,但仍然遇到相同的错误。

1 个答案:

答案 0 :(得分:0)

  

即使我指定了-i hosts参数,也不确定为什么选择当前服务器名称carb0n。

可以,因为可靠的 pull 设计为始终针对当前主机运行。如果要在远程服务器上运行,则应该使用ansibleansible-playbook,然后您对主机列表和连接机制的说明就会变得有意义再次。

使用ansible-pull用于无法或非常不希望某些东西连接到托管主机的情况。这可能是由于防火墙,安全策略或多种原因所致。但是,对于托管主机本身可以连接的内容,策略通常没有那么严格,这就是为什么将配置拖到主机上变得更容易的原因。