10.6. zabbix监控项(items)
10.6.1. 一般监控项
监控项一般可以配置在模版、主机。或者发现时使用的监控内容。
10.6.1.1. 网速监控
10.6.1.2. 总流量监控
- 如果统计每天的网络流量方法:
监控网卡总流量;
每天凌晨定时清空网卡流量统计;
注意
- 清空网卡流量统计信息的方法:
yum install ethtool -y
ethtool -i eth0查网卡类型
清空网卡流量统计信息:
ifconfig eth0 down
modprobe -r e1000
modprobe e1000
ifconfig eth0 up
zabbix客户端和服务器默认可以统计网卡接口的接收和发送数据和的信息。如果要分别统计接收和发送的数据,需要自定义key值来监控。
下面是监控网卡总流量信息配置:
下面不再详细介绍item创建过程。而是重点介绍流量接口监控创建过程。
10.6.1.3. 自定义流量接收/发送数据监控
在zabbix客户端配置文件中添加:
1UserParameter=network.statistic.in[*],/sbin/ifconfig $1 | awk -F '[ :]' '{if(NR==8) print $$13}'
2UserParameter=network.statistic.out[*],/sbin/ifconfig $1 | awk -F '[ :]' '{if(NR==8) print $$19}'
zabbix服务器创建item并相应的key是 network.statistic.out[eth1] 和 network.statistic.in[eth1]
然后创建监控的图形展示即可。
10.6.2. 自定义监控内容
zabbix-agent客户端配置文件
1/etc/zabbix/zabbix_agentd.conf
1vi /etc/zabbix/zabbix_agentd.conf
295行
1UserParameter=
具体配置方法参考:
1### Option: UserParameter
2# User-defined parameter to monitor. There can be several user-defined parameters.
3# Format: UserParameter=<key>,<shell command>
4# See 'zabbix_agentd' directory for examples.
举例:
方法1
1UserParameter=net.ip[*],/sbin/ifconfig $1 | awk -F '[ :]' '{if(NR==2) print $$13}'
zabbix服务器测试获取客户端数据:
1[root@zzjlogin ~]# zabbix_get -s 192.168.161.134 -k "net.ip[eth1]"
2192.168.161.134
3[root@zzjlogin ~]# zabbix_get -s 192.168.161.134 -k "net.ip[lo]"
4127.0.0.1
备注
zabbix_get命令需要安装zabbix-get软件包才能有这个测试命令。
方法2
1UserParameter=memory.usage[*],/bin/cat /proc/meminfo | awk '/^$1:/{print $$2}'
注意
命令路径要用绝对路径;
命令用命令自己的
$n时需要用两个$符号。 一个$的参数是通过*传入的参数。
1[root@zzjlogin ~]# zabbix_get -s 192.168.161.134 -k "memory.usage[MemFree]"
2693216
3[root@zzjlogin ~]# zabbix_get -s 192.168.161.134 -k "memory.usage[MemTotal]"
41004348
10.6.3. 监控nginx
1cat >>/etc/nginx/nginx.conf<<EOF
2##status
3server{
4 listen 80;
5 #server_name status.mysite.com;
6 location / {
7 stub_status on;
8 access_log off;
9 allow 192.168.161.0/24;
10 allow 127.0.0.1;
11 deny all;
12 }
13}
14EOF
1[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" |awk '/^Active/ {print $NF}'
22
3[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" |awk '/^Active/ {print $NF}'
41
5
6[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | grep "Reading"
7Reading: 0 Writing: 1 Waiting: 0
8[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | grep "Reading"|cut -d " " -f2
90
10[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | grep "Reading"|cut -d " " -f4
111
12[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | grep "Reading"|cut -d " " -f6
130
14[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | grep "Waiting"|cut -d " " -f6
150
16
17[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $1}'
1822
19[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $2}'
2023
21[root@zzjlogin ~]# /usr/bin/curl -s "http://192.168.161.134:80/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $3}'
2225
注意
/etc/zabbix/zabbix_agentd.d/ 目录下的conf配置文件会自动以 UserParameter 方式包含在主配置文件中。
1cat >>/etc/zabbix/zabbix_agentd.d/nginx_parameters.conf <<EOF
2
3UserParameter=Nginx.active[*],/usr/bin/curl -s "http://$1:$2/status" |awk '/^Active/ {print $$NF}'
4
5UserParameter=Nginx.reading[*],/usr/bin/curl -s "http://$1:$2/status" | grep "Reading"|cut -d " " -f2
6
7UserParameter=Nginx.writing[*],/usr/bin/curl -s "http://$1:$2/status" | grep "Writing"|cut -d " " -f4
8
9UserParameter=Nginx.waiting[*],/usr/bin/curl -s "http://$1:$2/status" | grep "Waiting"|cut -d " " -f6
10
11UserParameter=Nginx.accepted[*],/usr/bin/curl -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$1}'
12
13UserParameter=Nginx.handled[*],/usr/bin/curl -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$2}'
14
15UserParameter=Nginx.requests[*],/usr/bin/curl -s "http://$1:$2/status" | awk '/^[ \t]+[0-9]+[ \t]+[0-9]+[ \t]+[0-9]+/ {print $$3}'
16
17EOF