如何在Ansible库存之外的主机上运行游戏?

时间:2015-04-03 22:06:03

标签: jenkins ansible ansible-inventory

我们有这3本ansible-playbooks和Jenkins的工作:

  • 网/ deploy_app
  • 应用程序/ deploy_app
  • 分贝/ deploy_app

每个剧本仅在2个节点上运行,网络剧本只有2个主机,web01和web02的库存,app-playbook的库存仅为app01 / app02。

现在我们要构建“no-downtime deploymentments”,这意味着必须在部署db01之前关闭app01上的服务。

当app01甚至不在db01 / deploy_app playbook的Ansible清单中时,如何在Ansible的app01上运行游戏?

1 个答案:

答案 0 :(得分:2)

  

当app01甚至不在db01 / deploy_app playbook的Ansible清单中时,如何在Ansible的app01上运行游戏?

为什么你有多个库存?您应该能够将所有库存合并到一个库存文件中,类似于:

[databases]
db01
db02

[webservers]
web01
web02

[appservers]
app01
app02

然后你只需在你的剧本中指定多个剧本:

- hosts: app01
  tasks: 
    - name: Some task...

- hosts: webservers
  tasks:
    - name: Some other task...