当前位置:   article > 正文

zabbix监控linux连接数,zabbix 监控 TCP 连接数

zabbix报tcp链接队列已满

第一步:写监控监控,脚本如下#!/bin/bash

############################################################

# $Name:         zabbix_linux_plugins.sh

# $Version:      v1.0

# $Function:     zabbix plugins

# $Author:       Jason Zhao

# $organization: www.unixhot.com

# $Create Date:  2014-08-10

# $Description:  Monitor Linux Service Status

############################################################

tcp_status_fun(){

TCP_STAT=$1

#netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,state[key]}' > /tmp/netstat.tmp

ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/netstat.tmp

TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/netstat.tmp | cut -d ' ' -f2)

if [ -z $TCP_STAT_VALUE ];then

TCP_STAT_VALUE=0

fi

echo $TCP_STAT_VALUE

}

main(){

case $1 in

tcp_status)

tcp_status_fun $2;

;;

*)

echo $"Usage: $0 {tcp_status key}"

esac

}

main $1 $2 $3

第二步:把脚本放在需要监控的服务器上(即zabbix的客户端),并且在zabbix客户端配置文件中应用它。[root@localhost zabbix_agent.conf.d]# ll

total 4

-rwxr-xr-x 1 root root 2776 May  2 12:47 zabbix_linux_plugin.sh

[root@localhost zabbix_agent.conf.d]# pwd

/usr/local/zabbix/etc/zabbix_agent.conf.d

[root@localhost zabbix_agent.conf.d]#

[root@localhost zabbix_agent.conf.d]# egrep -v '^$|#' ../zabbix_agentd.conf

LogFile=/tmp/zabbix_agentd.log

Server=192.168.10.11

ServerActive=127.0.0.1

Hostname=192.168.10.12

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

UserParameter=mysql_alive, mysqladmin -uroot  -S /var/lib/mysql/mysql.sock ping |grep -c alive

###下面这一行就是引用刚才的监控脚本

UserParameter=linux_status[*],/usr/local/zabbix/etc/zabbix_agent.conf.d/zabbix_linux_plugin.sh "$1" "$2"

[root@localhost zabbix_agent.conf.d]#

第三步:重启zabbix客户端,并且在zabbix服务器中测试,是否能够获取这个key[root@localhost zabbix_agent.conf.d]# /etc/init.d/zabbix_agentd restart

Shutting down zabbix_agentd:                               [  OK  ]

Starting zabbix_agentd:                                    [  OK  ]

[root@localhost zabbix_agent.conf.d]#

[root@zabbix ~]# /usr/local/zabbix/bin/zabbix_get -s 192.168.10.12 -k linux_status[tcp_status,ESTAB]

2

[root@zabbix ~]#

第四部:在zabbx服务端的web中添加对于tcp链接数的监控项目。

003b81d5141d7d42f65d229e299124a8.png

主要就是注意键值的编写:键值中的键linux_status[tcp_status,ESTAB] ,其中tcp_status也就是$1,ESTAB也就是$2。[root@localhost zabbix_agent.conf.d]# egrep -v '^$|#' ../zabbix_agentd.conf

LogFile=/tmp/zabbix_agentd.log

Server=192.168.10.11

ServerActive=127.0.0.1

Hostname=192.168.10.12

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

UserParameter=mysql_alive, mysqladmin -uroot  -S /var/lib/mysql/mysql.sock ping |grep -c alive

UserParameter=linux_status[*],/usr/local/zabbix/etc/zabbix_agent.conf.d/zabbix_linux_plugin.sh "$1" "$2"

重复添加tcp的11个监控状态,仅仅需要修改上面图片中的监控名称,已经键值即可。

80e99e6860474d2fbe69c2e014cd990d.png

第五步:添加监控图像

079080248ba5992034caa05d9ddcb610.png

完成

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/156378?site
推荐阅读
相关标签
  

闽ICP备14008679号