Zabbix监控TCP状态

小柒助手 Zabbix637.8K字数 2363阅读7分52秒阅读模式

监控操作步骤:

1、编写脚本

2、上传脚本到指定位置

3、修改zabbix_agent配置文件

4、zabbix_server的WEB界面导入模版

5、主机关联

1)编辑zabbix_agent配置文件,添加以下内容

[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_agentd.conf

UserParameter=tcp.state[*],/data/scripts/auto_detection_tcp_state.sh $1

#保存退出

2)重启zabbix_agentd服务

[root@localhost ~]# service zabbix_agentd restart

3)下载脚本文件(获取监控值)

[root@localhost ~]# cd /data/scripts

[root@localhost scripts]# wget https://mirrors.yangxingzhen.com/shell/auto_detection_tcp_state.sh

[root@localhost scripts]# cat auto_detection_tcp_state.sh

#!/bin/bash
#Date:2019-8-18 21:05:46
#by author Yangxz
#TCP连接数及状态
 
if [ $# -ne 1 ];then
echo -e "\033[32mUsage: sh $0 {ESTABLISHED|LISTEN|TIME_WAIT|CLOSED|CLOSE_WAIT|CLOSING|FIN_WAIT1|FIN_WAIT2|LAST_ACK|SYN_RECV|SYN_SENT}\033[0m"
exit 1
fi
 
case $1 in
#socket已经建立连接
ESTABLISHED)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "ESTABLISHED")
echo $result
;;
#监听状态
LISTEN)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "LISTEN")
echo $result
;;
#表示收到了对方的FIN报文,并发送出了ACK报文,等待2MSL后就可回到CLOSED状态
TIME_WAIT)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "TIME_WAIT")
echo $result
;;
#socket没有被使用,无连接
CLOSED)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "CLOSED")
echo $result
;;
#等待关闭连接
CLOSE_WAIT)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "CLOSE_WAIT")
echo $result
;;
#服务器端和客户端都同时关闭连接
CLOSING)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "CLOSING")
echo $result
;;
#套接字已关闭,连接正在关闭
FIN_WAIT1)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "FIN_WAIT1")
echo $result
;;
#连接已关闭,套接字正在等待从远程端关闭
FIN_WAIT2)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "FIN_WAIT2")
echo $result
;;
#远端关闭,当前socket被动关闭后发送FIN报文,等待对方ACK报文
LAST_ACK)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "LAST_ACK")
echo $result
;;
#接收到SYN报文
SYN_RECV)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "SYN_RECV")
echo $result
;;
#已经发送SYN报文
SYN_SENT)
result=$(netstat -an | awk '/^tcp/ {print $0}'|grep -wc "SYN_SENT")
echo $result
;;
*)
echo -e "\033[32mUsage: sh $0 {ESTABLISHED|LISTEN|TIME_WAIT|CLOSED|CLOSE_WAIT|CLOSING|FIN_WAIT1|FIN_WAIT2|LAST_ACK|SYN_RECV|SYN_SENT}\033[0m"
esac

4)脚本授权

[root@localhost scripts]# chmod +x auto_detection_tcp_state.sh

5)验证server端验证是否能获取agent端的key值

#使用zabbix_get命令获取key值

Zabbix监控TCP状态

Zabbix监控平台配置

1、下载监控模板文件

模板附件下载:

此处为隐藏的内容
发表评论并刷新,方可查看

2、导入TCP状态监控模板

进入后台->配置->模板->导入(右上角)->选择下载的模板文件->最后点击导入 。

Zabbix监控TCP状态

至此,TCP状态监控模板已经导入到Zabbix中。

Zabbix监控TCP状态

3、关联模板

需要把TCP状态监控模板链接到你的监控主机上,进入后台->配置->点击你的主机->模板->选择刚才导入模板,点击添加,最后点击更新即可。

Zabbix监控TCP状态

4、效果图展示

Zabbix监控TCP状态

至此,Zabbix监控TCP状态就完成了。。

继续阅读
若文章图片、下载链接等信息出错,请在评论区留言反馈,博主将第一时间更新!如果喜欢,请打赏支持本站,谢谢大家!
  • 微信号
  • 微信扫一扫加我!
  • weinxin
  • 微信公众号
  • 微信扫一扫关注我!
  • weinxin
广告也精彩
小柒助手
  • 本文由 发表于 2020年4月25日 10:56:13
  • 除非特殊声明,本站文章均为原创,转载请务必保留本文链接
Grafana+Zabbix使用教程 Grafana

Grafana+Zabbix使用教程

前言 Grafana是一款开源的可视化软件,可以搭配数据源实现一个数据的展示和分析;Grafana功能强大,有着丰富的插件,本文将使用Grafana搭配Zabbix的数据源进行资源监控的可视化展...
Zabbix监控Nginx性能状态 Zabbix

Zabbix监控Nginx性能状态

Zabbix监控Nginx性能状态 Nginx在生产环境中的应用越来越广泛,所以需要对nginx的性能状态做一些监控,从而发现故障隐患,Ngnx的监控指标可分为:基本活动指标,错误指标,性能...
Zabbix监控php-fpm性能状态 PHP

Zabbix监控php-fpm性能状态

废话不多说,需要Zabbix监控php-fpm性能状态,首先你需要开启php-fpm的状态页,请参考文章《开启php-fpm状态页》,然后我一步一步来完成Zabbix对php-fpm的监控。 ...
评论  6  访客  5  作者  1
    • 3170337
      3170337 2

      佩服佩服!!!

        • 小柒助手
          小柒助手

          @ 3170337 :razz: 欢迎关注我另一个博客:https://www.yangxingzhen.com/

        • mn
          mn 1

          快审核呀~~~

          • mn
            mn 1

            评论完也看不到啊!

            • zoom
              zoom 1

              谢谢

              • Yang2635
                Yang2635 0

                谢谢教程

              匿名

              发表评论

              匿名网友 填写信息

              :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: