共计 1647 个字符,预计需要花费 5 分钟才能阅读完成。
setup模块用来输出主机的一些基本信息
setup
使用setup输出节点基本信息
[root@manager test-when]# ansible -i hosts all -m setup
10.100.235.228 | SUCCESS => {
"ansible_facts": {
"ansible_apparmor": {
"status": "disabled"
},
"ansible_architecture": "x86_64",
"ansible_bios_date": "11/01/2019",
"ansible_bios_version": "6.00",
"ansible_cmdline": {
"BOOT_IMAGE": "/vmlinuz-3.10.0-1127.el7.x86_64",
"LANG": "en_US.UTF-8",
"biosdevname": "0",
"crashkernel": "auto",
"net.ifnames": "0",
"quiet": true,
"rd.lvm.lv": "centos/swap",
"rhgb": true,
"ro": true,
"root": "/dev/mapper/centos-root",
"spectre_v2": "retpoline"
},
"ansible_date_time": {
####### 略
使用filter过滤节点的信息
# 过滤主机名
[root@manager test-when]# ansible -i hosts all -m setup -a "filter=ansible_hostname"
10.100.235.228 | SUCCESS => {
"ansible_facts": {
"ansible_hostname": "centos-57946c8559-4r9tk",
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false
}
# 过滤ip地址
[root@manager test-tags]# ansible -i hosts all -m setup -a "filter=ansible_all_ipv4_addresses"
有了上面的信息,一般都会配合when做判断来使用
[root@manager test-when]# cat debug-when.yaml
---
- name: test when
hosts: all
tasks:
- name: test when
debug:
msg: "test when"
when: when: ( ansible_nodename == "centos-57946c8559-4r9tk" )
常用节点信息
ansible_all_ipv4_addresses #仅显示ipv4的信息
ansible_devices #仅显示磁盘设备信息
ansible_distribution #显示是什么系统,例centos,suse等
ansible_distribution_major_version #显示是系统主版本
ansible_distribution_version #仅显示系统版本
ansible_machine #显示系统类型,例32位,还是64位
ansible_eth0 #仅显示eth0的信息
ansible_hostname #仅显示主机名
ansible_kernel #仅显示内核版本
ansible_lvm #显示lvm相关信息
ansible_memtotal_mb #显示系统总内存
ansible_memfree_mb #显示可用系统内存
ansible_memory_mb #详细显示内存情况
ansible_swaptotal_mb #显示总的swap内存
ansible_swapfree_mb #显示swap内存的可用内存
ansible_mounts #显示系统磁盘挂载情况
ansible_processor #显示cpu个数(具体显示每个cpu的型号)
ansible_processor_vcpus #显示cpu个数(只显示总的个数)
正文完