问题标签 [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.
ansible - 如何将 ansible ini 库存转换为 json 或 yaml
Ansible AWX 要求以 yaml 或 json 格式输入清单。
当你开始学习 ansible 时,你可以选择从 ini 格式的清单开始。
https://docs.ansible.com/ansible/latest/user_guide/intro_inventory.html
格式之间可以转换吗?
python - 在 Ubuntu 19.04 上安装 AWX 时“无法导入 docker 或 docker-py - 无法导入名称常量”
通过运行剧本在 ubuntu 19.04 上安装 AWX,我遇到了导入错误。
我尝试: pip uninstall docker-py pip unsintall docker-compose pip install docker-compose=1.9.0
也试试
点安装常量
Python 2.7.16(默认,2019 年 4 月 6 日,01:42:57)Linux2 上的 [GCC 8.3.0] 键入“帮助”、“版权”、“信用”或“许可”以获取更多信息。
导入常量
安装 docker-compose 时出现此警告:
安装收集的包:docker-py, docker-compose 脚本 docker-compose 安装在 '/home/user/.local/bin' 中,它不在 PATH 上。考虑将此目录添加到 PATH,或者,如果您希望禁止显示此警告,请使用 --no-warn-script-location。安装成功 docker-compose-1.9.0 docker-py-1.10.6
任务 [local_docker : 启动容器] ****************************************** ****************************************************** ************************ 致命:[本地主机]:失败!=> {"changed": false, "msg": "Failed to import docker or docker-py - cannot import name constants. Try pip install docker
or pip install docker-py
(Python 2.6)"} 重试,使用:--limit @/home/user/ awx/installer/install.retry
完整的回溯是: 警告:以下回溯可能与实际故障无关。文件“/tmp/ansible_docker_service_payload_Qt5pEa/ main .py”,第 457 行,从 compose.cli.command 导入 project_from_options 文件“/home/balacite/.local/lib/python2.7/site-packages/compose/cli/command. py",第 11 行,来自 . 导入错误文件“/home/balacite/.local/lib/python2.7/site-packages/compose/cli/errors.py”,第 10 行,从 docker.errors 导入 APIError 文件“/home/balacite/.local /lib/python2.7/site-packages/docker/init _.py”,第 6 行,从 .client 导入客户端,AutoVersionClient,from_env # flake8: noqa 文件“/home/balacite/.local/lib/python2.7/site-packages/docker/client.py”,第 11 行,在 from .import api 文件“/home/balacite/.local/lib/python2.7/site-packages/docker/api/init .py”中,第 2 行,在 from .build导入 BuildApiMixin 文件“/home/balacite /.local/lib/python2.7/site-packages/docker/api/build.py”,第 9 行,从 ..import utils 文件“/home/balacite/.local/lib/python2.7/site-包/docker/utils/初始化.py”,第 2 行,从 .utils 导入(文件“/home/balacite/.local/lib/python2.7/site-packages/docker/utils/utils.py”,第 19 行,从 ..import tls 文件“/home/balacite/.local/lib/python2.7/site-packages/docker/tls.py”,第 5 行,从 .ssladapter 导入 ssladapter 文件“/home/balacite/.local/lib/python2 .7/site-packages/docker/ssladapter/ init .py",第 1 行,从 .ssladapter 导入 SSLAdapter # flake8: noqa File "/home/balacite/.local/lib/python2.7/site-packages/docker /ssladapter/ssladapter.py",第 21 行,从 backports.ssl_match_hostname 导入 match_hostname
jenkins-plugins - Jenkins 测试连接不适用于 Ansible-Awx 7.0.0
测试与 AWX 节点的连接时出现以下错误。
代理错误
代理服务器收到来自上游服务器的无效响应。代理服务器无法处理请求 POST /jenkins/descriptorByName/org.jenkinsci.plugins.ansible_tower.util.TowerInstallation/testTowerConnection。
原因:从远程服务器读取错误
我也无法从詹金斯服务器手动进行卷曲。它超时。这是 RHEL 上的 docker awx 安装。
ansible - 使用 Ansible Tower 构建 VM,我希望仅在定义变量时才能创建其他磁盘
我目前正在跨 AWS 和 VSphere 构建 Ansible 映像剧本模板,我希望能够定义多个额外的磁盘,但前提是它们是通过变量定义的。
剧本:
变量:
错误:
这个想法是,如果在启动作业时未定义变量,它将被 vm_guest 模块跳过。
这是最好的方法吗?有没有人能提出一个成功的前进方式?
更新:最好的方法可能是构建实例,然后使用 vm_guest_disk 使用下面建议的方法添加其他磁盘。该模块在 v2.8 中可用。
我们的 Tower 版本是 2.7.9,所以我将使用更详细的方法,通过 disk_num 变量调用多个 vm_guest:
变量
剧本:
ETC
powershell - AWX/Ansible 中的 PowerShell foreach 循环
我最近部署了一个涉及 ServiceNow 和 AWX 的 POC 自动化平台。我有一个用例来自动访问 Windows 服务器。
ServiceNow 表单将一次为我提供 10 个 Windows 服务器名称。
我确实编写了这个 PowerShell 脚本来处理多个计算机对象,当我直接在 Windows 上运行它时,它按预期工作。它确实提示我输入多个计算机名称并按预期工作。但是,当我在 AWX 上放置相同的脚本时,它无法识别$Computer
作为一种动态变量的变量。这是脚本。
这是我在 AWX 中遇到的错误。
请帮助我了解如何在 AWX 和 Ansible Core 中处理 PowerShell foreach 循环。
list - Ansible:将带有 unicode 的列表转换为字符串列表(并比较它们)
我创建了一个包含所有ansible 组 hosts的列表。但是当我打印列表时,它包含 unicode 字符。u'text'而不是"text" 有没有有效的方法来删除/转换它。我在网上查看了其他示例,但没有成功。
带有 unicode 字符的当前(错误)输出:
这应该具有与以下列表相同的格式。因为我想将它们与差异进行比较。列表本身中的值是不同的,但应采用如下格式:
目前我正在使用以下代码来获取列表:
第二个列表是使用 AWX api 获取的。另请注意,由于某种原因, [ 括号之前似乎有一个" 。如下所示:
这不在第一个列表中。知道为什么会这样。我认为这会在以后比较它们时出现问题。我创建列表的方式是相同的。
ansible - 在 AWX 中的变量中搜索值
我正在尝试在 awx 中提出一个主机过滤器查询,该查询能够过滤我的库存变量字段中包含的键中的值。
我的变量字段如下所示:
我当前的主机过滤器是这样的:
https://my-awx.com/api/v2/hosts/?host_filter=variables__icontains=automation
使用上面的过滤器,我至少能够接收到相应的实例,但是我希望能够过滤超过automation
. 最终,我希望接收其automation
标签具有密钥的所有实例,awx
并将它们集成到智能库存中。
另一个问题:是否有更好的文档可用然后https://docs.ansible.com/ansible-tower/latest/html/towerapi/filtering.html更好的文档可用?我觉得它缺少我的问题中包含的细节。
最好的问候,静止不动
python - 通过 Ansible AWX 传递额外变量时出现未定义变量错误
我有一个创建用户的剧本,当所有三个变量都被硬编码时,剧本运行良好,而如果我传递变量,我会遇到错误。我通过带有额外变量的 AWX 控制台执行此剧本并得到“未定义变量错误”
剧本
额外变量
我使用创建了密码哈希mkpasswd --method=sha-512
下面是我得到的错误
security - 如何在 Ansible 中通过 extra_vars 阻止覆盖变量?
我正在使用 Ansible Tower 来展示游戏。用户对调用 REST API 的工作加注星标,并且她/他提供了一些额外变量。我必须根据其他一些变量来验证提供的变量。例如:用户提供主机名,我在库存变量中有:allowed_hostnames。问题是 extra_vars 胜过一切,所以用户总是可以覆盖允许值列表的变量,并且测试没有意义。在 Tower 中有一个 Survey 功能,可用于限制用户允许更改的变量,但启用 Survey 将阻止 dict 变量,我需要它。
centos - 为什么 awx 看不到 pip 模块?
我使用 AWX 8.0.0.0。在我的 SCM 上有工作,该工作连接到 GCP 并创建实例。当我在控制台下运行这项工作时,ansible-playbook job.yml
它做得很好。但是当我从 Web UI 运行它时,我得到了错误
fatal: [localhost]: FAILED! => {"changed": false, "msg": "Please install the google-auth library"}
所以它不经意意味着我没有这个图书馆。但是我安装它
pip install google-auth
并且当我从控制台运行它时它工作正常。这是我的剧本:
我做错了什么?