setup模块

1 通过setup模块获取主机信息

# 执行命令 ansible webserver -m setup # 返回信息192.168.138.137 | SUCCESS => {"ansible_facts": {"ansible_all_ipv4_addresses": ["192.168.138.137"], "ansible_all_ipv6_addresses": ["fe80::72c6:bd9a:7a8d:9650"], "ansible_architecture": "x86_64", "ansible_bios_date": "07/02/2015", "ansible_bios_version": "6.00", "ansible_cmdline": {"BOOT_IMAGE": "/boot/vmlinuz-4.15.0-96-generic", "auto": true, "find_preseed": "/preseed.cfg", "locale": "en_US", "noprompt": true, "priority": "critical", "quiet": true, "ro": true, "root": "UUID=0979b935-32fa-41b6-9179-6ce0a798388e"}, "ansible_date_time": {"date": "2020-04-22", "day": "22", "epoch": "1587557888", "hour": "20", "iso8601": "2020-04-22T12:18:08Z", "iso8601_basic": "20200422T201808601498", "iso8601_basic_short": "20200422T201808", "iso8601_micro": "2020-04-22T12:18:08.601578Z", "minute": "18", "month": "04", "second": "08", "time": "20:18:08", "tz": "CST", "tz_offset": "+0800", "weekday": "星期三", "weekday_number": "3", "weeknumber": "16", "year": "2020"}, "ansible_default_ipv4": {"address": "192.168.138.137", "alias": "ens33", "broadcast": "192.168.138.255", "gateway": "192.168.138.2", "interface": "ens33", "macaddress": "00:0c:29:45:3b:39", "mtu": 1500, "netmask": "255.255.255.0", "network": "192.168.138.0", "type": "ether"}, "ansible_default_ipv6": {}, "ansible_devices": {"sda": {"holders": [], "host": "SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)", "model": "VMware Virtual S", "partitions": {"sda1": {"sectors": "39843840", "sectorsize": 512, "size": "19.00 GB", "start": "2048"}, "sda2": {"sectors": "2", "sectorsize": 512, "size": "1.00 KB", "start": "39847934"}, "sda5": {"sectors": "2093056", "sectorsize": 512, "size": "1022.00 MB", "start": "39847936"}}, "removable": "0", "rotational": "1", "scheduler_mode": "cfq", "sectors": "41943040", "sectorsize": "512", "size": "20.00 GB", "support_discard": "0", "vendor": "VMware,"}, "sr0": {"holders": [], "host": "SATA controller: VMware SATA AHCI controller", "model": "VMware SATA CD01", "partitions": {}, "removable": "1", "rotational": "1", "scheduler_mode": "cfq", "sectors": "2097151", "sectorsize": "512", "size": "1024.00 MB", "support_discard": "0", "vendor": "NECVMWar"}}, "ansible_distribution": "Ubuntu", "ansible_distribution_major_version": "16", "ansible_distribution_release": "xenial", "ansible_distribution_version": "16.04", "ansible_dns": {"nameservers": ["127.0.1.1"], "search": ["localdomain"]}, "ansible_domain": "", "ansible_ens33": {"active": true, "device": "ens33", "ipv4": {"address": "192.168.138.137", "broadcast": "192.168.138.255", "netmask": "255.255.255.0", "network": "192.168.138.0"}, "ipv6": [{"address": "fe80::72c6:bd9a:7a8d:9650", "prefix": "64", "scope": "link"}], "macaddress": "00:0c:29:45:3b:39", "module": "e1000", "mtu": 1500, "pciid": "0000:02:01.0", "promisc": false, "type": "ether"}, "ansible_env": {"HOME": "/root", "LANG": "zh_CN.UTF-8", "LANGUAGE": "zh_CN:en_US:en", "LC_ADDRESS": "zh_CN.UTF-8", "LC_ALL": "zh_CN.UTF-8", "LC_IDENTIFICATION": "zh_CN.UTF-8", "LC_MEASUREMENT": "zh_CN.UTF-8", "LC_MESSAGES": "zh_CN.UTF-8", "LC_MONETARY": "zh_CN.UTF-8", "LC_NAME": "zh_CN.UTF-8", "LC_NUMERIC": "zh_CN.UTF-8", "LC_PAPER": "zh_CN.UTF-8", "LC_TELEPHONE": "zh_CN.UTF-8", "LC_TIME": "zh_CN.UTF-8", "LOGNAME": "root", "MAIL": "/var/mail/root", "PATH": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin", "PWD": "/home/python", "SHELL": "/bin/bash", "SUDO_COMMAND": "/bin/sh -c echo BECOME-SUCCESS-lspmdoftjjqryqzyywnxwwfmvtkadosd; LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8 LC_MESSAGES=zh_CN.UTF-8 /usr/bin/python /home/python/.ansible/tmp/ansible-tmp-1587557887.54-150801282271866/setup; rm -rf \"/home/python/.ansible/tmp/ansible-tmp-1587557887.54-150801282271866/\" > /dev/null 2>&1", "SUDO_GID": "1000", "SUDO_UID": "1000", "SUDO_USER": "python", "TERM": "xterm-256color", "USER": "root", "USERNAME": "root"}, "ansible_fips": false, "ansible_form_factor": "Other", "ansible_fqdn": "ubuntu", "ansible_hostname": "ubuntu", "ansible_interfaces": ["lo", "ens33"], "ansible_kernel": "4.15.0-96-generic", "ansible_lo": {"active": true, "device": "lo", "ipv4": {"address": "127.0.0.1", "broadcast": "host", "netmask": "255.0.0.0", "network": "127.0.0.0"}, "ipv6": [{"address": "::1", "prefix": "128", "scope": "host"}], "mtu": 65536, "promisc": false, "type": "loopback"}, "ansible_lsb": {"codename": "xenial", "description": "Ubuntu 16.04.4 LTS", "id": "Ubuntu", "major_release": "16", "release": "16.04"}, "ansible_machine": "x86_64", "ansible_machine_id": "da036fc2cd804ffbabc7e80e5a1f3f7a", "ansible_memfree_mb": 119, "ansible_memory_mb": {"nocache": {"free": 751, "used": 1219}, "real": {"free": 119, "total": 1970, "used": 1851}, "swap": {"cached": 2, "free": 992, "total": 1021, "used": 29}}, "ansible_memtotal_mb": 1970, "ansible_mounts": [{"device": "/dev/sda1", "fstype": "ext4", "mount": "/", "options": "rw,relatime,errors=remount-ro,data=ordered", "size_available": 6850600960, "size_total": 19945680896, "uuid": "0979b935-32fa-41b6-9179-6ce0a798388e"}], "ansible_nodename": "ubuntu", "ansible_os_family": "Debian", "ansible_pkg_mgr": "apt", "ansible_processor": ["GenuineIntel", "Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz"], "ansible_processor_cores": 1, "ansible_processor_count": 1, "ansible_processor_threads_per_core": 1, "ansible_processor_vcpus": 1, "ansible_product_name": "VMware Virtual Platform", "ansible_product_serial": "VMware-56 4d 6d 51 03 6a 01 11-0d 39 64 b3 ba 45 3b 39", "ansible_product_uuid": "516D4D56-6A03-1101-0D39-64B3BA453B39", "ansible_product_version": "None", "ansible_python_version": "2.7.12", "ansible_selinux": false, "ansible_service_mgr": "systemd", "ansible_ssh_host_key_dsa_public": "AAAAB3NzaC1kc3MAAACBAPg61Ex+xwP3FYpWCRPZOzlXsNkmVYOv5cPhNiADQaFvuDwTXk8l9wKvbBSfcQtQ+YUCS+/GzgNlqIsXWTRp7KhVSGzI5T7egK61P1O2uG1uiSJDfrkPKu5VWtmD3L+/5uf2x3etD2g2TsSOpY3uvSts1mYAY3l6JJYaCjdl/hkLAAAAFQCw4N9aCV0Uc++SOPhEEIrK+MSdcwAAAIEAw2z5UmTkyX4pMF9+31qY2lEG39SAV7P387JkDV/NDIIishsk2mEOwC4aHRb7DQwbA1xljTRK3GpZzPJRxp/Z6zMZebxpyC4W+QHl/Y90NGbVG7TmeH0YRlxeiTxDlkbpj8kPI6T0i94Qo0GnAVn3rcUq29kLJbMkkPDIAzOx/ngAAACAUeW3YName/MLd7Ia1jR75Of5+y9yd94bQ+915HIBMk84k9IfNlgeuvgyrf9udyYGonzLcF/BHgmiq6coig+ZROcHFV8hpdNRutyx91gr16D8BKgKnqQVo5HyQUWrdLHknWSyIl9GhPcepxf80qRe8ItR3gncEQpnMu1+zwoGZko=", "ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMmRbCZ65HRy8pb/fDOLnJEmwXoOXI0X4SKR1JHKhV2G6sagXNNFsV98S0V+PSKeSPR52l5GLyq/fQkXqwXSxlg=", "ansible_ssh_host_key_ed25519_public": "AAAAC3NzaC1lZDI1NTE5AAAAIOXWPZXZu9ideCZuBUej90q0m9gxHm8hKiVmyxy8Ok7p", "ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDaBzsPdckXol3qTcL5lIzb6/Uf+MjAjv2BdlpnlRC5vIT2PyKYgLZQO4YZqGH4Qe7Vhk+zy1X8YiLwuBwJMbVp2pe7na15APOiAt2J+sF9XwEmsFJK73dcbclsK0reLJAXBhp23KePAXgslHio/rj83dTDHXb8fCuPvN52SmDGlH6CucjHmzoJ4XsTfwET/3uCsrWKtffV3zTWsdEIN30/b1/jMw9QUcklYYW7kg55kg+zRBbTBPVRNPnPw0y9gaTlHBrOxGHMPqjfpfP2c7VWXcpovfBNzBWneLLaz/uNP19t5eLr8tl4EVlyoCSo5/kZNFe8uQVBca7G4i7U4lyb", "ansible_swapfree_mb": 992, "ansible_swaptotal_mb": 1021, "ansible_system": "Linux", "ansible_system_vendor": "VMware, Inc.", "ansible_uptime_seconds": 4675, "ansible_user_dir": "/root", "ansible_user_gecos": "root", "ansible_user_gid": 0, "ansible_user_id": "root", "ansible_user_shell": "/bin/bash", "ansible_user_uid": 0, "ansible_userspace_architecture": "x86_64", "ansible_userspace_bits": "64", "ansible_virtualization_role": "guest", "ansible_virtualization_type": "VMware", "module_setup": true}, "changed": false
}

2  setup 返回信息较多,可以过滤

python@ubuntu:~$ ansible webserver -m setup -a "filter=ansible_user*"
192.168.138.137 | SUCCESS => {"ansible_facts": {"ansible_user_dir": "/root", "ansible_user_gecos": "root", "ansible_user_gid": 0, "ansible_user_id": "root", "ansible_user_shell": "/bin/bash", "ansible_user_uid": 0, "ansible_userspace_architecture": "x86_64", "ansible_userspace_bits": "64"}, "changed": false
}

3 可通过tree参数将返回信息写入到文件中,不同主机返回的内容写入到不同的文件中,文件名以主机IP命名

python@ubuntu:~$ ansible webserver -m setup -a "filter=*address*" --tree ~/zml
192.168.138.137 | SUCCESS => {"ansible_facts": {"ansible_all_ipv4_addresses": ["192.168.138.137"], "ansible_all_ipv6_addresses": ["fe80::72c6:bd9a:7a8d:9650"]}, "changed": false
}#  查看文件
python@ubuntu:~/zml$ ll
总用量 12
drwxrwxr-x  2 python python 4096 4月  22 20:40 ./
drwxr-xr-x 40 python python 4096 4月  22 20:28 ../
-rw-rw-r--  1 python python  149 4月  22 20:28 192.168.138.137
python@ubuntu:~/zml$ cat 192.168.138.137
{"ansible_facts": {"ansible_all_ipv4_addresses": ["192.168.138.137"], "ansible_all_ipv6_addresses": ["fe80::72c6:bd9a:7a8d:9650"]}, "changed": false}python@ubuntu:~/zml$

stat模块

1 获取文件的详细信息

python@ubuntu:~/zml$ ansible webserver -m stat -a "path=/home/python/zml"
192.168.138.137 | SUCCESS => {"changed": false, "stat": {"atime": 1587555333.9527695, "ctime": 1587555022.3954942, "dev": 2049, "exists": true, "gid": 1000, "gr_name": "python", "inode": 399851, "isblk": false, "ischr": false, "isdir": true, "isfifo": false, "isgid": false, "islnk": false, "isreg": false, "issock": false, "isuid": false, "mode": "0775", "mtime": 1587555022.3954942, "nlink": 2, "path": "/home/python/zml", "pw_name": "python", "rgrp": true, "roth": true, "rusr": true, "size": 4096, "uid": 1000, "wgrp": true, "woth": false, "wusr": true, "xgrp": true, "xoth": true, "xusr": true}
}

【Ansible】 Ansible 模块 setup 与 stat 模块用法相关推荐

  1. 实例学习ansible系列(7)常用模块之ping/setup

    知识点:ping模块,用于确认和对象机器之间是否能够ping通,正常情况会返回pong 知识点:setup模块,用于收集对象机器的基本设定信息. ping使用实例 [root@host31 ansib ...

  2. 自动化运维工具Ansible实战(四)常用模块

    转载链接:http://blog.51cto.com/liqingbiao/1962609 Ansible模块按功能分为:云模块.集群模块. 命令模块.数据库模块.文件模块.资产模块.消息模块.监控模 ...

  3. ansible的介绍和一些基本模块介绍

    必须保证ansible工作站与各个node实现无密码ssh登入 ①:192.168.1.100 - 在你本地的工作站或服务器上安装 Ansible. ②:文件服务器1到代理服务器3 - 使用 192. ...

  4. ansible笔记(8):常用模块之系统类模块(二)

    ansible笔记(8):常用模块之系统类模块(二)user模块 user模块可以帮助我们管理远程主机上的用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作.此处我们介绍一些user模块的 ...

  5. ansible笔记(7):常用模块之系统类模块

    ansible笔记(7):常用模块之系统类模块cron模块 cron模块可以帮助我们管理远程主机中的计划任务,功能相当于crontab命令.在了解cron模块的参数之前,先写出一些计划任务的示例,示例 ...

  6. Ansible 1.5.9:archive 模块

    1.5.9:archive 模块 archive模块用于对远程主机上的文件进行打包/压缩,或对已经存在的包文件进行扩展. 官方文档:https://docs.ansible.com/ansible/l ...

  7. py文件 添加模块映射_Python模块的定义,模块的导入,__name__用法实例分析

    本文实例讲述了Python模块的定义,模块的导入,__name__用法.分享给大家供大家参考,具体如下: 相关内容: 什么是模块 模块的导入 模块的导入 自模块的导入 同级目录导入 不同级目录导入 目 ...

  8. ES6模块的import和export用法总结

    ES6之前已经出现了js模块加载的方案,最主要的是CommonJS和AMD规范.commonjs主要应用于服务器,实现同步加载,如nodejs.AMD规范应用于浏览器,如requirejs,为异步加载 ...

  9. python怎么定义名称_Python模块的定义,模块的导入,__name__用法实例分析

    本文实例讲述了Python模块的定义,模块的导入,__name__用法.分享给大家供大家参考,具体如下: 相关内容: 什么是模块 模块的导入 模块的导入 自模块的导入 同级目录导入 不同级目录导入 目 ...

最新文章

  1. 【数据安全案例】交警计算机系统再遭***,交通违法记录随意删除
  2. 通信系统之信道(三)
  3. Win10环境下搭建virtualenvwrapper-win
  4. 重温.NET下Assembly的加载过程 ASP.NET Core Web API下事件驱动型架构的实现(三):基于RabbitMQ的事件总线...
  5. Spring-依赖注入
  6. cm是什么域名_CM域名
  7. Thymeleaaf中设置属性值实现动态控制select是否可选
  8. ustc小道消息20211217
  9. 转录组分析_转录组+?分析+?实验=2区文章
  10. oracle 用多个常量表示某个字段的值
  11. FZU 1054 阅读顺序
  12. Mysql优化(出自官方文档) - 第三篇
  13. 速达5000维护服务器,财务软件速达5000为什么连不上服务器
  14. Silverlight载入动画(简易)
  15. Excel怎么批量删除开头文本
  16. 学嵌入式为什么要学Linux?
  17. TortoiseSVN is locked in another working copy
  18. 构建属于自己的 jre Docker 镜像
  19. 常见安全设备总结(IDS、IPS、上网行为管理、网闸、漏扫、日志审计、数据库审计、堡垒机等)
  20. 很久以前看到的很经典的小说

热门文章

  1. 信号处理中的反傅里叶变换(IFFT)原理
  2. 上传IPA包到App Store​
  3. c语言怎么调用sdl库函数,Go调用SDL2的C语言动态库
  4. 微信接口返回码对照表
  5. 英伟达显卡玩CF怎么提高帧数
  6. Linux系统软件安装及项目发布
  7. php-gtk2怎么用,PHP+GTK2 初体验,简单计算器客户端
  8. Adobe 2021正式版发布!全新的adobe2021和2020有哪些区别?
  9. java后端系统学习总结 01_java第五版 java初学笔记,由浅入深
  10. CCS 3.3 创建DSP TMSC6726B工程