转载

Zabbbix 监控 tomcat

Zabbbix 监控 tomcat

我的服务器是 Ubuntu 16.04,以下内容基于此版本系统。

一 环境准备

安装 Apache web服务器

sudo apt-get install apache2
复制代码
  • 测试: 浏览器访问 http://Ubuntu的IP ,出现It Works!网页。

  • 查看状态: service apache2 status/start/stop/restart

  • Web目录: /var/www

  • 安装目录: /etc/apache2/

  • 全局配置: /etc/apache2/apache2.conf

  • 监听端口: /etc/apache2/ports.conf

  • 虚拟主机: /etc/apache2/sites-enabled/000-default.conf

安装 mysql

sudo apt-get install mysql-server mysql-client

  • 测试mysql -u root -p
  • 查看状态service mysql status/start/stop/retart
  • 查看监听端口的情况netstat -tunplnetstat -tap

安装 php

sudo apt-get install php7.0

  • 测试php7.0 -v

安装辅助模块

sudo apt-get install libapache2-mod-php7.0 sudo apt-get install php7.0-mysql

  • 重启服务

    service apache2 restart
    service mysql restart
    
  • 测试Apache能否解析PHP

    vim /var/www/html/phpinfo.php
    <?php echo phpinfo();?>
    http://ubuntu地址/phpinfo.php
    

5.修改权限

sudo chmod 777 /var/www

二 安装 Zabbix

安装带 MySql 数据库的包

# wget https://repo.zabbix.com/zabbix/3.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.0-2+xenial_all.deb
# dpkg -i zabbix-release_3.0-2+xenial_all.deb
# apt update
复制代码

安装 Zabbix server, frontend, agent

# apt install zabbix-server-mysql zabbix-frontend-php zabbix-agent
复制代码

创建初始数据库

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'password';
mysql> quit;
复制代码

注意::password 处替换成你的。

导入初始化 schema 和数据。你需要输入上面新设的密码。 # zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

配置数据库

编辑 /etc/zabbix/zabbix_server.conf

DBPassword=password
复制代码

配置 PHP

编辑 /etc/zabbix/apache.conf, 取消此行注释并设置正确的时区。

php_value date.timezone Asia/Shanghai
复制代码

启动 Zabbix server 和 agent 进程

启动 Zabbix server 和 agent 进程并使其开机启动

# systemctl restart zabbix-server zabbix-agent apache2
# systemctl enable zabbix-server zabbix-agent apache2
复制代码

三 初始化 Zabbix frontend

使用浏览器访问 _http://ip/zabbix/setup.php

Zabbbix 监控 tomcat

检查环境,根据提示处理。

Zabbbix 监控 tomcat

配置数据库连接。

Zabbbix 监控 tomcat

名字自定义即可。

Zabbbix 监控 tomcat
Zabbbix 监控 tomcat
Zabbbix 监控 tomcat

进入登录页面,账号 Admin 密码 zabbix。

Zabbbix 监控 tomcat

进入管理界面,然后就可以添加主机了。

Zabbbix 监控 tomcat

配置 JMX

zabbix提供了一个java gateway的应用去监控jmx(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。

服务器端配置

安装 Zabbix-java-gateway

Zabbix-java-gateway 是 Zabbix 用于监控 JMX 应用程序的服务进程。 需要 java 环境。

apt-get install zabbix-java-gateway
复制代码

修改 java-gateway 配置文件

编辑/etc/zabbix/zabbix_java_gateway.conf

# 监听地址
LISTEN_IP=”0.0.0.0″
# 监听端口
LISTEN_PORT=10052
# PID_FILE文件
PID_FILE=”/var/run/zabbix/zabbix_java.pid”
# 开启的工作线程数
START_POLLERS=5
复制代码

启动 zabbix-java-gateway

service zabbix-java-gateway start
复制代码

验证连接是否成功

ss -tunlp|grep 10052
复制代码

修改 zabbix-server 配置文件并重启

修改 zabbix-server 的配置,编辑/etc/zabbix/zabbix_server.conf

# JavaGateway的服务器IP地址
JavaGateway=127.0.0.1
# JavaGateway的服务端口
JavaGatewayPort=10052
# 从javaGateway采集数据的进程数
StartJavaPollers=5
复制代码

修改完成后,重启 zabbix-server。

service zabbix-server restart
复制代码

注意:Zabbix Server/Proxy 中的 StartJavaPollers 要小于等于 Zabbix Java GateWay 配置文件中的 START_POLLERS。

客户端配置

添加 tomcat 中 JMX 参数

编辑 bin 目录下 catalina.sh,给 CATALINA_OPTS 添加以下变量:

CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=127.0.0.1
-Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.port=12345
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false"
复制代码

重启 tomcat

./shutdown.sh
./startup.sh
复制代码

验证是否启动 jmx 监听

lsof -i:12345
#输出
root@vultr:~# lsof -i:12345
COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
java    14707 root   30u  IPv6 7816456      0t0  TCP *:12345 (LISTEN)
复制代码

使用三方工具测试

下载 jmxcmd.jar

#wget http://nchc.dl.sourceforge.net/project/jmxcmd/jmxcmd.jar
复制代码

测试

 java -jar jmxcmd.jar - yourip:12345 java.lang:type=Memory NonHeapMemoryUsage
#输出
07/20/2018 05:30:15 +0000 de.layereight.jmxcmd.Client NonHeapMemoryUsage: 
committed: 44761088
init: 2555904
max: -1
used: 43533776
复制代码

也可以使用 Windows java 性能分析工具 jconsole。

Zabbbix 监控 tomcat

如果 jconsole 无法连接,可能是 Linux 上 JVM 给 jconsole 的RMI配置文件不对,把上面 catalina.sh 中配置的 -Djava.rmi.server.hostname=127.0.0.1 改为真实 ip。

添加模板

版权声明:尊重博主原创文章,转载请注明出处 http://ietftech.com

原文  https://juejin.im/post/5b519bafe51d4519575a232a
正文到此结束
Loading...