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

简介:

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

CMDB数据:

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

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

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

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


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


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


wKioL1fWYPLR76bUAACZ7urAiuo679.png


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


wKiom1fWYUWze3u_AAGD2oFdS4g571.png


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


wKiom1fWYzTg_MjQAAAyh_p45IM220.png

机房展示效果:


wKioL1fWYl7AB6ZsAAGQI8GmX6o434.png


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

wKiom1fWY37iruSNAAFt8tVLuXU969.png


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


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
[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 :
         s  =  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"
     r  =  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即可,前端可以去自由发挥,如下简单样例:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
< 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 >









本文转自 小罗ge11 51CTO博客,原文链接:http://blog.51cto.com/xiaoluoge/1852029,如需转载请自行联系原作者
目录
相关文章
|
监控 关系型数据库 机器人
小白带你学习linux的监控平台zabbix
小白带你学习linux的监控平台zabbix
795 0
|
监控 机器人 Python
Zabbix实现钉钉群告警
Zabbix实现钉钉群告警
一文吃透企业级elk技术栈:9. zabbix结合logstash告警
一文吃透企业级elk技术栈:9. zabbix结合logstash告警
|
运维 监控 前端开发
Zabbix告警分析新革命:DeepSeek四大创新场景助力智能运维
面对日益复杂的IT环境,高效分析监控数据并快速响应成为运维的关键挑战。本文深入探讨了DeepSeek与Zabbix结合的创新应用,包括一键式智能告警分析、Zabbix文档知识库助手及钉钉告警增强功能。通过部署指南和实用脚本,展示了如何提升故障排查效率,为运维工程师提供高效解决方案。
1756 5
|
人工智能 运维 监控
Zabbix告警分析新纪元:本地DeepSeek大模型实现智能化告警分析
本文由Zabbix中国峰会演讲嘉宾张世宏撰写,介绍如何通过集成Zabbix监控系统与深度求索(DeepSeek)AI助手,构建智能化告警处理方案。该方案利用Webhook机制传递告警信息,借助DeepSeek的智能分析能力,帮助运维团队快速识别问题根源并提供解决方案。文章详细描述了技术架构、环境搭建、Webhook配置及实际案例,展示了AI在运维领域的应用前景和优势。
3280 0
|
存储 缓存 监控
|
监控 前端开发 Linux
分布式监控平台—zabbix
分布式监控平台—zabbix
1023 1
|
监控 Docker 容器
通过docker-compose一键部署zabbix监控平台
通过docker-compose一键部署zabbix监控平台
2871 1
|
监控 关系型数据库 MySQL
Zabbix监控平台环境部署
Zabbix监控平台环境部署
437 0
|
监控 NoSQL Redis
【Zabbix】Zabbix微信告警配置演示(下)
【Zabbix】Zabbix微信告警配置演示(下)
574 0

热门文章

最新文章

推荐镜像

更多