1

当我尝试运行这个 Ansible 命令时 -ansible testserver -m ping它工作得很好,但是当我尝试这个命令时 -ansible webservers -m ping我收到以下错误 - ERROR! Specified hosts options do not match any hosts

我的主机文件如下所示 -

[webservers]
testserver ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222

可能是什么问题呢?为什么ansible可以识别出问题的主机而不是主机组?

我尝试更改文件以确保 ansible 正在专门从该文件中读取,并确保是这种情况,因此这不是从我不知道的另一个文件中读取配置的问题。

我也尝试过使用为什么 Ansible 跳过主机组中指定的解决方案并且什么都不做,但使用不同的解决方案似乎是一个不同的问题。

编辑 - 添加了我的 anisble.cfg 文件,以指出我已经完成了所有 vagrant 特定的配置。

[defaults]
inventory = ./ansible_hosts
roles_path = ./ansible_roles
remote_user = vagrant
private_key_file = .vagrant/machine/default/virtualbox/private_key
host_key_checking = False
4

1 回答 1

1

我认为您正在与 vagrant 一起工作,您需要像这样 ping:

ansible -i your-inventory-file webservers -m ping -u vagrant -k

为什么您的 ping 之前失败:

  • ansible 尝试使用本地登录用户连接到 vagrant 机器,但它在 vagrant 机器上不存在
  • 它还需要用户的密码,vagrant这也是vagrant

希望对您有所帮助。

于 2016-05-13T09:21:32.940 回答