在Ansible的清单文件中,即使指定了不同的端口但是相同的主机,也只会运行一次处理

据说是在环境中处理好,并为它们分配不同的主机名。

这是预期的行为,请确保清单中的每个主机都指定了不同的主机名。您应该在主机清单中为每个虚拟机命名不同的名称,并使用ansible_ssh_host=127.0.0.1。

在清单中不能为同一主机指定两个不同的端口 · Issue #8306 · ansible/ansible

库存文件的示例

创建多个在同一主机上但端口不同的「同一主机不同端口」组。

[group1]
localhost

[group1:vars]
ansible_port=2221

[group2]
localhost

[group2:vars]
ansible_port=2222

运动示范

尽管尝试列出所有的主机,却只有一个localhost显示出来。

$ ansible -i this_inventory_file.txt all --list-hosts
  hosts (1):
    localhost

 https://github.com/ansible/ansible/issues/8306

实际上运行模块时,似乎只有一边在进行处理。

$ ansible -i this_inventory_file.txt all -m 'raw' -a 'echo ok'

localhost | SUCCESS | rc=0 >>
ok

处理

在`~/.ssh/config`文件中为主机指定一个名称,以便进行名称解析。

在Docker中给本地主机上的SSH服务器添加主机名以进行访问-Qiita

概要

    Ansible closed issue | Can not list multiple hosts have different ports on a same hostname

环境

    ansible 2.6.1

招募聊天组成员

如果有任何问题、烦恼或需要咨询的事情,请随时使用LINE开放聊天室。

 

推特

 

bannerAds