问题标签 [ansible-awx]

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

azure - AWX docker:如何使用 Active Directory 向 Azure 进行身份验证。对我不起作用

我已经敲了大约一个星期的头了。

我通过 docker-compose 运行 AWX 并在 EC2 实例上设置。我的部门没有创建 Azure 服务主体的凭据,因此当我等待该请求通过时,我试图让 AWX 通过活动目录凭据向 Azure 进行身份验证。在测试时,为简单起见,我有一个运行 azure_rm_dnsrecordset_facts 的测试任务设置,因此我可以简单地提取 TXT 记录以显示身份验证正在验证。在我的开发机器上,我可以安装 azure cli,运行 az login 并通过 ansible-playbook 命令执行 playbooks 等,它可以工作:我可以看到测试提取了预期的 TXT 记录。但是在 AWX 上我得到了错误。

使用 az login 并将 /root/.azure/ 中的文件复制到 /var/lib/awx/.azure/ 我收到此错误:

在使用 ad_username、password 和 subscription_id 值作为环境变量时,额外的 vars 和从 Vault 传递到模块中都会导致相同的错误:

只是我还是这是一个错误?除了我在阅读文档时发现的内容外,我找不到任何可以明确引导您完成设置的内容。我希望这是直截了当的,到目前为止,一切都不是。

这是我最近关注的文档之一:https ://docs.ansible.com/ansible-tower/3.2.6/html/userguide/credentials.html#microsoft-azure-resource-manager

谢谢您的帮助。这是我尝试过的事情的清单:

  • 在 awx_task 和 awx_web 容器中为 AZURE_AD_USER、AZURE_PASSWORD 和 AZURE_SUBSCRIPTION_ID 设置环境变量。

  • 我已将 ad_user、password 和 subscription_id 凭据设置为额外变量。

  • 我已将凭据放在保险库中,并直接传递给 ansible 模块,有和没有 azure_adfs_authority_url。

  • 在 awx_task docker 容器中,我安装了 ansible[azure] 和 azure cli,运行 az login,验证 /root/.azure/azureProfile.json 文件已填充。

  • 我已将文件从 /root/.azure/ 复制到 /var/lib/awx/.azure/ ,这似乎是 AWX 正在寻找这些文件的地方。我还验证了读写权限和文件所有权。

  • 我修改了 Microsoft Azure 资源管理器凭据,但它似乎不是我想要的。

    • ON EC2 实例,azure_adfs_authority_url 的 nslookup 显示它正在访问正确的 ADFS 服务器。

谢谢你的帮助

0 投票
1 回答
433 浏览

ansible - AWX 无法从私人仓库安装要求

我有一个项目的 AWX 安装。该项目是从私人 git 存储库中完美获取的。

该项目有一个由 AWX 执行的需求文件。需求文件包含这样的私有存储库:

但是,这失败并出现以下错误:

测试未成功安装:-命令 git clone 在目录中失败。

如何配置 AWX 以使用 awx 中已有的 git 凭据?

0 投票
1 回答
693 浏览

kubernetes - 尝试将文件复制/挂载到 AWX kubernetes pod 但出现错误

我正在尝试将文件添加到 kubernetes 中 AWX 任务/Web 容器的 /etc/ 目录中。我对掌舵相当陌生,我不确定自己做错了什么。

我添加到 helm chart 的唯一内容是 configmap 中的 krb5 键,以及任务和 Web 容器的附加卷和卷挂载。krb5.conf 文件位于charts/mychart/files/

配置图:

部署:

卷添加到 deployment.yaml 的底部

卷挂载添加到任务/Web 容器

我正在尝试将文件挂载到 kubernetes pod 中的容器中,但出现以下错误:

0 投票
1 回答
5848 浏览

kubernetes - 如何让 Kerberos 身份验证在 k8s 中工作

我正在尝试通过 AWX 中的 kerberos 进行身份验证。我在 Azure Kubernetes 服务中托管 AWX。我们使用的 KDC 是 ldap。从容器本身执行时,我可以通过 ping 和 telnet 通过端口 88 与 ldap 服务器通信。我不确定我还能做些什么来测试它并且日志文件是空的。

我已将 krb5.conf 文件和 krb5.keytab 文件添加到 Task/Web 容器中。我尝试过使用和不使用 keytab。我尝试将缓存更改为文件而不是密钥环。

无论我尝试什么配置,我都会遇到同样的错误。好奇我做错了什么。我可以通过在 Docker 中本地运行 AWX 的 VM 上的工作 kerberos 配置来实现它,但是,我无法让它在 AKS 中工作。不确定这是特定的 AKS 还是一般的 Kubernetes。

错误:

kinit:在获取初始凭据时无法联系领域“MYDOMAIN.COM”的任何 KDC

0 投票
1 回答
193 浏览

ansible - 为什么 Ansible AWX 每个库存只有一个机器凭证?

是否有理由不为每个主机设置凭据?当在一个清单中定义多个主机时,共享一个私钥是常识吗?

0 投票
1 回答
1163 浏览

ansible - 是否可以仅在变量具有值时设置 Ansible 事实?

我有一个从 AWX 运行的 Ansible 剧本。播放使用 Infoblox nios 模块来检索有关 Infoblox 主机注册的信息。

我正在使用 set_fact 模块来获取查询的输出,然后定义一些新的事实以在剧本的其他地方使用。

我遇到的问题是查询可以根据注册的格式返回不同数量的变量,这会破坏剧本。

如果只有在原始查询中返回特定变量时我才能设置新事实,我想做的是锻炼。

我试过使用“如果定义”,但这似乎不起作用。

在示例 1 中,播放“获取主机记录”返回以下值。主机、ipv4addr 和 mac,因为主机在 Infoblox 中有一个 Mac 地址

在示例 2 中,相同的播放仅返回主机和 ipv4addr,因为主机没有注册 Mac 地址。

我的剧本包含以下内容,并且仅当主机包含 Mac 地址作为事实主机时才有效,不包含 host.ipv4addrs[0].mac 的值,因此它崩溃了。如果定义了 host.ipv4addrs[0].mac,我想添加一些逻辑来尝试设置 niosmac。

这是我尝试使用的版本已定义

干杯斯宾塞

0 投票
0 回答
710 浏览

ansible - 当播放返回多个值时,是否可以设置/查找 Ansible 事实

我在 AWX 中有以下剧本,它根据 Mac 地址查找 Infoblox 主机,然后以更用户友好的格式输出信息。

当前剧本的工作前提是存在具有该 Mac 地址的单个主机,但如果存在多个则失败。

变量 niossearchcatagory 和 searchcriteria 通过 AWX 调查传递到剧本中。

我已经搜索了使用循环或拆分输出的可能选项,但我真的不知道处理这个的最佳方法。

如果输出与此匹配,则剧本按预期工作

这是一个返回多个值的例子

这会导致错误,因为变量 host.name、host.ipv4addrs 等不存在,我认为这是因为有多个变量。

我们将不胜感激地收到有关如何输出每个注册的任何帮助。

0 投票
1 回答
117 浏览

ansible - 接受用户输入并在多行中创建一个新文件

我想从 vars_prompt 获取用户输入,例如:-

并使用此输出在服务器上创建一个新文件:-

我如何使用 lineinfile 或 blockinfile 模块来实现这一点?

0 投票
1 回答
67 浏览

ansible - 将远程 N 台主机添加到 AWX

在没有 docker 的 CentOS 7 上安装了 Ansible AWX。想要将远程 linux 主机(无密码)添加到 AWX 并运行 play book 并获得结果。怎么做?任何人都可以帮助。我可以在网页中添加一两个主机。如何将 100 个远程主机添加到 AWX。是否有任何 AWX 后端脚本可以将 N 个远程主机添加到 AWX?谢谢。

0 投票
0 回答
1672 浏览

ansible - AWX playbook 中的gather_facts 失败

我有一个使用gather_facts 来托管CentoOS 的任务。当我在 AWX 中使用我的剧本执行此任务时,我收到此错误:

我正在使用使用 Ansible 与 docker 一起安装的最新版本的 AWX。每个在 CentOS 主机中。

蟒蛇 2.7

当我在带有 ansible-playbook 的 shell 中使用它时,它可以正常工作。

我的任务:

详细错误: