我是ansible的新手。我有一个要求,要求我为 AWS 中托管的 450 多个 linux 服务器提取操作系统版本。 AWS 不提供此功能——而是建议我们从 puppet 或 chef 那里获得它。
我创建了一些无法运行的简单剧本
---
- hosts: testmachine
user: ec2-user
sudo: yes
tasks:
- name: Update all packages to latest
yum: name=* state=latest
task:
- name: obtain OS version
shell: Redhat-release
剧本应该输出一个带有主机名和操作系统版本的文本文件。对此的任何见解都将受到高度赞赏。
原文由 AmigoSe 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用以下 Jinja2 表达式之一:
在哪里:
hostvars
和ansible_...
是内置的,由 Ansible 自动收集ansible_distribution
是Ansible正在处理的主机例如,假设您正在运行 Ansible 角色
test_role
对主机host.example.com
运行 CentOS 7 发行版:会给你: