问题标签 [ansible-2.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
926 浏览

ansible-playbook - 在 playbook 中更改主机组时,Ansible 不会重新加载 group_vars

我已经在 ansible 存储库上填写了一个问题,但我想确认它确实是一个错误并且我没有做错任何事情。 https://github.com/ansible/ansible/issues/14945

当主机组在剧本中更改时,似乎不会重新加载 group_vars 中定义的变量。

这是我使用 ansible 2.0.1.0 的剧本

主机中的库存:

为每个主机组执行的部署角色中的任务:

这个变量的值:

inventory/dev/group_vars/all 的内容:

inventory/dev/group_vars/backend 的内容:

inventory/dev/group_vars/backoffice 的内容:

执行我的剧本时,预期的结果是:

但相反,我有:

0 投票
1 回答
745 浏览

hdfs - 如何使用 ansible 执行 hdfs zkfc -formatZK

如何hdfs zkfc -formatZK在 ansible playbook 中执行?我尝试:

这是结果:

0 投票
1 回答
60 浏览

ansible - Ansible:将非托管系统包括到配置中

我正在编写一个 Ansible 剧本,用于设置系统,在某些配置中,某些系统可能由另一个组织提供。一个非常简单的例子:

存货:

  • 应用服务器
  • 一个数据库服务器

Playbook:设置两台服务器,并application.properties使用 db 服务器的 IP、端口和用户/密码将文件添加到应用服务器。

到目前为止工作,但随后一个要求来了,在某些部署中,数据库服务器是由另一个组织提供的,所以我不能将它包含在清单中,因为设置步骤失败,但我仍然想为应用服务器(带有我从其他人那里获得的数据库服务器信息)。

考虑到有 6 种这样的服务器类型,而不仅仅是 2 种(所以不仅仅是 2 种不同的场景,提供的服务器有很多排列),什么是涵盖这两种场景(我自己的数据库服务器和提供的数据库服务器)的最不痛苦的解决方案对我来说,这是我的)。

编辑:更具体地说,我遇到的问题是,如果我在系统不是我的时候使用 vars 而当它是我的系统时使用事实,那么我在编写application.properties.j2模板时会遇到问题,因为事实和 vars 的引用方式不同。如何在模板中使用 var ,但如果未定义 var 则使用事实?

0 投票
1 回答
784 浏览

ansible - Ansible 传递哈希以包含模块

我在传递一些复合数据(如 YAML 映射)作为 ansible 包含模块的输入时遇到问题。

这是我的测试:

测试.yml

test1.yml

这是输出。注意部分:"people": "VARIABLE IS NOT DEFINED!"

0 投票
1 回答
6803 浏览

curl - 使用 Ansible URI 模块使用 PUT 请求写入数据

我只是想把这个 cURL 调用翻译成 ansible playbook。

  • 卷曲调用:

    /li>
  • Ansible 剧本:

    /li>

我试过这个,但服务器收到了 PUT 请愿,但值没有改变。

这是 cURL 过程的详细输出:

任何帮助深表感谢。

提前致谢

0 投票
2 回答
1690 浏览

automation - 如何做 Ansible 条件 include_vars?

我正在尝试include_vars根据以下when条件使用:

我正进入(状态ERROR! Syntax Error while loading YAML.

0 投票
1 回答
479 浏览

ansible - 为什么 ansible 的未定义变量不能算作剧本的错误?

用一个简单的剧本:

我有

并且ansible-playbook的退出代码变为 0。但是为什么呢?为什么呢ok?当任何未定义的变量以这种方式定义时是否正常?

第二个问题:我该如何解决这个问题并得到我的错误?

0 投票
1 回答
11389 浏览

ansible - 带有循环调试打印的ansible寄存器不起作用

我有一个简单的剧本,应该显示我的服务状态。我想查看机器的输出以查看状态是否处于活动状态。所以我使用了调试打印,如下所示:

当我执行此操作时,我会得到很多我不想要的信息以及我在它最后想要的 item.stdout_lines 信息。如何更好地查看我的命令的输出?

0 投票
1 回答
857 浏览

python - 编程ansible:将结果保存到python变量中

我正在使用此代码以编程方式运行 ansible:https ://github.com/jtyr/ansible-run_playbook带有一个简单的剧本,它只是从 Ubuntu 服务器收集事实并将它们打印到屏幕上:

但我真正需要的是简单地将输出保存到 python 变量中,而不是通过模板运行它或输出到屏幕(我实际上将在 Django 应用程序中使用它)。有没有办法做到这一点?

感谢您的阅读。

0 投票
1 回答
3405 浏览

automation - 如何使用 Ansible 注册远程主机的事实?

我想将远程主机的事实注册到 var 中,然后在下一个任务中迭代 var。但我被困在使用主机名 [主机名:IP] 注册事实的第一项任务上。以下是我的代码: