ansible相关内容

是否将可能的Galaxy角色安装到特定目录?

所以我想我应该在可能的情况下开始使用Ansible Galaxy,而不是编写我自己的角色。我刚刚安装了我的第一个角色,它已安装到/etc/local/ansible/roles(我在OSX上)。 现在我想知道您如何在我真正需要的地方安装这些角色?我是否只是将角色复制到我需要的位置,或者是否有可行的方法来执行此操作? 推荐答案 是,您可以根据示例项目结构复制它们: site.ym ..
发布时间:2022-02-22 12:37:17 其他开发

如何声明SERVICE_FACTS的变量

下面是我使用SERVICE_FACTS模块检查服务状态的示例Ansible攻略,它工作得很好。在这里,我需要支持将服务名称定义为变量,但是当我定义它时,会给出错误,变量未定义: --- - name: Check service status hosts: all gather_facts: no tasks: - name: Service Facts se ..
发布时间:2022-02-22 12:34:41 其他开发

如何使用Ansible截断现有的和打开的文件?

我喜欢截断其他应用程序打开并使用的现有文件或调整其大小。例如,随着时间的推移,磁盘上可能会堆满占用大量空间的日志文件,如/var/log/secure。 在纯Linux中,等效项为 truncate -s 0 /var/log/secure dd if=/dev/zero of=/var/log/secure bs=1M count=0 echo > /var/log/secure ..
发布时间:2022-02-22 12:30:31 其他开发

防止Ansible在传递WITH_ITEMS时解析字符串

我正在尝试使用with_items指定要传递给自定义Ansible模块的键/值对列表。 当键或值字符串具有类似列表的格式时,会出现问题。例如,"[('a', 'b'), ('c', 'd')]"。在这种情况下,with_items可能会将字符串转换为列表,并破坏我的配置。 要再现的最小示例(我使用的是debug模块,但与自定义模块的行为相同): - name: with_items_ ..
发布时间:2022-02-22 12:28:00 其他开发

使用Ansible解析XML并替换XML标记中的字符串值

我正在使用Ansible Playbook从XML文件中提取要替换的特定属性值,如Ansible XML模块页面中所述。但是对于XML标记根深蒂固的这种场景,我不太确定。我想知道如何使用Ansible中的XML XPath模块替换此标记值。 为便于理解,示例XML文件: # # Tasty Beverage Co. ..
发布时间:2022-02-22 12:24:33 其他开发

错误!';sudo';不是剧本的有效属性

我有一个Ansible play文件,它必须执行两个任务,第一个任务是在本地计算机上获取磁盘使用率,另一个任务是获取远程计算机的磁盘使用率并在远程计算机上安装apache2。 当我尝试运行该文件时,收到错误";error!“sudo”不是播放的有效属性&qot; 当我从YML文件中删除sudo和apt部分时,它运行正常。 我使用的是Ansible 2.9.4。以下是两个攻略文件: ..
发布时间:2022-02-22 12:19:01 其他开发

Ansible-检查变量类型

显然,根据几个小时的搜索,没有人遇到此用例: 很简单-我想根据变量类型执行一些ANsible逻辑。基本上等同于instanceof(dict, var_name),但在Ansible中: - name: test debug: msg: "{{ instanceof(var_name, dict) | ternary('is a dictionary', 'is somethi ..
发布时间:2022-02-22 12:17:00 其他开发

可以在Ansible中设置列表的事实吗?

是否可以使用set_fact在Ansible中设置包含列表的事实?它的正确语法是什么? 推荐答案 确实如此。不过,您需要引用整个列表: - name: set fact set_fact: foo="[ 'one', 'two', 'three' ]" - name: debug debug: msg={{ item }} with_items: foo 上述任 ..
发布时间:2022-02-22 12:14:51 其他开发

疑惑:如何禁用但运行服务?

我想遍历许多主机,并获取未先启用(Systemctl Enable Xxxx)而手动启动(Systemctl Start Xxxx)的所有服务,反之亦然。所有已禁用(systemctl禁用xxxx)但仍在运行(因为尚未停止)的服务。 我只希望将它们输出到我的shell中,而不是自动“修复”上面发现的所有问题。 在systemctl list-unit-files --state=dis ..
发布时间:2022-02-22 12:12:48 其他开发

运行攻略后访问可能的攻略结果

我使用ansible-pull在我看不到的远程计算机(客户端)上运行Ansible脚本。 我想确保: 可修改的剧本执行成功,则应发送摘要 可分析的行动手册如果执行不成功,应发送失败内容的摘要 启用Ansible日志将信息存储在一些日志文件中,但我想知道是否可以通过Ansible中预定义的一些变量获得以下Ansible输出的结果。 PLAY [localhost] **** ..
发布时间:2022-02-22 09:35:09 Python

如何使用 Ansible 获取已安装的 apt 包?

我正在尝试列出我的 Debian 7/8/9 机器上所有已安装的软件包.使用 apt 或 dpkg 有一些简单的方法来处理它,但我找不到开箱即用的 ansible 的合适方法. 有没有很好的流畅的方法来做到这一点? 对于 RHEL 机器,我发现了这篇文章:如何获取用 Ansible 安装的 yum 包? 解决方案 看起来 Ansible 没有提供任何支持此功能的模块.您必须使用 ..
发布时间:2022-01-24 23:45:17 其他开发

当 terraform 在中间失败时会发生什么?

在尝试执行 terraform 代码时,如果它在代码中间失败会发生什么?假设我们正在尝试将四个应用程序部署到一个 ubuntu 实例上.它完成了部署 2 个实例,并在第三个失败?它是停止整个过程并报告错误,还是跳过失败的部分并移动到下一个部分,即(在本例中为第四次部署)?请让我知道这件事. 你也可以为 (ansible,puppet,chef) 提供上述相同的过程吗? 感谢和问候. ..
发布时间:2022-01-16 20:48:24 其他开发

目前从 terraform 创建 ansible 库存的最佳方法

我有一长串机器,所有这些机器在系统中的功能都略有不同.我想组织这些机器并自动添加到主机清单文件中,以便我可以运行 ansible 和管理清单.有没有好的解决方案? 我认为 ansible 主机应该看起来像... [网络服务器]一些一些[一体化]一些一些 等等. 在提出问题后,我目前正在研究输出变量并使用它们从文件中呈现模板. 解决方案 我想通了. 数据“template_ ..
发布时间:2022-01-16 20:36:03 其他开发

仅在需要升级时才停止服务的 Ansible 方法

在 ansible playbook 中,如果需要升级,我想停止 MariaDB(在我的情况下,从 RPM 包重新启动并不总是有效).我对 ansible 很陌生. 我想出了这个: - name: "检查 MariaDB 是否需要升级"外壳:“yum 检查更新 MariaDB 服务器|grep MariaDB|wc -l"注册:needs_update- 名称:“停止 mysql 服务"服 ..
发布时间:2022-01-15 20:11:54 其他开发