是否可以为Ansible playbook指定来自两个不同库存文件的组?

是否可以为Ansible playbook指定来自两个不同库存文件的组?,ansible,ansible-inventory,Ansible,Ansible Inventory,My playbook/home/user/Ansible/dist/playbooks/test.yml: [regional_clients]组在/home/user/Ansible/webproj/hosts中指定,[web_clients]组在/home/user/Ansible/regions/hosts中指定 有没有办法让上述工作顺利进行?当前,运行playbook将失败,因为默认清单文件/home/user/Ansible/dist/hosts中未定义[regional_clien

My playbook/home/user/Ansible/dist/playbooks/test.yml:

[regional_clients]组在/home/user/Ansible/webproj/hosts中指定,[web_clients]组在/home/user/Ansible/regions/hosts中指定


有没有办法让上述工作顺利进行?当前,运行playbook将失败,因为默认清单文件/home/user/Ansible/dist/hosts中未定义[regional_clients]或[web_clients]。是的,您可以编写一个简单的shell脚本:

#!/bin/sh
cat /home/user/Ansible/webproj/hosts /home/user/Ansible/regions/hosts
并将其称为in-Ansible:

ansible-playbook -i my_script test.yml

然而,在我看来,这个问题是贵公司的问题,而不是技术问题。如果您的环境如此复杂且由不同的方维护,则使用Ansible中的某种配置数据库和动态资源清册来检索数据,而不是用户路径中的单个文件。

在我的剧本中,我想为一个剧本指定/home/user/Ansible/regions/hosts中的组[regional_clients],对于第二个重头戏,我想从/home/user/Ansible/regions/hosts指定组[web_clients]。这是因为库存文件/home/user/Ansible/regions/hosts和/home/user/Ansible/regions/hosts由其他组维护,并且不断变化,否则,我将在默认清单文件/home/user/Ansible/dist/hosts中定义这两个组。
ansible-playbook -i my_script test.yml