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. 添加条件
    在这里插入图片描述

  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
今日推荐