Zabbix 自定义监控项与78个server item
zabbix自定义监控
- zabbix-agent 获取数据,然后定义,交给zabbix-server端
1.指定监控的内容
#监控服务器登录用户的数量
[root@web01 ~]# w | awk 'NR==1 {print $(NF-6)}'
1
2.客户端配置监控项
1)客户端配置文件
[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.conf
2)定义监控项语法
#语法:
Format:
UserParameter=<key>,<shell command>
#官方示例
[root@web01 ~]# tail -n 2 /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql -V
3)设置自定义监控项
[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.d/login_user.conf
UserParameter=login_usernumber,w | awk 'NR==1 {print $(NF-6)}'
4)重启客户端
[root@web01 ~]# systemctl restart zabbix-agent.service
3.客户端验证
[root@web01 ~]# zabbix_agentd -t login_usernumber
login_usernumber [t|4]
[root@web01 ~]# zabbix_agentd -p | grep login_usernumber
login_usernumber [t|4]
#得到的结果,前面的字母含义
d #带小数部分的数字
m #不支持,只有在这种模式下,查询日志才可能是活动的(如日志监视项或需要多个收集值的项)引起的。权限问题或不正确的用户参数可能
s #文本。最大长度不受限制。
t #文本。最大长度不受限制。
u #无符号整数
4.服务端获取值
[root@zabbix ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-get-4.0.1-1.el7.x86_64.rpm
#zabbix_get语法
zabbix_get -s host-name-or-IP [-p port-number] [-I IP-address] -k item-key
-s #主机名或者IP地址
-p #端口
-I #IP地址
-k #监控项的key名称
[root@zabbix ~]# zabbix_get -s 172.16.1.7 -p 10050 -k login_usernumber
4
5.web页面添加监控项
zabbix自定义阈值(触发器)
# 优化触发器名称
使用zabbix内置变量,来优化触发器的名称,此处使用的是
主机名变量:{HOST.NAME}
IP地址变量:{HOST.IP}
注意空格,并且重新触发 触发器才会生效
也就是得下次报警才会生效
自定义告警
1.邮件方式
1.配置---动作---启用里面的动作
2.点击动作---操作
#默认标题:
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
#消息内容:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
3.点击动作---恢复操作
#默认标题:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
#消息内容:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
4.更新
5.管理---报警媒介类型---mail
smtp.qq.com
465
qq.com
1240206455@qq.com
SSL/TLS
勾选
用户名和密码
1240206455@qq.com
QQ邮箱授权码
6.更新
7.配置收件人
头像---报警媒介---添加
填写收件人
根据职位设置接收告警的级别
2.微信方式
1)注册企业微信
2)配置脚本
#1.查看脚本存放位置
[root@zabbix ~]# grep 'script' /etc/zabbix/zabbix_server.conf
# AlertScriptsPath=${datadir}/zabbix/alertscripts
AlertScriptsPath=/usr/lib/zabbix/alertscripts
#2.上传脚本
[root@zabbix ~]# cd /usr/lib/zabbix/alertscripts
[root@zabbix alertscripts]# ll
total 4
-rw-r--r-- 1 root root 1231 Sep 9 16:41 weixin.py
#3.授权
[root@zabbix alertscripts]# chmod +x weixin.py
#4.修改脚本
[root@zabbix alertscripts]# vim weixin.py
#企业ID
corpid='ww69b7626c5e711bdf'
#应用的secret
appsecret='TchtAn_azm8DGT5gpVgPNffzOn8BeuVhT1jHQlbRHzs'
#应用的agentid
agentid=1000002
#5.测试脚本
yum -y install epel-release
yum install python-pip
pip install requests
pip install --upgrade requests
[root@zabbix alertscripts]# ./weixin.py LinHaoDa 2 hello
3)添加报警媒介
{ALERT.SENDTO} #发送的⽤户
{ALERT.SUBJECT} #发送的主题
{ALERT.MESSAGE} #发送的内容
zabbix深入自定义监控项
1.自定义监控项-ssh端口
2.自定义监控项-TCP11种状态
1)了解11种状态
LISTEN - 侦听来自远方TCP端口的连接请求;
SYN_SENT -在发送连接请求后等待匹配的连接请求;
SYN_RECEIVED - 在收到和发送一个连接请求后等待对连接请求的确认;
ESTABLISHED- 代表一个打开的连接,数据可以传送给用户;
FIN_WAIT_1 - 等待远程TCP的连接中断请求,或先前的连接中断请求的确认;
FIN_WAIT_2 - 从远程TCP等待连接中断请求;
CLOSE_WAIT - 等待从本地用户发来的连接中断请求;
CLOSING -等待远程TCP对连接中断的确认;
LAST_ACK - 等待原来发向远程TCP的连接中断请求的确认;
TIME_WAIT -等待足够的时间以确保远程TCP接收到连接中断请求的确认;
CLOSED - 没有任何连接状态;
客户端独有的:(1)SYN_SENT (2)FIN_WAIT1 (3)FIN_WAIT2 (4)CLOSING (5)TIME_WAIT 。
服务端独有的:(1)LISTEN (2)SYN_RCVD (3)CLOSE_WAIT (4)LAST_ACK 。
共有的:(1)CLOSED (2)ESTABLISHED 。
2)配置监控项
[root@web01 ~]# vim /etc/zabbix/zabbix_agentd.d/tcp_state.conf
UserParameter=tcp_state[*],netstat -ant | grep -c $1
[root@web01 ~]# systemctl restart zabbix-agent.service
3)客户端验证
[root@web01 ~]# zabbix_agentd -t tcp_state[TIME_WAIT]
tcp_state[TIME_WAIT] [t|47]
[root@web01 ~]# netstat -ant | grep -c TIME_WAIT
47
4)服务端验证
[root@zabbix alertscripts]# zabbix_get -s 172.16.1.7 -k tcp_state[LISTEN]
15
5)添加监控项
Zabbix server Item
Zabbix server默认的78个Item学习记录
返回值是在自己的虚拟机上通过zabbix_get或者zabbix_agentd获取的,zabbix internal check的item值是在web端的latest data获取的,/表示Not supported
序号 | Name | Key | 返回值 | 释义 |
---|---|---|---|---|
1 | Agent ping | agent.ping | 1 | 就是ping一下 |
2 | Avaliable memory | vm.memory.size[available] | 563798016 | 可用的内存大小 |
3 | Checksum of /etc/passwd | vfs.file.cksum[/etc/passwd] | 3395042901 | 通过文件的cksum码检测完整性 |
4 | Context switches per second | system.cpu.switches | 1808684 | CPU上下文切换次数 |
5 | CPU steal time | system.cpu.util[,steal] | 0.000000 | 虚拟服务占用的CPU时间百分比 |
6 | CPU user time | system.cpu.util[,user] | 0.888070 | 用户进程占用的CPU时间百分比 |
7 | CPU system time | system.cpu.util[,system] | 0.435438 | 系统进程占用的CPU时间百分比 |
8 | CPU idle time | system.cpu.util[,idle] | 98.558498 | CPU空闲时间百分比 |
9 | CPU softirq time | system.cpu.util[,softirq] | 0.050260 | 软中断占用的CPU时间百分比 |
10 | CPU interrupt time | system.cpu.util[,interrupt] | 0.050277 | 中断占用的CPU时间百分比 |
11 | CPU iowait time | system.cpu.util[,iowait] | 0.150754 | IO等待占用的CPU时间百分比 |
12 | CPU nice time | system.cpu.util[,nice] | 0.000000 | 改变优先级的进程占CPU的百分比 |
13 | Free disk space on /boot | vfs.fs.size[/boot,free] | 437207040 | boot目录下空闲硬盘容量 |
14 | Free disk space on / | vfs.fs.size[/,free] | 2140901376 | 根目录下空闲硬盘容量 |
15 | Free disk space on / (percentage) | vfs.fs.size[/,pfree] | 24.897823 | 根目录下空闲硬盘百分比 |
16 | Free disk space on /boot (percentage) | vfs.fs.size[/boot,pfree] | 92.405184 | boot目录下空闲硬盘容量百分比 |
17 | Free inodes on /boot (percentage) | vfs.fs.inode[/boot,pfree] | 99.970316 | boot目录下inode节点空闲百分比 |
18 | Free inodes on / (percentage) | vfs.fs.inode[/,pfree] | 72.211835 | 根目录下inode节点空闲百分比 |
19 | Free swap space | system.swap.size[,free] | 855633920 | swap分区空闲容量 |
20 | Free swap space in % | system.swap.size[,pfree] | 100.000000 | swap分区空闲容量百分比 |
21 | Host boot time | system.boottime | 1533257399 | 系统本次启动的时间 |
22 | Host local time | system.localtime | 1533276306 | 当前系统时间 |
23 | Host name | system.hostname | master | 主机名 |
24 | Host name of zabbix_agentd running | agent.hostname | Zabbix server | Zabbix客户端配置的主机名 |
25 | Incoming network traffic on eth0 | net.if.in[eth0] | 21824359 | 网卡eth0入口流量 |
26 | Incoming network traffic on eth1 | net.if.in[eth1] | 1017925 | 网卡eth1入口流量 |
27 | Interrupts per second | system.cpu.intr | 2324310 | 设备中断次数 |
28 | Maximum number of opened files | kernel.maxfiles | 97724 | 系统支持的打开文件最大数 |
29 | Maximum number of processes | kernel.maxproc | 32768 | 系统支持的最大进程数 |
30 | Number of logged in users | system.users.num | 1 | 系统当前登陆的用户个数 |
31 | Number of processes | proc.num[] | 167 | 系统当前的进程数 |
32 | Number of running processes | proc.num[,,run] | 1 | 系统当前运行的进程数 |
33 | Outgoing network traffic on eth0 | net.if.out[eth0] | 34481164 | 网卡eth0出口流量 |
34 | Outgoing network traffic on eth1 | net.if.out[eth1] | 673747 | 网卡eth1出口流量 |
35 | Processor load (1 min average per core) | system.cpu.load[percpu,avg1] | 0.000000 | 一分钟内每个cpu平均负载 |
36 | Processor load (5 min average per core) | system.cpu.load[percpu,avg5] | 0.000000 | 五分钟内每个cpu平均负载 |
37 | Processor load (15 min average per core) | system.cpu.load[percpu,avg15] | 0.000000 | 十五分钟内每个cpu平均负载 |
38 | System information | system.uname | Linux master 2.6.32-754.el6.x86_64 #1 SMP Tue Jun 19 21:26:04 UTC 2018 x86_64 | 内核名 |
39 | System uptime | system.uptime | 20194 | 系统已经启动了多长时间(秒) |
40 | Total disk space on / | vfs.fs.size[/,total] | 9063817216 | 根目录磁盘总容量 |
41 | Total disk space on /boot | vfs.fs.size[/boot,total] | 499355648 | boot目录磁盘总容量 |
42 | Total memory | vm.memory.size[total] | 1044430848 | 内存总大小 |
43 | Total swap space | system.swap.size[,total] | 855633920 | swap分区总大小 |
44 | Used disk space on / | vfs.fs.size[/,used] | 6457978880 | 已使用的根目录硬盘大小 |
45 | Used disk space on /boot | vfs.fs.size[/boot,used] | 35934208 | 已使用的boot目录硬盘大小 |
46 | Version of zabbix_agent(d) running | agent.version | 3.2.11 | 客户端版本 |
47 | Values processed by Zabbix server per second | zabbix[wcache,values] | 4.71 | zabbix的写缓存每秒处理的值 |
48 | Zabbix trend write cache, % free | zabbix[wcache,trend,pfree] | 99.28 | zabbix的trend buffer空余容量百分比 |
49 | Zabbix history write cache, % free | zabbix[wcache,history,pfree] | 100 | zabbix的history buffer空余容量百分比 |
50 | Zabbix busy poller processes, in % | zabbix[process,poller,avg,busy] | 0.78 | 最近一分钟内某某进程所占用的时间 |
51 | Zabbix busy java poller processes, in % | zabbix[process,java poller,avg,busy] | / | |
52 | Zabbix busy ipmi poller processes, in % | zabbix[process,ipmi poller,avg,busy] | / | |
53 | Zabbix busy proxy poller processes, in % | zabbix[process,proxy poller,avg,busy] | 0 | |
52 | Zabbix busy self-monitoring processes, in % | zabbix[process,self-monitoring,avg,busy] | 0 | |
53 | Zabbix busy unreachable poller processes, in % | zabbix[process,unreachable poller,avg,busy] | 0 | |
54 | Zabbix busy timer processes, in % | zabbix[process,timer,avg,busy] | 0 | |
55 | Zabbix busy snmp trapper processes, in % | zabbix[process,snmp trapper,avg,busy] | / | |
56 | Zabbix busy timer processes, in % | zabbix[process,icmp pinger,avg,busy] | 0 | |
57 | Zabbix busy snmp trapper processes, in % | zabbix[process,http poller,avg,busy] | / | |
58 | Zabbix busy icmp pinger processes, in % | zabbix[process,icmp pinger,avg,busy | 0 | |
59 | Zabbix busy http poller processes, in % | zabbix[process,http poller,avg,busy] | 0.02 | |
60 | Zabbix busy alerter processes, in % | zabbix[process,alerter,avg,busy] | 0 | |
61 | Zabbix busy task manager processes, in % | zabbix[process,task manager,avg,busy] | 0 | |
62 | Zabbix busy housekeeper processes, in % | zabbix[process,housekeeper,avg,busy] | 0 | |
63 | Zabbix busy configuration syncer processes, in % | zabbix[process,configuration syncer,avg,busy] | 0.02 | |
64 | Zabbix busy vmware collector processes, in % | zabbix[process,vmware collector,avg,busy] | / | |
65 | Zabbix busy history syncer processes, in % | zabbix[process,history syncer,avg,busy] | 0.05 | |
66 | Zabbix busy db watchdog processes, in % | zabbix[process,db watchdog,avg,busy] | 0 | |
67 | Zabbix busy discoverer processes, in % | zabbix[process,discoverer,avg,busy] | 100 | |
68 | Zabbix busy escalator processes, in % | zabbix[process,escalator,avg,busy] | 0.02 | |
69 | Zabbix busy trapper processes, in % | zabbix[process,trapper,avg,busy] | 0 | |
70 | Zabbix configuration cache, % free | zabbix[rcache,buffer,pfree] | 96.07 | zabbix的配置缓存空余容量百分比 |
71 | Zabbix history index cache, % free | zabbix[wcache,index,pfree] | 99.65 | zabbix的写缓存的index buffer空余容量百分比 |
72 | Zabbix queue | zabbix[queue] | 0 | zabbix队列中延时的item值个数 |
73 | Zabbix queue over 10m | zabbix[queue,10m] | 0 | 10分钟内在zabbix队列中延时的item值个数 |
74 | Zabbix value cache, % free | zabbix[vcache,buffer,pfree] | 89.84% | zabbix的value cache空余容量百分比 |
75 | Zabbix value cache hits | zabbix[vcache,cache,hits] | 9.51 | zabbix的value cache hit次数 |
76 | Zabbix value cache misses | zabbix[vcache,cache,misses] | 0 | zabbix的value cache misses次数 |
77 | Zabbix value cache operating mode | zabbix[vcache,cache,mode] | Nomal(0) | zabbix的value cache的操作模式 |
78 | Zabbix vmware cache, % free | zabbix[vmware,buffer,pfree] | / | zabbix的vmware cache空余容量百分比 |