运维实战 Zabbix监控进阶
Posted 洛冰音
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运维实战 Zabbix监控进阶相关的知识,希望对你有一定的参考价值。
运维实战 Zabbix监控进阶
Percona Monitoring Plugins
Percona Monitoring Plugins
带有190多个
监控项.
这么多监控项全部手动添加显然是不现实的, 需要使用模板倒入
##查看其附带的两个目录中的内容
cd /var/lib/zabbix/percona/scripts/
##包含搜集数据所需的shell脚本和php文件
get_mysql_stats_wrapper.sh ss_get_mysql_stats.php
##监控规则和倒入用的模板
cd ../templates/
userparameter_percona_mysql.conf
zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml
- 为了能够正确连接数据库获取信息,需要修改
ss_get_mysql_stats.php
中数据库登陆相关的内容
##复制监控规则文件到配置目录下
cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
##可以看到其包括190条监控项
wc -l userparameter_percona_mysql.conf
190 userparameter_percona_mysql.conf
##修改php文件中如下部分保证可以连接数据库
$mysql_user = 'root';
$mysql_pass = 'westos';
$mysql_port = 3306;
$mysql_socket = NULL;
$mysql_flags = 0;
- 通过直接调用j脚本和
zabbix_get
功能测试功能是否实现
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh ou
0
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gl
53512
zabbix_get -s 127.0.0.1 -p 10050 -k 'MySQL.pool-size'
8191
##测试结束后记得删除文本文件,避免因为权限问题导致后续监控无法写入数据
cd /tmp/
ls
localhost-mysql_cacti_stats.txt
rm -f localhost-mysql_cacti_stats.txt
- 为监控页面导入模板,方便进行自动化监控
安装获得的xml
文件并不能直接倒入,由于版本与当前zabbix
不同倒入会出现适配问题, 已经提前准备了修改好的xml
文件.
- 由于与原先的模板存在些许冲突,需要先请取消链接并清理之前的模板
- 导入成功后可以看到监控项和图形中出现了新增加的模板相关的内容
Zabbix监控Tomcat
Tomcat
在java
虚拟机中 默认操作无法实现对其的监控.
不过zabbix
也提供了组件zabbix-java-gateway
##在Server2上安装依赖
yum install java-1.8.0-openjdk.x86_64
##安装并运行tomcat
[root@Server2 mnt]# tar zxf apache-tomcat-7.0.37.tar.gz
[root@Server2 mnt]# cd apache-tomcat-7.0.37/
[root@Server2 apache-tomcat-7.0.37]# ls
bin lib logs RELEASE-NOTES temp work
conf LICENSE NOTICE RUNNING.txt webapps
[root@Server2 apache-tomcat-7.0.37]# cd ..
[root@Server2 mnt]# cp -r apache-tomcat-7.0.37/ /usr/local/
[root@Server2 mnt]# cd /usr/local/
[root@Server2 local]# mv apache-tomcat-7.0.37/ tomcat
[root@Server2 local]# cd tomcat/
[root@Server2 tomcat]# ./bin/startup.sh
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@Server2 tomcat]# netstat -antlp
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3208/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3308/master
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 3223/zabbix_agentd
tcp 0 0 172.25.5.2:10050 172.25.5.1:46696 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46560 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46776 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46734 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46768 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46716 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46780 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46742 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46806 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46568 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46762 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46782 TIME_WAIT -
tcp 0 0 172.25.5.2:22 172.25.5.250:56596 ESTABLISHED 3498/sshd: root@pts
tcp 0 0 172.25.5.2:10050 172.25.5.1:46722 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46760 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46796 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46746 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46792 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46798 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46786 TIME_WAIT -
tcp 0 0 172.25.5.2:10050 172.25.5.1:46752 TIME_WAIT -
tcp6 0 0 :::8009 :::* LISTEN 4448/java
tcp6 0 0 :::8080 :::* LISTEN 4448/java
tcp6 0 0 :::22 :::* LISTEN 3208/sshd
tcp6 0 0 ::1:25 :::* LISTEN 3308/master
tcp6 0 0 :::10050 :::* LISTEN 3223/zabbix_agentd
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 4448/java
- 修改
catalina.sh
, 增加外部监听端口支持
CATALINA_OPTS='
-Dcom.sun.management.jmxremote.port=8888
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
'
- 返回
Server1
,安装zabbix-java-gateway.x86_64
[root@Server1 ~]# yum install -y zabbix-java-gateway.x86_64
[root@Server1 ~]# systemctl enable --now zabbix-java-gateway.service
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-java-gateway.service to /usr/lib/systemd/system/zabbix-java-gateway.service.
[root@Server1 zabbix]# netstat -antlp | grep :10052
tcp6 0 0 :::10052 :::* LISTEN 16207/java
tcp6 0 0 172.25.13.1:10052 172.25.13.1:36572 TIME_WAIT -
##配置文件位置
[root@Server1 fonts]# cd /etc/zabbix/
[root@Server1 zabbix]# ls
web zabbix_java_gateway.conf zabbix_server.conf
zabbix_agentd.conf zabbix_java_gateway_logback.xml
zabbix_agentd.d zabbix_proxy.conf
StartJavaPollers
默认启动进程5个
### Option: JavaGateway
# IP address (or hostname) of Zabbix Java gateway.
# Only required if Java pollers are started.
#
# Mandatory: no
# Default:
JavaGateway=172.25.0.1
# Mandatory: no
# Range: 0-1000
# Default:
StartJavaPollers=5
添加对JMX接口的支持
以上是关于运维实战 Zabbix监控进阶的主要内容,如果未能解决你的问题,请参考以下文章
系统学习 Zabbix 系统监控Windows 系统监控 | 运维进阶