zabbix 监控Linux 主机TCP连接数

环境: Linux 主机 

步骤: 1,在linux 主机上写个脚本执行查询当前tcp 连接的参数输出到相应值得文本中

             2,建立个任务计划,每分钟执行一次

             3, Linux 主机上的 zabbix 客户端配置文件定义好自定义key

             

1, 在/home/zabbix/sh/  建立一个tcpconnection 目录,建立一个net.py 脚本,内容在文章最底下贴出

2,建立任务计划

*/1 * * * *   /usr/bin/python2.6  /home/zabbix/sh/tcpconnection/net.py

3,配置Linux 主机上面的zabbix 客户端配置文件zabbix_agentd.conf

UserParameter=SYN_RECV,/bin/cat /home/zabbix/sh/tcpconnection/SYN_RECV
UserParameter=ESTABLISHED,/bin/cat /home/zabbix/sh/tcpconnection/ESTABLISHED
UserParameter=FIN_WAIT1,/bin/cat /home/zabbix/sh/tcpconnection/FIN_WAIT1
UserParameter=FIN_WAIT2,/bin/cat /home/zabbix/sh/tcpconnection/FIN_WAIT2
UserParameter=TIME_WAIT,/bin/cat /home/zabbix/sh/tcpconnection/TIME_WAIT

4,重启zabbix_agentd 服务

/etc/init.d/zabbix_agentd restart


5,net.py 脚本内容

#!/usr/bin/env python


import os




def main():
    data = get_data()




    SYN_RECV = data.count('SYN_RECV')
    ESTABLISHED = data.count('ESTABLISHED')
    FIN_WAIT1 = data.count('FIN_WAIT1')
    FIN_WAIT2 = data.count('FIN_WAIT2')
    TIME_WAIT = data.count('TIME_WAIT')
    http = data.count('80')
    https = data.count('440')

    write_file('SYN_RECV', SYN_RECV)
    write_file('ESTABLISHED', ESTABLISHED)
    write_file('FIN_WAIT1', FIN_WAIT1)
    write_file('FIN_WAIT2', FIN_WAIT2)
    write_file('TIME_WAIT', TIME_WAIT)
    write_file('http', http)
    write_file('https', https)


    print 'ESTABLISHED', ESTABLISHED
    print 'SYN_RECV', SYN_RECV
    print 'FIN_WAIT1', FIN_WAIT1
    print 'FIN_WAIT2', FIN_WAIT2
    print 'TIME_WAIT', TIME_WAIT
    print 'http', http
    print 'https', https

def get_data():
    a = os.popen('netstat -an')
    data = a.read()
    return data


def write_file(filename, value):
    BASE_DIR = os.path.dirname(os.path.abspath(__file__))
    f=open('%s/%s' %(BASE_DIR, filename),"w")
    f.write(str(value))
    f.close()


if __name__ == '__main__':
    main()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值