zabbix監控之進階篇

一、自定義監控模板

如何使用他人分享的zabbix監控模板思路:
a:把他人分享的zabbix監控模板導入
b:把zabbix-agent的自定義key的配置文件放到/etc/zabbix/zabbix_agentd.d
c:如果有取值腳本,將取值腳本放在對應的目錄
d:手動執行腳本測試取值(使用root身份執行)
e:使用zabbix_get測試取值(使用zabbix身份執行)
f:目標主機監控關聯模板

二、zabbix 監控角度總結

服務器硬件(cpu溫度,主板溫度,功率,風扇的轉速,硬盤的健康狀態) ipmi芯片  遠程管理控制卡idrac,ilo,imm

交換機路由器: snmp協議
​
操作系統  (cpu,內存,硬盤,網卡,系統進程,日誌)  zabbix  linux模板
​
應用程序 nginx,mysql,redis,k8s-master      自定義模板(網上現有的模板)
​
業務層面  業務訪問速度,流量(pv,uv,ip),活躍用戶日活,周活,月活,成單量,交易額
​
日誌監控 ELK 

三、web網站的可用性監測

注意:只是簡單示範如何操作
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

四、使用percona 插件監控mysql

注意:這是監控的mysql數據庫,所以是在你數據庫環境操作
[root@zabbix templates]# 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@zabbix templates]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm 
[root@zabbix templates]# cd /var/lib/zabbix/percona/templates
[root@zabbix templates]# ll
total 284
-rw-r--r-- 1 root root  18866 Jan 10  2018 userparameter_percona_mysql.conf
-rw-r--r-- 1 root root 269258 Jan 10  2018 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
[root@zabiix templates]# head -1 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml 
<?xml version="1.0" encoding="UTF-8"?>
注意:下載好的percona模板中,支持的zabbix版本是2.x,比較老了,示例用的事4.0環境,所以需要替換成最新的不支持(可以刪掉)示例是移動到/tmp目錄下
[root@zabbix templates]# mv ./zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml /tmp
[root@zabbix templates]# mv userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
[root@zabbix templates]# systemctl restart zabbix-agent.service

導入xml文件後發現沒有取到任何值,所以決定哪一個值用zabbix_get進行測試

注意:zabbix_get測試後發現沒有任何值
[root@zabbix scripts]# zabbix_get -s 127.0.0.1 -k MySQL.Bytes-received

[root@zabbix scripts]# grep MySQL.Bytes-received /etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf 
UserParameter=MySQL.Bytes-received,/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ky

[root@zabbix scripts]# sh -x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ky
+ ITEM=ky
+ HOST=localhost
++ dirname /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
+ DIR=/var/lib/zabbix/percona/scripts
+ CMD='/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg'
+ CACHEFILE=/tmp/localhost-mysql_cacti_stats.txt
+ '[' ky = running-slave ']'
+ '[' -e /tmp/localhost-mysql_cacti_stats.txt ']'
++ stat -c %Y /tmp/localhost-mysql_cacti_stats.txt
+ TIMEFLM=1585017408
++ date +%s
+ TIMENOW=1585017516
++ expr 1585017516 - 1585017408
+ '[' 108 -gt 300 ']'
+ '[' -e /tmp/localhost-mysql_cacti_stats.txt ']'
+ cat /tmp/localhost-mysql_cacti_stats.txt
+ sed 's/ /\n/g; s/-1/0/g'
+ grep ky
+ awk -F: '{print $2}'
+ 
注意:發現php腳本執行後發現報錯
[root@zabbix scripts]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
ERROR: Access denied for user 'cactiuser'@'localhost' (using password: YES)

注意:該操作僅代表實驗操作
[root@zabbix ~]# mysqladmin -uroot password '123456'
[root@zabbix ~]# mysql -uroot -p123456
[root@zabbix scripts]# vim ss_get_mysql_stats.php
30 $mysql_user = 'root';
31 $mysql_pass = '123456';

再次測試腳本,測試zabbix_get
[root@zabbix scripts]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
gg:4
[root@zabbix04 templates]# sh  /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ky
9467694
[root@zabbix04 templates]#  zabbix_get -s 127.0.0.1 -k MySQL.Bytes-received
9467694
注意:然後查看mysql的key文件,發現他依賴/var/lib/zabbix/percona/scripts/目錄下的腳本文件
注意:key值MySQL running slave會報錯,可以忽略,也可以修改配置讓其恢復但會報警因爲我們沒有開啓mysql主從複製功能。
MySQL running slave會報錯修改:
[root@zabbix04 ~]# grep MySQL.running-slave /etc/zabbix/zabbix_agentd.d/userparameter_percona_mysql.conf 
UserParameter=MySQL.running-slave,/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave
[root@zabbix04 ~]# sh -x /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave
+ ITEM=running-slave
+ HOST=localhost
++ dirname /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
+ DIR=/var/lib/zabbix/percona/scripts
+ CMD='/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg'
+ CACHEFILE=/tmp/localhost-mysql_cacti_stats.txt
+ '[' running-slave = running-slave ']'
++ HOME=/var/lib/zabbix
++ mysql -uroot -p123456 -e 'SHOW SLAVE STATUS\G'
++ egrep '(Slave_IO_Running|Slave_SQL_Running):'
++ awk -F: '{print $2}'
++ tr '\n' ,
+ RES=
+ '[' '' = ' Yes, Yes,' ']'
+ echo 0
0
+ exit
[root@zabbix04 ~]# vim /var/lib/zabbix/percona/scripts/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' ','`

在這裏插入圖片描述
在這裏插入圖片描述
zabbix4.0監控導入的xml文件鏈接:https://download.csdn.net/download/Dakshesh/12266709

五、snmp監控window和Linux

交換機,路由器,打印機  開啓snmp,打開snmp服務端

snmp協議三個版本
v1  沒有密碼驗證
v2c 支持口令驗證 community
v3  太複雜
#linux上面snmp服務端,守護進程(要監控的linux主機)
yum install net-snmp -y
vim /etc/snmp/snmpd.conf 
    com2sec notConfigUser  default    goodnb
systemctl start snmpd
systemctl enable snmpd

#zabbix就是snmp客戶端  (zabbix服務端)
yum install net-snmp-utils.x86_64 -y

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

六、zabbix版本升級

a:新版本可以提高性能
b:模板不兼容問題

1、清除之前的zabbix的yum源緩存
yum clean all
2、更換新版本的zabbix的yum源
rpm -qa|grep zabbix
rpm -e zabbix-release
wget http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
3、重新生存yum源緩存
yum makecache
4、停止zabbix server服務
systemctl stop zabbix-server 
5、備份zabbix server的數據庫,防止出現意外,還可以還原
mysqldump -uroot -p123456 -B zabbix|gzip >zabbix-server.sql
6、停止mysql數據庫
systemctl stop mysqld
7、安裝新版本
sed -i 's#http://repo.zabbix.com#https://mirror.tuna.tsinghua.edu.cn/zabbix#g' /etc/yum.repos.d/zabbix.repo
[root@zabbix01 ~]# yum install zabbix-server-mysql zabbix-web-mysql  -y
8、啓動zabbix server數據庫
systemctl start mysqld
systemctl start zabbix-server 
可能出現的問題:打開瀏覽器,發現zabbix頁面打不開了
問題可能出在:升級後的zabbix需要php5.4以上版本,而當前是php過低,所以需要升級PHP
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章