Ansible 迭代由变量设置的清单组中的主机

2023-12-09

我的角色模板中有下一个片段:

upstream portal {
 {% set nodes = groups["my_dev_cluster"] %}
 {% for node in nodes %}
 ...do something with nodes...
 {% endfor %}
}

而且效果很好。

但是当我尝试像这样参数化库存组名称时:

upstream portal {
 {% set nodes = groups["{{cluster_name}}"] %}
 {% for node in nodes %}
 ...do something with nodes...
 {% endfor %}
}

我得到一个异常,例如:

 FAILED! => {"changed": false, "failed": true, "msg": "AnsibleUndefinedVariable: 'dict object' has no attribute '{{cluster_name}}'"}

Here, 集群名称- 是默认部分中定义的简单字符串变量。

是否可以对其进行参数化?

提前致谢!


你不需要{{...}}因为你已经在 jinja 上下文中(在本例中,{% set ... %}堵塞。写吧:

{% set nodes = groups[cluster_name] %}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ansible 迭代由变量设置的清单组中的主机 的相关文章

  • 如何在 Ansible playbook api 中设置“--limit”选项

    我正在编写 python 脚本来运行 ansible playbook 使用 Ansible 2 4 2 0 据我所知有一个选择 limit 这可以限制 Ansible 在特定主机上的运行 例如 这是 etc ansible hosts t
  • 如何在ansible中为变量分配随机数?

    这是一个 ansible 脚本 我希望它能打印出相同的随机数 3 次 相反 它打印出三个随机数 如何将随机数分配给 ansible 中的变量 以便它在整个剧本中固定 name Test random filter hosts localho
  • 从 dict 列表中删除一个项目并分割 stdout_lines

    我试图从字典列表中删除一个项目 即 未找到结果 的项目 validar LPARNAME No results were found LPARNAME server1 server2 server4 LPARNAME server3
  • 获取 Ansible 控制机 IP 地址的最佳方法

    我正在使用 Ansible 和ufw在我的服务器上设置防火墙 作为ufw规则 我希望允许来自 Ansible 控制机的 SSH 但不允许来自其他任何地方 我的问题是 获取控制机本身的 IP 地址以便我可以将其放入规则中的最佳方法是什么 我知
  • ansible 有 yaml 编辑模块吗?

    我需要修改 yaml 文件 施洛德配置 http schleuder2 nadir org documentation v2 2 index html 并且我想从 ansible 剧本中执行此操作 是否有模块可以执行此操作 很难用谷歌搜索这
  • Ansible:shell 脚本输出始终为空

    我试图将 Linux shell 的输出插入到变量中 但由于某种原因 该变量始终为空 这是 Ansible 代码 name Check PHP version shell php v 2 gt dev null awk print 2 ex
  • 根据磁盘可用空间获取节点IP

    我正在尝试编写一个 Ansible 剧本来检查多个服务器上的磁盘空间 到目前为止 这是我的 Ansible 剧本 hosts all become yes tasks name Check freespace shell df h awk
  • Ansible Expect 模块无法匹配字符串/正则表达式脚本问题

    我正在尝试通过 Ansible 在 Vagrant 机器中自动安装脚本 我尝试了很多方法在网络上寻找解决方案 但文档和示例非常薄弱 我试图安装的脚本提示了我试图以编程方式回答的问题Ansible 期望模块 Ansible 任务 名称 运行
  • 无法在守护进程模式下运行 Ansible

    我可以运行 Ansible 像守护进程一样管理我的主机吗 例如 我有时会更改我的剧本 但我不想手动运行 ansible playbook main yml 请不要建议 crontab 有一个特定的点 我不能在生产服务器上使用 crontab
  • 用于下载文件的 S3 模块在 ansible 中不起作用

    这是为从 S3 存储桶 artefact test 下载文件而编写的 ansible 代码 name Download customization artifacts from S3 s3 bucket artefact test obje
  • Ansible 手册:错误! “command”不是 Play 的有效属性[重复]

    这个问题在这里已经有答案了 我只是想写一个基本的剧本 并不断收到下面的错误 尝试了很多东西但仍然无法做到正确 我知道这一定是语法问题 但不知道在哪里 这是我的代码 This playbook runs a basic DF command
  • ansible安装node.js版本6

    要安装 Node 6 x 版本 请执行以下命令 curl sL https deb nodesource com setup 6 x sudo E bash sudo apt get install y nodejs 现在我到底该如何在an
  • Ansible 权限问题

    我正在尝试将当前用户添加到系统中的某个组 然后执行需要该组权限的命令 我的剧本是这样的 name Add this user to RVM group sudo true user state present name vagrant ap
  • 在 Ansible 中检查已安装的 yum 包/rpm 版本并使用它的最佳方法

    我已经在 CentOS 7 上尝试使用 Ansible 2 0 0 2 我试图从已安装的 rpm yum 软件包中获取版本 但在运行脚本时遇到警告消息 安塞布尔脚本 name Get version of RPM shell yum lis
  • 使用 with_items 连接字符串并分配给 Ansible 中的变量

    启动 ec2 实例时 我需要将两个 2 IP 保存到 vars 文件中的变量中 以便稍后在部署期间使用 这就是我保存单个服务器 IP 的方式 name Save server public IP to vars file lineinfil
  • 使用 Ansible 配置 EC2 实例时遇到问题

    我对如何使用 Ansible 启动 EC2 实例感到非常困惑 我正在尝试使用 ec2 py 库存脚本 我不确定应该使用哪一个 因为 Ansible 安装了三个 ansible lib ansible module utils ec2 py
  • 如何配置 Ansible 跳过两个堡垒主机?

    我想编写一个 Ansible 剧本 使用 Ansible 2 7 5 它将在到达目标服务器之前跳过两个主机来执行诸如安装 docker 和 python 等操作 我能够让 Ansible 通过一台主机跳转到server1通过将其添加到我的h
  • 在ansible中合并字典

    我目前正在构建一个使用 ansible 安装 PHP 的角色 并且在合并字典时遇到一些困难 我尝试了多种方法来做到这一点 但我无法让它像我想要的那样工作 A vars file my default values key value my
  • 如何使用 Ansible when 条件在文件中搜索字符串

    我有一个变量中用 n 分隔的搜索字符串列表listofips 我想在文件中搜索该字符串hello csv在我的下面playbook dir 我可能遇到一些语法问题 我不确定 但下面是我尝试过的 set fact listofips 10 0
  • Ansible 无法运行任何命令或 shell

    我在 RPi 上运行任何命令或 shell 时遇到问题 当我使用以下代码时 name Example command ansible builtin command cmd cat etc motd 我收到此错误 Unsupported p

随机推荐

  • 适用于 iOS 的 Google Places API 与 Google Places Web 服务

    我计划有一个应用程序来列出附近的地点UITableView with UISearchController结合自动完成功能来过滤地点结果 我正在尝试使用 Google Places API 我很困惑 因为我不知道应该使用哪个 API Goo
  • 以编程方式禁用和启用 AWS lambda 触发器

    我们是否可以通过编程方式禁用和启用 Lambda 触发器 例如用于计划维护目的 您可以使用以下方法禁用和启用 Lambda 触发器 更新事件源映射 取决于您将如何做 使用 AWS CLI 您可以使用 AWS CLI更新事件源映射命令与 en
  • 有没有办法在使用 CDN 的情况下为 .scss 中引用的图像的 url 添加前缀? [复制]

    这个问题在这里已经有答案了 目前在我的 scss我有文件 grid pic width width grid background transparent url img exemple bg png 0 0 repeat 有没有办法去除
  • 为什么不能控制更新/刷新过程中

    我有一个带有 statusLabel 的 Windows 窗体 C NET 我似乎无法在事件处理程序方法的进程中间进行更新 我的代码看起来像这样 void Process Completed object sender EventArgs
  • 如何在 JBoss 中禁用 HTTP OPTIONS 方法?

    我正在尝试禁用 JBOSS HTTP OPTIONS 方法 在 JBoss 的 web xml 中使用以下语法 我可以禁用除 OPTIONS 之外的所有 http 方法 有没有办法成功禁用http method OPTIONS 单击此处查看
  • 依赖于其他功能的 Specflow 功能是否有效?

    我想写一个验收测试 given the first test has run when I do this new test then this new test passes 这是因为第一个测试将使数据保持有效状态以执行下一个测试 我可以
  • C++ DAL - 返回引用或填充传入的引用

    编辑 1 添加第三个指针语法 感谢 Alex 您更喜欢哪种 DAL 方法以及为什么 Car DAL loadCar int id bool DAL loadCar int id Car car Car DAL loadCar int id
  • Linq 不在数据表上的选择中

    您好 我有 2 个数据表 bannedlist countrylist 两者都包含国家 地区名称列表以及 cc 和国家列中的 cod 我正在尝试执行一个查询 我可以从国家列表表中选择不在禁止列表表中的国家 地区 以便创建第三个表 有任何想法
  • 在 iPhone SDK 上的 UIAlertView 中点击按钮时打开 Settings.app [重复]

    这个问题在这里已经有答案了 可能的重复 从另一个应用程序打开 设置 应用程序 有没有办法在我显示时将用户引导至 Settings appUIAlertView迅速的 此提示提醒用户他的位置服务已关闭 我希望用户在点击我的应用程序中的按钮时打
  • 根据R中的grep结果替换数据值

    我有一个数据框 其中一列的值如下 WIND WINDS强风 etc 其他值中 现在我想将每个包含 WIND 变体的值重命名为 WIND 我知道如何找到需要替换的值 grep WIND df col1 但不知道如何替换这些值 谢谢 您可以使用
  • 扭曲的listenSSL虚拟主机

    目前使用一个非常简单的 TwistedNameVirtualHost加上一些 JSON 配置文件 可以在一个文件中提供真正基本的内容Site目的 Twisted 提供的资源都是 Flask 中构建的 WSGI 对象 我想知道如何用一个来包装
  • 当孩子使用网格列时水平滚动的网格 CSS 容器?

    CODEPEN https codepen io matthewharwood pen ywKNVg 我正在尝试在 Grid CSS 中实现这种布局 问题 我在养育孩子方面遇到了麻烦 elements溢出他们的父母 grid使用时grid
  • Android 中谷歌地图 v2 中的多色折线

    I searched a lot i didn t find any proper solution for it Help and link could be appreciated 也许已经太晚了 但我解决了这个问题并希望将其提供给某些
  • Grails WebFlow 状态名称

    Grails 菜鸟在这里 如何获取 Grails Webflow 状态中的状态名称 我正在使用 Grails WebFlow 和 jQueryMobile 制作移动应用程序的原型 因为它是一个主要由列表组成的移动应用程序 所以我使用如下堆栈
  • BILLING.SUBSCRIPTION.CANCELLED 不会根据用户操作触发?

    我想跟踪有效计费协议的订阅状态 现在我认为 webhook 对此会很方便 我有一个听众BILLING SUBSCRIPTION CANCELLED被描述为 取消计费订阅时会触发此事件 现在 当用户访问他的 PayPal 帐户并取消订阅时 不
  • iOS CoreText通过CTFontManagerRegisterGraphicsFont获取注册字体列表

    我通过以下方式动态注册字体 BOOL application UIApplication application openURL NSURL url sourceApplication NSString sourceApplication
  • 使用 php 包含在 html 文件中

    我在使用一些 php 代码的网站上遇到一些问题 我的网站主要使用html和php 我只是使用 php include 语句 而不是在每个页面的顶部重复大量脚本行 我的网站上有一个本地 WAMP 服务器以及 html 和 php 文件的混合体
  • CGAffineTransform -如何在屏幕中心对齐视频

    我已经能够将 16 9 横向视频的中间居中 裁剪视频 然后创建视频的 9 16 纵向版本 类似于 Appledoes it在照片相册中 唯一的问题是生成的纵向视频未居中于屏幕中间 如下图 如何才能将生成的肖像视频显示在屏幕中央 func c
  • 如何在 GCP BigQuery 中创建分片表

    As we started working on GCP BigQuery our code has to retrieve data from so called sharded table in a dataset This table
  • Ansible 迭代由变量设置的清单组中的主机

    我的角色模板中有下一个片段 upstream portal set nodes groups my dev cluster for node in nodes do something with nodes endfor 而且效果很好 但是