为什么ansible ping模块任务是远程执行类型?
Why ansible ping module task is remote execution type?
Ansible 有两种执行类型:远程、本地
本地执行类型就像从 ansible 服务器调用 REST api 调用并接收 http 响应
在来自ansible服务器的命令运行之后:
ansible 192.168.33.20 -i inventory -u vagrant -m ping -k -vvv
-vvv
选项显示:
ping
包传输到目标服务器(192.168.33.20
)并编译成二进制文件。
ping
然后 在远程 机器(192.168.33.20
)上作为
执行
/usr/bin/python /home/vagrant/.ansible/tmp/ansible-tmp-111111.44.555555/ping
然后 运行s
rm -rf /home/vagrant/.ansible/tmp/ansible-tmp-111111.44.555555/ >/dev/null 2>&1
于 192.168.33.20
但是,ping
命令应该从 192.168.33.20
以外的机器 运行 来测试来自 192.168.33.20
的响应。
为什么ansible ping
模块任务是远程执行类型?
ping package is transferred to target server(192.168.33.20) and compiled into binary.
Ansible 不会将任何东西编译成二进制文件。它传输模块并运行它,没有发生任何转换。
But, ping command is supposed to run from machine other than 192.168.33.20 to test the response from 192.168.33.20.
您将 Ansible 的 ping
模块与 ping
命令混淆了。 ping
模块基本上是一个不执行任何操作的模块,用于确认 Ansible 能够与远程主机通信。它相当于 运行:
ssh remotehost true
它没有做任何事情,它只是returns成功。
Ansible 有两种执行类型:远程、本地
本地执行类型就像从 ansible 服务器调用 REST api 调用并接收 http 响应
在来自ansible服务器的命令运行之后:
ansible 192.168.33.20 -i inventory -u vagrant -m ping -k -vvv
-vvv
选项显示:
ping
包传输到目标服务器(192.168.33.20
)并编译成二进制文件。
ping
然后 在远程 机器(192.168.33.20
)上作为
/usr/bin/python /home/vagrant/.ansible/tmp/ansible-tmp-111111.44.555555/ping
然后 运行s
rm -rf /home/vagrant/.ansible/tmp/ansible-tmp-111111.44.555555/ >/dev/null 2>&1
于 192.168.33.20
但是,ping
命令应该从 192.168.33.20
以外的机器 运行 来测试来自 192.168.33.20
的响应。
为什么ansible ping
模块任务是远程执行类型?
ping package is transferred to target server(192.168.33.20) and compiled into binary.
Ansible 不会将任何东西编译成二进制文件。它传输模块并运行它,没有发生任何转换。
But, ping command is supposed to run from machine other than 192.168.33.20 to test the response from 192.168.33.20.
您将 Ansible 的 ping
模块与 ping
命令混淆了。 ping
模块基本上是一个不执行任何操作的模块,用于确认 Ansible 能够与远程主机通信。它相当于 运行:
ssh remotehost true
它没有做任何事情,它只是returns成功。