一、需求
线上机器比较多,之前用excel统计过一次,用ansible批量执行脚本,然后根据展示信息来,手功录入到excel,效率可想而知。其他部门要查看主机信息,无法第一时间提供,所以,就在想,能不能以静态页面展示出来,放在apache的htdoc目录下。后面找到一个ansible-cmdb,很好解决了这个问题!
二、Ansible配置管理数据库
Ansible-cmdb将收集输出并将其转换成静态HTML概述页面包含系统配置信息,它支持多个模板(html, txt_table, csv, json output, markdown) 和通过自定义数据收集扩展信息,为每个主机显示组,主机变量,找出依据。
三、步聚
1、安装
# rpm -ivh ansible-cmdb-1.12-2.noarch.rpm
2、为主机生成输出文件
#mkdir out #ansible -m setup --tree out/ all
3、生成CMDB概述页
ansible-cmdb -i /etc/ansible/hosts out/ > overview.html
注意了,这个/etc/ansible/hosts,其实,你可自定义的,像我的,是按业务来区分的,如
[cust.megacorp] db1.dev.megacorp.com dtap=dev comment="Old database server" db2.dev.megacorp.com dtap=dev comment="New database server" test.megacorp.com dtap=test acc.megacorp.com dtap=acc comment="24/7 support" megacorp.com dtap=prod comment="Hosting by Foo" ext_id="SRV_10029" [os.redhat] megacorp.com acc.megacorp.com test.megacorp.com db2.dev.megacorp.com [os.debian] db1.dev.megacorp.com
4、把overview.html放到apache下htodc目录下
# scp ./overview.html /usr/local/apache2/htdocs/zabbix/
这里,可在第3步,定时crontab执行任务
5、页面展示
6、有兴趣,可以下载原码看看
本文出自 “散人” 博客,请务必保留此出处http://zouqingyun.blog.51cto.com/782246/1750827
利用ansible-cmdb统计主机配置信息并以web页面展出来
原文地址:http://zouqingyun.blog.51cto.com/782246/1750827