问题标签 [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 投票
2 回答
45652 浏览

ansible - Ansible:库存中的 ansible_user 与剧本中的 remote_user

我正在尝试使用我在控制机器上登录的帐户以外的帐户对服务器运行 Ansible 剧本。我试图ansible_user根据 Inventory 上的文档在库存文件指定一个:

但是 Ansible 调用 with 会ansible-playbook -i inventory playbook.yml -vvvv打印以下内容:

对我有用的是将remote_user论点添加到剧本中:

现在相同的 Ansible 命令连接为user1

还添加remote_user变量以ansible.cfg使 Ansible 使用预期用户而不是登录用户。

ansible_user库存文件和remote_user剧本/ansible.cfg用于不同目的吗?

是干什么ansible_user用的?或者为什么 Ansible 不观察清单中的设置?

0 投票
5 回答
72476 浏览

python - 意外异常:调用 ansible2 时未定义名称“basestring”

我正在尝试执行 ansible2 commnads ...

当我做:

我得到:

意外异常:未定义名称“basestring”完整的回溯是:

这里是ansible --version

这是python --version

0 投票
1 回答
908 浏览

ansible - 显示 jinja 模板中可用的所有变量

如何显示 jinja 模板中可用的所有可用变量?

我按照手册,我得到这个输出:

'"hostvars": "<ansible.vars.hostvars.HostVars object at 0x7f634cc78dd0>"'.

命令是:

PYTHONUNBUFFERED=1 ANSIBLE_FORCE_COLOR=true ANSIBLE_HOST_KEY_CHECKING=false ANSIBLE_SSH_ARGS='-o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -i /home/flav/.vagrant.d/boxes/archlinux-VAGRANTSLASH-base/0/virtualbox/vagrant_private_key -o ControlMaster=auto -o ControlPersist=60s' ansible -vvvv --connection=ssh --timeout=30 --extra-vars=ansible_ssh_user='vagrant' -i inventory_virtual.py -m debug -a "var=hostvars" $1

我正在使用ansible 2。

0 投票
4 回答
31721 浏览

ansible - 将 Ansible 1.9.4 更新到 Ansible 2.0

我卸载了 ansible 1.9.4 并安装了sudo apt-get install ansible2.0.2 版本。但是当我执行时:

我已经使用 ansible ppa 卸载并重新安装,安装时我可以看到:

但是如果我检查 ansible 版本:

如果我运行下一个:

有什么帮助吗?谢谢

0 投票
4 回答
12344 浏览

ansible - 防止 Ansible 2 中出现重复键警告

我在我的角色中使用了很多 YAML 锚点和引用来将逻辑保持在一个位置,而不是在多个任务中重复自己。以下是一个非常非常基本的示例。

这个例子可能没有显示这实际上是如何有用的,但它确实有用。想象一下,你遍历一个字典列表,将每个字典的各种键传递给模块,可能有相当复杂的“when”、“failed_when”和“changed_when”条件。你只是想干。

因此,我没有将整个任务定义两次,而是使用第一个锚点并将其所有内容合并到一个新任务中,然后覆盖不同的部分。这很好用。

需要明确的是,这是基本的 YAML 功能,与 Ansible 本身无关。

上述定义的结果(以及 Ansible 在解析 YAML 文件时看到的内容)将评估为:

Ansible 2 现在具有在任务中多次定义键时抱怨的功能。它仍然有效,但在运行 playbook 时会产生不必要的噪音:

Ansible 配置允许防止deprecation_warningscommand_warnings. 有没有办法也可以防止这种警告?

0 投票
1 回答
191 浏览

ansible - Ansible 将混合列表结构转换为统一结构

在 Ansible 中,如果我有一个具有以下混合结构的列表变量:

有没有办法将它转换成这样的平面结构:

这个想法是允许一个更紧凑的结构来定义列表,然后将其转换为一个扁平结构,使用with_items.

我已经用尽了我可以收集的所有循环形状,包括、set_fact 和 jinja 过滤器,但我确信一定有办法。

0 投票
1 回答
233 浏览

ansible - 在 Mac OS X 上使用 ansible 创建 AWS vpc

我在从 mac os x 创建 aws vpc 时遇到问题,但完全相同的命令/角色正在 ubuntu 中工作。

我已经在 Mac OS X 上采取的步骤:

  • 使用ntp更新时间
  • 将ansible升级到版本2
  • 将 ansible 降级到版本 1.9.1、1.9.2、1.9.3 和 1.9.4
  • boto 版本是 2.38.0

通过上述所有更改,我收到此错误:

0 投票
2 回答
1784 浏览

ansible-2.x - 在 Ansible v2 中,哪个变量存储 ssh 用户名?

在我的剧本中,我以非 root 用户身份 SSH,然后使用become成为root.

存储最初通过 SSH 连接到框中的用户的 Ansible 变量名称是什么?

在 Ansible < 2.0 中,我可以使用{{ ansible_ssh_user }}SSH'ing 访问用户名。

刚刚尝试使用 Ansible 2.0.2 并返回null. 我按照常见问题解答ansible_user的建议进行了尝试,但也返回了。我也试过了,但返回的结果是,而不是原始用户。nullansible_user_idbecome

0 投票
3 回答
6320 浏览

python - 如何在 Ansible 2 中向 PlaybookExecutor 添加回调插件

通过 API 调用 ansible 时如何指定回调?

我有一个database_write.pyansible 2.0.0.2 的回调插件,它在运行时会登录到数据库:

这行得通,因为在我的 $PWD 中我有ansible.cfg这条线:

现在我正在尝试使用 python API 执行我的剧本和我的回调。我基本上复制了 ansible-playbook cli 工具的功能

这可以很好地执行剧本,但不会触发回调。

我想在使用 python API 时,我的ansible.cfg文件没有被考虑在内?

如何将我的回调插件指定给 PlaybookExecutor?

(我发现的大多数文档都适用于 < 2.0 的 ansible 版本)

先感谢您!

0 投票
2 回答
1157 浏览

ansible - ansible 2.0中的模板传输错误

我有一个非常简单的角色,在 ansible 1.9.4 中运行良好,但是当我使用 ansible 2.0 运行相同的角色时,在模板传输过程中出现错误。ansible 2.0 中的模板模块有什么变化吗?

我的角色布局:

我已经使用 ansible ping 模块测试了与远程服务器的连接:

这是我收到错误的任务:

这是一个错误: