首页 文章

多个反向ssh以使用Ansible提供Vagrant

提问于
浏览
1

我必须使用Ansible在不同的物理计算机(OS X,Win,Ubuntu)上安装一堆开发流氓盒 . 只要所有ansible playbooks / roles / templates都统一(prod,dev)并存储在git中,使用ansible-pull并处理存储真实密码的prod配置和保险库不是一种选择 . 因此,我们的想法是让每个vagrantbox创建一个反向ssh隧道到某个服务器,其中ansible-playbook将应用于一系列端口 . 问题是:如何从vagrantbox中选择一个免费端口,这样我就不必对开发人员创建的每个VM进行硬编码?另一个问题:是否有其他不那么复杂的方法来配置在不同操作系统上工作的流浪汉?

1 回答

  • 1

    我发现如果将0设置为端口号,ssh会自动选择一个空闲端口 . 所以在我的vagrant上运行ssh -N -f -R 0:localhost:22 user @ middle-server在中间服务器上 Build 连接,将localhost:port-picked重定向到vagrant:22,然后我可以应用ansible-playbook中间服务器上的一系列端口,无需将剧本复制到流浪汉机器上 .

相关问题