问题标签 [ansible-inventory]

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 回答
4303 浏览

ansible - ansible将主机添加到多个组

我不确定以下是否可以通过 ansible 实现。我有如下主机列表:注意:主机可以跨组重复

地区:美国
舞台:QA
主持人:Host1
地区:美国
舞台:UAT
主持人:Host2
地区:伦敦
舞台:QA
主持人:Host3
地区:伦敦
舞台:UAT
主持人:Host1

现在我可能想在美国组的所有主机上运行某些任务。或者我可能想在我们的地区运行主机并作为 qa 上台。或者我可能想运行属于 QA 组的所有主机。那么我该如何实现呢?

0 投票
1 回答
654 浏览

amazon-web-services - 连接 AWS 时的 Ansible 动态清单

我已经下载了 ec2.py 和 ec2.ini 文件并将它们放在

我已将 ansible.cfg 更改为

我将环境变量设置为

现在当我运行 ansible -m ping 所有我得到

而不是 ping 我帐户中的所有实例

当我运行 ./ec2.py --list 我得到

我在 aws 中的所有实例都在运行

0 投票
1 回答
418 浏览

ansible - ansible group_vars 与库存文件相邻

在 ansible 2.1.1.0 上

给定一个结构

group_vars 为

hosts.ini 为

main.yml 为

正在运行

为什么 myconfig 没有加载?

这个问题这个链接看来,这是推荐的结构。那么为什么播放不从指定的库存文件中加载相邻的 group_vars 呢?

0 投票
6 回答
192788 浏览

ansible - 在 Ansible playbook 中访问库存主机变量

在 Ansible 2.1 中,我有一个角色被需要访问主机文件变量的剧本调用。关于如何访问它的任何想法?

我正在尝试访问以下库存文件部分ansible_ssh_host中的 :test1host

我尝试通过以下方式访问该角色:

我收到此错误:

0 投票
1 回答
2831 浏览

ansible - 带有 host_vars 的 Ansible EC2 动态清单

我是 Ansible 动态库存的新手。

我有一本剧本: hosts: tag_Name_abc

运行此剧本可以在标记的 EC2 实例上正确执行所需的操作。当我尝试使用时,host_vars我得到fatal: FAILED! => {"changed": false, "failed": true, "msg": "AnsibleUndefinedVariable: 'test_var' is undefined"}

host_vars/tag_Name_abcplaybook 文件目录下有一个文件files test_var: test_value,但它没有获取变量。

启动剧本ansible-playbook -i ec2.py myplaybook.yml

任何建议都会很棒。谢谢!

0 投票
1 回答
554 浏览

ansible - 具有本地操作的 Ansible 组变量评估

我有一个 Ansible 剧本,其中包含用于创建一些 Azure 云资源的角色。组变量用于设置创建这些资源的参数。库存文件包含多个组,这些组引用该播放作为后代节点。

问题在于,由于运行云操作的目标是 localhost,所有组变量都会立即被拾取。这是库存:

该剧本包含一个引用要运行的实际角色的 azure_infrastructure 剧本。

发生的情况是该角色针对 localhost 运行了两次,但每次都加载了来自 cloud_instance_a 和 cloud_instance_b 的组变量。我希望它运行两次,但第一次加载 cloud_instance_a 变量,第二次加载 cloud_instance_b 变量。

有没有办法做到这一点?本质上,我正在为 localhost 寻找一个伪主机,让它认为这些是不同的目标。我能够解决此问题的唯一方法是创建两个不同的库存。

0 投票
1 回答
321 浏览

ansible - Ansible:想用 instance-id 映射动态主机

我的代码: http: //pastebin.com/jzrYTR2u

我想要实现的目标:我的脚本应该动态获取具有特定标签的主机,并在每个主机上一一执行上述任务。目前,我正在从 elb_facts 模块中获取实例 ID。

到目前为止我所取得的成就:我的脚本将从 elb 中取出第一个实例,将执行部署任务,然后添加回 elb。hosts 文件当前使用 IP 进行硬编码

0 投票
1 回答
1995 浏览

amazon-web-services - Ansible EC2 动态清单 - 包含连字符的标签

ansible我正在尝试在已标记为Name = foo-bar(注意连字符)的主机上运行临时命令。当我运行时:

ansible tag_Name_foo_bar -i ec2.py -m ping

我得到:No hosts matched

但是,有这样的主人。如果我对使用不包含连字符的名称标记的主机运行相同的命令,它可以正常工作,例如对于标记为 的主机,Name = foobar以下工作:

ansible tag_Name_foobar -i ec2.py -m ping

H

0 投票
3 回答
49195 浏览

ansible - 是否可以在 YAML 中编写 Ansible 主机/库存文件?

在最佳实践页面中,有一个hosts.yml用于 hosts 文件的示例:

基于 YAML 的主机文件

然而,在文档中,我只能找到用于编写主机文件的 INI 语法。

YAML 中清单文件的语法是什么?

0 投票
1 回答
257 浏览

ansible - 运行 Ansible playbook 时在 Ec2.py 中刷新 ElastiCache 时出错

在过去的几天里,我在使用 AWS 云模块运行 ansible playbook 或从本地机器使用 --refresh-cache 命令直接运行 ec2.py 文件时收到以下错误:

从 AWS 账户中的 Ec2 实例运行时,此问题似乎消失了。

我有最新的 EC2.py 和 EC2.ini 文件,Ansible 版本是 2.2.0.0,安装了 boto3,并且我在运行 playbook 之前设置了有效的 AWS 凭证。

关于发生了什么的任何想法?