首页 > 解决方案 > Ansible:通过堡垒主机从本地主机执行剧本

问题描述

我是 ansible 的新手

我们正在通过 ansible 进行部署,并为部署配置了堡垒主机。

我正在使用的当前方法是在堡垒主机中克隆 ansible repo 并从该文件夹运行命令

我的问题是可以通过堡垒通过本地机器运行ansible代码吗?

(基本上,避免堡垒主机中的回购)

标签: ansible

解决方案


假设您要配置几个 VM 172.20.0.10,并172.20.0.11在您的开发环境中通过您的172.20.0.1堡垒。您的库存看起来有点像这样

[development]
172.20.0.10
172.20.0.11

然后你可以编辑你的~/.ssh/config并添加

Host bastion
    Hostname 172.20.0.1
    User youruser

Host 172.20.*
    ProxyJump bastion
    User youruser

然后你可以测试一个ssh 172.20.0.10应该让你进入你的第一个虚拟机。如果它适用于 SSH,那么 Ansible 应该也能正常工作。

请注意,您可以运行 ansible -vvv(或者是另外一个v,不确定 atm),您将看到 Ansible 正在运行的 SSH 命令。

注意 2,ProxyJump 需要最近的 OpenSSH,如果我没记错的话至少 6.7


推荐阅读