阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CMDB机柜平台结合Zabbix告警展示

221次阅读
没有评论

共计 3289 个字符,预计需要花费 9 分钟才能阅读完成。

最近看了刘天斯老师的机柜展示平台,非常绚丽,而且有大屏显示的话也是能够体现运维价值的,这里就说下我最近在做的 CMDB 平台的一些数据:

CMDB 数据:

 机房,机柜,机柜电源,机柜位置,机房合同,合同到期时间,机房联系人。

 服务器,CPU, 硬盘,是否虚拟化,宿主机,raid 类型,内存。

 资产 ID,上架日期,下架记录,服务器代理商,代理商联系方式,服务器到保日期。

 IP 地址,MAC 地址,业务线,产品线,操作系统。

通信这块主要技术 json-rpc, 然后提供 Api 接口给程序调用,按照固定格式导入即可;硬件固定信息, 如 IP,MAC,硬盘等信息,通过自动采集的 API POST 方式加入到数据表。像机房信息,机柜之类的可以给机房抄送一份 excel 表格然后直接导入即可。

机房服务器展示:通过把刘天斯老师机柜暂时平台的前端拿过来,然后结合到表结构里面展示;在故障告警的时候,留有一个告警接口的 API,通过 zabbix 把告警数据发送到运维平台;运维平台入库告警展示: 下面是前端简单展示效果,具体操作如下:

 

CMDB 机柜平台结合 Zabbix 告警展示

 

前端机柜生成效果显示: 闪烁效果直接获取厂商的 gif 文件调用即可,机柜命名方式比如下面的:5-6,5- 7 就分别表示第五排第六,第七个机柜:

CMDB 机柜平台结合 Zabbix 告警展示

上面是正常显示,当出现故障时候:就结合 zabbix 告警脚本,发送过去给接口,故障如下:

CMDB 机柜平台结合 Zabbix 告警展示

机房展示效果:

 

CMDB 机柜平台结合 Zabbix 告警展示

鼠标移动到机柜就显示服务器的相关信息:

CMDB 机柜平台结合 Zabbix 告警展示

zabbix 的告警脚本并且发送状态到运维平台,并且更改服务器状态:

[root@controller alertscripts]# cat zabbix_alert.py 
#!/usr/bin/python
#coding:utf-8 
import requests,json 
import smtplib
from email.mime.text import MIMEText
import sys 
   
# 邮箱服务器地址
mail_host = 'smtp.163.com'
# 邮箱用户名
mail_user = 'xxxxx@163.com'
# 邮箱密码
mail_pass = 'xxxxxx123456'
mail_postfix = '163.com'
   
def send_mail(to_list,subject,content):
    me = mail_user+"<"+mail_user+"@"+mail_postfix+">"
    msg = MIMEText(content)
    msg['Subject'= subject
    msg['From'= me
    msg['to'= to_list 
   
    try:
        = smtplib.SMTP()
        s.connect(mail_host)
        s.login(mail_user,mail_pass)
        s.sendmail(me,to_list,msg.as_string())
        s.close()
        return True
    except Exception,e:
        print str(e)
        return False
def alert(message):
    headers = {"Content-Type""application/json"}
    data = {}
    res = {}
    data['status'= message 
    res['params']=data
    res['jsonrpc'= "2.0"
    res["id"= 1
    res["method"]= "alert.turn"
    url = "http://192.168.63.216:2000/api"
    = requests.post(url, headers=headers,json=res)
   
if __name__ == "__main__":
    send_mail(sys.argv[1], sys.argv[2], sys.argv[3])
    alert(sys.argv[2])

后端返回状态改变之后直接入库修改,我这边只是判断是否主题是 PROBLEM 或者 OK:

前端代码可以按照刘天斯老师的然后自己修改成 jquery 即可,前端可以去自由发挥,如下简单样例:

<table border="0" cellpadding="1" cellspacing="0" height="440" width="99%">   
<tbody><tr>   
<td class="jgtable" align="center" height="30" valign="bottom"><font class="jgtitle">01</font></td></tr>     
<td class="jgtable" align="center" height="30" valign="bottom">&nbsp;   
</td>   
</tr>   
<tr>   
<td class="jgtable" align="center" height="30" valign="bottom">&nbsp;   
</td>   
</tr>   
<tr>   
<td class="jgtable" align="center" height="30" valign="bottom">&nbsp;   
</td>   
</tr>   
<tr>   
<td class="jgtable" align="center" height="30" valign="bottom">&nbsp;   
</td>   
</tr>   
<tr>   
<td class="jgtable" align="center" height="30" valign="bottom">&nbsp;   
</td>   
</tr>   
</tbody></table>

一些 Zabbix 相关教程集合

Ubuntu 14.04 下 Zabbix2.4.5 源码编译安装  http://www.linuxidc.com/Linux/2015-05/117657.htm

CentOS 7 LNMP 环境搭建 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140134.htm

Ubuntu 16.04 安装部署监控系统 Zabbix2.4  http://www.linuxidc.com/Linux/2017-03/141436.htm

CentOS 6.6 搭建 Zabbix 3.0.3 过程  http://www.linuxidc.com/Linux/2017-04/142839.htm

Zabbix 监控安装部署及警报配置  http://www.linuxidc.com/Linux/2017-03/141611.htm

Ubuntu 16.04 下安装部署 Zabbix3.0  http://www.linuxidc.com/Linux/2017-02/140395.htm

CentOS 6.3 下 Zabbix 监控 apache server-status http://www.linuxidc.com/Linux/2013-05/84740.htm

CentOS 7 下 Zabbix 3.0 安装详解 http://www.linuxidc.com/Linux/2017-03/141716.htm

64 位 CentOS 6.2 下安装 Zabbix 2.0.6   http://www.linuxidc.com/Linux/2014-11/109541.htm

CentOS 7.2 下搭建 Zabbix 3.2 实践图解教程  http://www.linuxidc.com/Linux/2017-03/142077.htm

ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-05/143371.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3289字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中