前言
其实这个版本与第一个 http://www.azjoy.com/2014/07/05/yunweipingtai/ 相比已经是脱胎换骨了。
该版本后端采用Django
,前端用BootStrap
。
底层还是用的saltsatck
、saltAPI
、zabbix
、zabbixAPI
、git
等,毕竟整体架构是不能随随便便就改变的。下面简单的介绍下原理和功能。
配置管理
配置管理主要用saltstack来做,与saltstack的通信用saltAPI来完成。”执行salt命令“ 的功能就是在WEB界面执行saltstack命令(安全简单选择预置的命令就可以了,关键是命令可以预置这样在应用层就防止了误操作,虽然我们在salt的代码层也做了类似的处理)。”配置下发“ 这个基于salt命令,依次执行salt命令就好了。
资产管理
资产管理主要分为硬件资产和软件资产,硬件资产由saltsatck的grains来采集,软件资产的收集由saltstack下发执行采集脚本来完成。所有的这些操作都自动完成(采集、入库、展示)。打码的地方太多我用PS来打吧!
版本发布
版本发布实现功能 a、能从操作者本地上传zip更新包,更新到正式环境或测试环境。如果更新到测试环境经过测试后没有问题再推送到正式环境。也可以直接更新到正式环境。 b、开发人员提供包名后,根据包名从ftp服务器下载zip更新包,更新到正式环境或测试环境。如果更新到测试环境后没有问题再推送到正式环境。也可以直接更新到正式环境。 c、能够回滚到上一个版本(测试或正式环境)。
数据展示
主要做的是Zabbix监控数据的展示,分类、分应用、分主机。原始数据由Zabbix采集,然后另外的机器用ZabbixAPI向Zabbix取监控数据存放到rrd文件,最后由RRDTool绘图展示监控数据。 硬件监控数据展示分类沿用Zabbix自身的分类,软件应用监控数据的分类采用再绘图时的自定义的分类。 点击一台主机,监控数据默认展示的是1天的监控数据。
点击图可以进入该监项在过去1天、1周、1月、1年的监控图,默认30秒刷新一次(也可以手动刷新)
点击1天的监控图,可以进入该监控项2小时的监控图,默认30秒刷新,也可以手动刷新。