Ansible失败,“跳过:没有匹配的主机”

时间:2020-03-24 03:31:17

标签: ansible

我尝试使用ansible-pull和sync模块将文件从远程服务器同步到本地服务器。我使用ansible-pull失败,并显示“正在跳过:没有主机匹配”,但是当我将剧本文件复制到本地服务器并作为ansible-playbook运行时,它可以工作。

我的主机设置

localhost ansible_connection=local

[sync_server]
sync_1 ansible_host=11.22.33.44

剧本文件

---
 - name: Sync Test
    hosts: sync_server
    tasks:

      - name: Start Sync
        synchronize:
          mode: pull
          src: /home/sourcefiles
          dest: /home/syncfiles/
  • 可用版本2.5.1
  • python版本2.7.17
  • 同步服务器和客户端操作系统ubuntu 18.04

1 个答案:

答案 0 :(得分:0)

没有更多细节(值得注意的是,您实际上正在执行的命令,或者至少是一个没有实际VCS存储库的经过修改的版本),看来您可能没有使用主机/清单文件来调用您的剧本指定,否则您的库存可能无法正确解析。

您可以运行ansible-inventory --graph来查看已通过此清单“检测到”的主机的列表。您还应该检查ansible-config dump | grep DEFAULT_HOST_LIST,以查看是否要指定库存路径。

如果问题所在是 ,则应尝试以下操作之一:

  1. (至少)使用以下几行来配置ansible.cfg:
[defaults]
inventory = hosts
  1. 尝试使用ansible-pull开关(可以缩写为--inventory-i,后跟清单文件的路径,例如:ansible-pull --inventory hosts --url http://example.org/my/vcs.git playbook.yml