Zabbix监控案例(一)监控tcp连接数据

Zabbix监控案例(一)监控tcp连接数据

  1. 安装agent,过程略
    (下面是apt安装,如果是编译安装,请注意路径)

  2. 监控脚本

cd /etc/zabbix/zabbix_agentd.conf.d/
vim check_tcp.sh
#!/bin/bash

tcp_conn_status(){
        TCP_STAT=$1
        ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/tcp_conn.txt
        TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/tcp_conn.txt | 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_conn_status $2;	
		;;
		*)
		echo "$0 + tcp_status + STATUS"
	esac
}

main $1 $2
  1. 授予权限
chmod a+x check_tcp.sh
chown zabbix.zabbix check_tcp.sh
chown zabbix.zabbix /tmp/tcp_conn.txt
  1. 创建conf文件引用脚本
cd /etc/zabbix/zabbix_agentd.conf.d/
chown zabbix.zabbix check.conf
vim check.conf
UserParameter=check_tcp[*],/etc/zabbix/zabbix_agentd.conf.d/check_tcp.sh "$1" "$2"
  1. 如果是编译安装,还需要配置agent 配置文件导入自定义配置那文件
vim /etc/zabbix/zabbix_agentd.conf
263 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
  1. 重启agent服务
systemctl restart zabbix-agent
  1. 在被监控服务器为zabbix 用户授权:
vim /etc/sudoers
21 zabbix ALL =(ALL) NOPASSWD: ALL
  1. 测试获取数据:
# zabbix_get -s 192.168.99.23 -p 10050 -k "check_tcp["tcp_status","LISTEN"]"
11
  1. 创建模板并导入监控项
    在这里插入图片描述

在这里插入图片描述

  1. 点击监控项
    在这里插入图片描述

  2. 添加监控项
    在这里插入图片描述

  3. 添加
    在这里插入图片描述

  4. 创建图形
    在这里插入图片描述

  5. 在图形中添加监控项
    在这里插入图片描述

  6. 创建触发器
    在这里插入图片描述

  7. 添加表达式
    在这里插入图片描述

  8. 添加条件
    在这里插入图片描述

    扫描二维码关注公众号,回复: 9548990 查看本文章
  9. 添加成功
    在这里插入图片描述

  10. 添加主机,如果有可以以现有的主机更改
    在这里插入图片描述

  11. 模板选择我们刚刚创建的模板
    在这里插入图片描述

  12. 查看图形有没有数据
    在这里插入图片描述

想要其它的TCP状态,需要修改check_tcp["tcp_status","LISTEN"]LISTEN这个值
如想要监控TIME-WAIT的值,修改成check_tcp["tcp_status","TIME-WAIT"]

发布了254 篇原创文章 · 获赞 346 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/weixin_42758707/article/details/101228773