一、需求

线上机器比较多,之前用excel统计过一次,用ansible批量执行脚本,然后根据展示信息来,手功录入到excel,效率可想而知。其他部门要查看主机信息,无法第一时间提供,所以,就在想,能不能以静态页面展示出来,放在apache的htdoc目录下。后面找到一个ansible-cmdb,很好解决了这个问题!

二、Ansible配置管理数据库

Ansible-cmdb将收集输出并将其转换成静态HTML概述页面包含系统配置信息,它支持多个模板(html, txt_table, csv, json output, markdown) 和通过自定义数据收集扩展信息,为每个主机显示组,主机变量,找出依据。

三、步聚

1、安装

#rpm-ivhansible-cmdb-1.12-2.noarch.rpm

2、为主机生成输出文件

#mkdirout#ansible-msetup--treeout/all


3、生成CMDB概述页

ansible-cmdb-i/etc/ansible/hostsout/>overview.html

注意了,这个/etc/ansible/hosts,其实,你可自定义的,像我的,是按业务来区分的,如

[cust.megacorp]db1.dev.megacorp.comdtap=devcomment="Olddatabaseserver"db2.dev.megacorp.comdtap=devcomment="Newdatabaseserver"test.megacorp.comdtap=testacc.megacorp.comdtap=acccomment="24/7support"megacorp.comdtap=prodcomment="HostingbyFoo"ext_id="SRV_10029"[os.redhat]megacorp.comacc.megacorp.comtest.megacorp.comdb2.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://down.51cto.com/data/2367459