zabbix3.4自定义监控项
一、实验环境
服务器角色 | ip | 主机名 |
---|---|---|
zabbix-server | 10.0.0.200 | zabbix-server |
zabbix-agent | 10.0.0.10 | test1 |
二、zabbix自定义监控项整体过程
2.1在对应的agent主机上编写自定义监控TCP的11种状态(在agent本地进行取值)
#进到/etc/zabbix/zabbix_agentd.d
[root@test1 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
#编写自定义取值文件
[root@test1 zabbix_agentd.d]# cat > tcp_state.conf <<EOF
UserParameter=tcp_state[*],ss -an|awk '{print $2}'|grep -i "$1"|wc -l
EOF
#重启zabbix-agent
[root@test1 zabbix_agentd.d]# systemctl restart zabbix-agent
2.2在server上使用zabbix_get获取对应主机的值
[root@test1 zabbix-server]# zabbix_get -s 10.0.0.10 -k tcp_state[estb]
2.3在web界面添加
监控项
将监控项制作了一个图形
将主机关联该 TCP状态的模板
三、创建zabbix自定义监控项
3.1自定义监控tcp11种状态(传参方式,在本地取值)
//创建自定义监控项文件
[root@test ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@test ~]# cat > tcp_state.conf <<EOF
UserParameter=tcp_state[*],ss -an|awk '{print $2}'|grep -i "$1"|wc -l
EOF
//重启zabbix-agent
[root@zabbix-agent ~]# systemctl restart zabbix-agent
//zabbix-server测试
[root@zabbix-server ~]# zabbix_get -s 10.0.0.10 -k tcp_state[LISTEN]
258
3.2在zabbix-web端先创建模板
配置-->模板-->创建模板
添加模板后可以在配置-->模板中看到刚新建的模板
3.3点击创建的模板中的监控项,不要点主机中的监控项,然后点击创建监控项
点击添加后就可以看到刚创建的监控项
3.4利用克隆快速添加监控项
点击刚创建的监控项
点击克隆
然后填写信息,再点击最下方添加
其余tcp状态依照克隆方法依次添加
tcp12种状态,tcp_state.conf
为在agent端 /etc/zabbix/zabbix_agentd.d
路径下创建的文件中自定义的
[root@test1 zabbix_agentd.d]# cat tcp_state.conf
UserParameter=tcp_state[*],ss -an|awk '{print $2}'|grep -i "$1"|wc -l
tcp_state[ESTABLISHED]
tcp_state[SYN-SENT]
tcp_state[SYN-RECV]
tcp_state[FIN-WAIT1]
tcp_state[FIN-WAIT2]
tcp_state[TIME-WAIT]
tcp_state[CLOSE]
tcp_state[CLOSE-WAIT]
tcp_state[LAST-ACK]
tcp_state[LISTEN]
tcp_state[CLOSING]
tcp_state[UNKNOWN]
在配置-->模板中可以看新建的模板的信息,此时的模板是新建的,与主机没有任何关系,除非主机链接这个模板,这里可以看到有刚创建的12项监控项,但是没有图形,需要手动再创建图形
3.5创建图形
配置-->模板-->创建的模板(这里为Linux TCP Status)-->图形-->创建图形
添加后的图形
配置-->模板-->新建的模板 可以看到刚创建的图形
配置-->主机-->模板
查看图形,监测中-->最新数据