soh*_*ahi 12 python networking portforwarding ansible ansible-playbook
我有多个主机的主机库存,每个主机都有端口转发,主机文件是:
[all]
10.80.238.11:20003
10.80.238.11:20001
10.80.238.11:20007
10.80.238.11:20009
Run Code Online (Sandbox Code Playgroud)
我试图用剧本来ping它们,但是在这种情况下总是从第一次输入获得响应而10.80.238.11:20003不是来自其他人.身份验证已经到位,无论我移动到第一个位置的主机我都得到了响应而不是其他人,我的剧本是:
---
- hosts: all
remote_user: root
gather_facts: no
tasks:
- name: test connection
ping:
Run Code Online (Sandbox Code Playgroud)
知道怎么解决这个???
leu*_*cos 23
我想您正在进行的端口转发是针对SSH的.
所以你必须告诉ansible要连接哪个ssh端口.问题是所有主机都具有相同的IP.所以你必须使用主机名,所以Ansible可以区分它们.
假设您将具有SSH端口转发的主机2000X称为as hostX,然后使用正确的语法指定ssh端口以及主机IP:
host3 ansible_ssh_port=20003 ansible_ssh_host=10.80.238.11
host1 ansible_ssh_port=20001 ansible_ssh_host=10.80.238.11
host7 ansible_ssh_port=20007 ansible_ssh_host=10.80.238.11
host9 ansible_ssh_port=20009 ansible_ssh_host=10.80.238.11
Run Code Online (Sandbox Code Playgroud)
然后你可以发出:
ansible host3 -m ping
Run Code Online (Sandbox Code Playgroud)
甚至 :
ansible all -m ping
Run Code Online (Sandbox Code Playgroud)
请注意,您不应创建all组,因为Ansible会自动创建它.
| 归档时间: |
|
| 查看次数: |
7047 次 |
| 最近记录: |