Ansible inventory:如何按端口识别主机

Ansible inventory:如何按端口识别主机,ansible,ansible-2.x,nat,ansible-inventory,Ansible,Ansible 2.x,Nat,Ansible Inventory,我设置了2台服务器用于测试,它们位于NAT网络后面。所以我为它们两个配置了端口转发到SSH端口 我的库存文件如下所示: [webservers] example.com:12021 example.com:12121 [webservers:vars] ansible_user=root ansible_ssh_private_key_file=~/test/keys/id_ed25519 但Ansible仅识别其中一个,以列表中的第一个为准。我在这两个主机上运行ansible playbo

我设置了2台服务器用于测试,它们位于NAT网络后面。所以我为它们两个配置了端口转发到SSH端口

我的库存文件如下所示:

[webservers]
example.com:12021
example.com:12121

[webservers:vars]
ansible_user=root
ansible_ssh_private_key_file=~/test/keys/id_ed25519
但Ansible仅识别其中一个,以列表中的第一个为准。我在这两个主机上运行ansible playbook命令的方法是更改主机列表中的顺序,并运行playbook两次

那么,有没有办法通过端口号而不是主机名来识别主机


提前感谢。

使用您喜欢的任何标签:

[webservers]
server1 ansible_host=example.com ansible_port=12021
server2 ansible_host=example.com ansible_port=12121

它起作用了,但有一点小小的变化:端口必须显式地用ansible_端口参数设置,而不是在ansible_主机部分中设置。接受编辑,以便我可以将答案设置为已接受,因为答案的当前版本不起作用。非常感谢你!: