Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vagrant 对主机组运行Ansible_Vagrant_Ansible_Ansible Inventory - Fatal编程技术网

Vagrant 对主机组运行Ansible

Vagrant 对主机组运行Ansible,vagrant,ansible,ansible-inventory,Vagrant,Ansible,Ansible Inventory,当我尝试运行这个Ansible命令-Ansible testserver-m ping时,它工作得很好,但是当我尝试这个命令-Ansible webserver-m ping时,我得到以下错误-错误!指定的主机选项与任何主机不匹配 我的主机文件如下所示- [webservers] testserver ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222 有什么问题吗?为什么ansible可以识别相关主机而不是主机组 我已尝试更改该文件,以确保ans

当我尝试运行这个Ansible命令-
Ansible testserver-m ping
时,它工作得很好,但是当我尝试这个命令-
Ansible webserver-m ping
时,我得到以下错误-
错误!指定的主机选项与任何主机不匹配

我的主机文件如下所示-

[webservers]
testserver ansible_ssh_host=127.0.0.1 ansible_ssh_port=2222
有什么问题吗?为什么ansible可以识别相关主机而不是主机组

我已尝试更改该文件,以确保ansible专门从该文件中读取,并确保确实如此,因此这不是从我不知道的另一个文件中读取配置的问题

我也尝试过使用中指定的解决方案,但使用不同的解决方案似乎是一个不同的问题

编辑-添加了我的anistable.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

我想你是在和流浪汉一起工作,你需要这样做:

ansible -i your-inventory-file webservers -m ping -u vagrant -k
为什么您的ping以前失败:

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

希望这能帮助你。

谢谢你的提示,但这并不能解决我的问题。正如我在问题中所说的,我确保我指向了正确的清单文件(我尝试添加-I标志,但命令仍然失败)。在默认的ansible.cfg文件中声明了流浪用户,我将把它添加到问题中。无论如何,这似乎不是问题,因为我可以使用ansible通过ssh连接到服务器,只是在使用组名时不行。