如何创建一个包含子组的 Ansible 组,不包括子组?

Posted

技术标签:

【中文标题】如何创建一个包含子组的 Ansible 组,不包括子组?【英文标题】:How to create an Ansible group with children, excluding a subset group? 【发布时间】:2016-07-06 06:29:06 【问题描述】:

我正在使用 Ansible EC2 Dynamic Inventory 脚本自动生成组。

这会创建 Ansible 组 ec2,它包含我的 AWS 账户中的所有 EC2 主机。

这些主机的子集具有标签KubernetesCluster:kube-acceptance。动态库存脚本创建一个组tag_KubernetesCluster_kube_acceptance

我想构建一个 Ansible 组,包括组 ec2 中的所有主机,但不包括组 tag_KubernetesCluster_kube_acceptance 中的主机。

这可以在库存文件中实现吗?

【问题讨论】:

【参考方案1】:

您真的需要创建这样一个组,还是只想按照您的问题所述在剧本中使用生成的主机?

你的游戏中的主机定义应该是后者:

- hosts: ec2:!tag_KubernetesCluster_kube_acceptance
  tasks: ...

【讨论】:

此解决方案适用于单个剧本。但是,我可能想在多个剧本中使用这个新组,在这种情况下我不想重复表达。

以上是关于如何创建一个包含子组的 Ansible 组,不包括子组?的主要内容,如果未能解决你的问题,请参考以下文章

读取/过滤分发组的活动目录的子组?

访问报告中的子组总和

获取组的所有子组[重复]

正则表达式 c# 获取捕获组的子组

在plsql中构建组子组下拉列表

Groupby 图 - 包括子组名称