我正在使用ansible来自动执行某些任务。其中一个要求我ssh到服务器A,然后从A到B再从B到B.然后我似乎无法找到任何方法来做到这一点。有什么建议么?
我正在使用ansible来自动执行某些任务。其中一个要求我ssh到服务器A,然后从A到B再从B到B.然后我似乎无法找到任何方法来做到这一点。有什么建议么?
鉴于你不使用Paramiko为ssh(transport = ssh
),Ansible将充分利用您的 ~/.ssh/config
。因此,您可以在ssh配置中全局定义所有连接规则。
如果由于某种原因您希望Ansible不使用您的默认ssh配置但提供单独的配置,您可以在您的 ansible.cfg
:
[ssh_connection]
ssh_args= -F "/path/to/ssh/config/specifically/for/ansible"
在您的ssh配置中,然后设置连接规则。坚持你的榜样:
Host HostA
HostName real-host-name-A.com
Host HostB
HostName real-host-name-B.com
ProxyCommand ssh -q HostA nc %h %p
Host HostC
HostName real-host-name-C.com
ProxyCommand ssh -q HostB nc %h %p