创建图形:
配置--主机--web1--图形--右上角“创建图形”--填写“名称”--添加“监控项”--点击最后一行“添加”
查看图形:
监测--图形--选择“群组”--选择"主机"--选择“图形名称”
###########################################################################################
创建聚合图形:
监测--聚合图形--创建聚合图形--填写聚合图形“名称”--添加--选择新建聚合图形--编辑聚合图形
幻灯片演示:
聚合图形--创建幻灯片演示(把多个聚合图形,按照频率刷新演示)
###########################################################################################
zabbix模板文件下载:
https://www.zabbix.org/wiki/Zabbix_Templates/Official_Templates
###########################################################################################
percona模板监控mysql
环境:打开或安装一台mysql:192.168.8.20,并安装zabbix-agent,修改配置文件指向zabbix服务器
1.安装php环境
percona需要php环境
[root@mysql /data/soft]# yum install php php-mysql -y
2.下载软件
注意,安装完成后会有提示模版的路径位置
[root@mysql ~]# mkdir -p /data/soft [root@mysql ~]# cd /data/soft/ [root@mysql /data/soft]# wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm [root@mysql /data/soft]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
3.查看目录
进入安装目录会发现有2个目录,一个是脚本目录,一个是模版目录
cd /var/lib/zabbix/percona/ scripts get_mysql_stats_wrapper.sh ss_get_mysql_stats.php templates userparameter_percona_mysql.conf zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
其中脚本目录里有2个脚本,用来获取数据库信息
cd scripts/ ls get_mysql_stats_wrapper.sh ss_get_mysql_stats.php
4.修改
get_mysql_stats_wrapper.sh
修改get_mysql_stats_wrapper数据库登陆信息
第19行添加mysql账号密码
vim get_mysql_stats_wrapper.sh
修改第19行:
RES=`HOME=~zabbix mysql -uroot -p123456 -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n'
5.
修改ss_get_mysql_stats.php vim ss_get_mysql_stats.php 修改30,31行: $mysql_user = 'root'; $mysql_pass = '123456';
6.复制自定义监控项配置文件到zabbix目录
cd /var/lib/zabbix/percona/templates/ cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
7.重启agent
systemctl restart zabbix-agent
8.测试key(IP是被监控端)
zabbix_get -s 192.168.8.20 -k MySQL.Select-scan
9.导入模版
配置--模板--导入--浏览导入文件--勾选“聚合图形”--最后“导入”
10.主机链接模版
配置--主机--创建主机--选择模板
#############################################################################################################
自定义模版监控nginx状态
环境:打开或安装nginx服务器:192.168.8.20,并安装zabbix-agent,修改配置文件指向zabbix服务器
yum -y install epel-release yum -y install nginx
1.开启监控页面并访问测试
[root@web01 ~]# vim /etc/nginx/conf.d/default.conf
定位到11行下,添加:
location /nginx_status { stub_status on; access_log off; }
重启服务:systemctl restart nginx
[root@web01 ~]# curl 127.0.0.1/nginx_status/ Active connections: 1 server accepts handled requests 6 6 6 Reading: 0 Writing: 1 Waiting: 0
2.准备nginx监控状态脚本
[root@web01 /etc/zabbix/zabbix_agentd.d]# cat nginx_monitor.sh #!/bin/bash NGINX_COMMAND=$1 CACHEFILE="/tmp/nginx_status.txt" CMD="/usr/bin/curl http://127.0.0.1/nginx_status/" if [ ! -f $CACHEFILE ];then CMD>CMD >CACHEFILE 2>/dev/null fi # Check and run the script TIMEFLM=`stat -c %Y $CACHEFILE` TIMENOW=`date +%s` if [ `expr TIMENOW−TIMENOW - TIMEFLM` -gt 60 ]; then rm -f $CACHEFILE fi if [ ! -f $CACHEFILE ];then CMD>CMD >CACHEFILE 2>/dev/null fi nginx_active(){ grep 'Active' CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print NF}' exit 0; } nginx_reading(){ grep 'Reading' CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print 2}' exit 0; } nginx_writing(){ grep 'Writing' CACHEFILE | awk '{printCACHEFILE | awk '{printCACHEFILE | awk '{print 4}' exit 0; } nginx_waiting(){ grep 'Waiting' CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print 6}' exit 0; } nginx_accepts(){ awk NR==3 CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print 1}' exit 0; } nginx_handled(){ awk NR==3 CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print 2}' exit 0; } nginx_requests(){ awk NR==3 CACHEFILE| awk '{printCACHEFILE| awk '{printCACHEFILE| awk '{print 3}' exit 0; } case $NGINX_COMMAND in active) nginx_active; ;; reading) nginx_reading; ;; writing) nginx_writing; ;; waiting) nginx_waiting; ;; accepts) nginx_accepts; ;; handled) nginx_handled; ;; requests) nginx_requests; ;; *) echo 'Invalid credentials'; exit 2; esac
保存退出
赋予执行权:
chmod +x nginx_monitor.sh
3.编写zabbix监控配置文件
[root@web01 ~]# cat /etc/zabbix/zabbix_agentd.d/nginx_status.conf UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/nginx_monitor.sh $1 [root@web01 ~]# systemctl restart zabbix-agent.service
修改缓存文件权限:
chown zabbix:zabbix /tmp/nginx_status.txt
4.使用zabbix_get取值
zabbix_get -s 192.168.8.20 -k nginx_status[accepts]
5.导入模版
6.链接模版
7.查看数据
##################################################################################################
参考web1添加其他nginx服务器:
配置--主机--web1--点击web1--选择“全克隆”--填写新nginx的ip
------------------------
网络发现:
加快Zabbix部署
简化管理
无需过多管理,也能在快速变化的环境中使用Zabbix
一般通过网络ip范围自动发现agent主机
步骤:
客户端安装zabbix-agent,配置文件Server指向zabbix-server
zabbix-server web管理界面--配置--自动发现--修改Local Network--添加主机网段--修改间隔--启用
zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现--修改触发条件--在线不在线60秒
zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现操作--添加标题--添加主机、群组、模板--导入--浏览导入文件--勾选“聚合图形”--最后“导入”
----------------------------
自动注册:
Zabbix Active agent可以实现自动注册,进而服务器对其进行监控。通过这种方式,无需在服务器上进行手动配置便可直接启动对新host的监控。
步骤:
客户端安装zabbix-agent,配置文件Server,ServerActive指向zabbix-server,Hostname修改本机主机名
zabbix-server web管理界面--动作--事件源(自动注册)--填写名称--触发条件主机名--操作(主机、群组、模板)
------------------------------
主被动模式(客户端):
被动模式:默认模式,由服务器向客户端发起监控项请求,每个监控项发一个请求,效率低
主动模式:由客户端主动向服务器申请监控项清单,一起发送给服务器,效率高,不占服务器太多资源
步骤:
客户端: zabbix-agent配置文件需要启用ServerActive指向服务器
服务器上监控模板批量更新--类型--Zabbix客户端(主动式)