重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
引言
成都创新互联主营信丰网站建设的网络公司,主营网站建设方案,App定制开发,信丰h5成都微信小程序搭建,信丰网站营销推广欢迎信丰等地区企业咨询在监控生产环境的服务的时候,通常需要对多个端口进行监控,如果我们手动一个一个的添加,这将是一件很麻烦的事情,为了减少这样的情况,我们采用批量添加监控端口的方法,这是非常常见的需求,zabbix也是支持这种方式的,需要使用zabbix的Discovery功能来实现,下面小编就给大家分享一下批量添加端口的占用。
使用Zabbix监控如何监控服务器端口状态,大概的流程:zabbix监控服务自带端口监控的监控项,所以需要我们自己手动定义所监控的item,客户端获取的端口列表通过agent传送到服务端,
只需在服务端进行端口监控模板配置,然后自定义监控图形,添加监控项即可!
下面就来给大家分享一下批量添加端口的方法!
第一:自动扫描端口并监控报警
1.编写脚本扫描端口
vim check_port.py #!/usr/bin/env python import os import json portlist = [] new_port_list = [] port_dict = {"data":None} cmd = '''netstat -tnlp|egrep -i "$1"|awk {'print $4'}|''' cmd += '''awk -F':' '{if ($NF~/^[0-9]*$/) print $NF}'|sort -n| uniq 2>/dev/null''' auto_localport = os.popen(cmd).readlines() for ports in auto_localport: new_port = ports.strip() portlist.append(new_port) for port in portlist: pdict = {} pdict["{#TCP_PORT}"] = port new_port_list.append(pdict) port_dict["data"] = new_port_list jsonStr = json.dumps(port_dict,sort_keys=True,indent=4) #python3 #print(jsonStr) #python2 print jsonStr