LINUX配置JMX监控tomcat7

1) 正常安装JDK和Tomcat 配置环境变量(此步略过)

2) 配置JMX访问文件
    # cd $CATALINA_HOME/conf/
    # cp $JAVA_HOME/jre/lib/management/jmxremote.password.template jmxremote.password
    # chmod 700 jmxremote.password    (一定注意这个文件默认是不可写的)
    # vi $CATALINA_HOME/conf/jmxremote.password

在最下面添加一个用户(第一个是用户名 第二个是密码)
    fox        123456

# chmod 400 jmxremote.password    (要求该文件是任何用户均不可写的)
    # cp $JAVA_HOME/jre/lib/management/jmxremote.access jmxremote.access
    # vi jmxremote.access    (该文件是对jmx用户的授权)

到最后一行 将
    monitorRole   readonly
    controlRole   readwrite
    注释 更改为
    # monitorRole   readonly
    # controlRole   readwrite
    然后在最后添加一行
    fox    readwrite

# chmod 400 jmxremote.access

3) 配置Tomcat启动参数
    # cd $CATALINA_HOME/bin
    # vi catalina.sh

找到以下一行
    # ----- Execute The Requested Command -----------------------------------------
    在其上方添加一段脚本 加在最后的目的是要沿用之前的JAVA_OPTS和CATALINA_HOME变量设置(特别是堆内存参数设置) 网上文章说法有直接设置JAVA_OPTS的 不过这样设置在stop的时候会有异常抛出 虽然不影响使用
    (参数意义依次是:
        -Dcom.sun.management.jmxremote 启用JMX远程监控
        -Dcom.sun.management.jmxremote.port=9004 使用端口9004(可随意指定只要不冲突)
        -Dcom.sun.management.jmxremote.authenticate=true 远程连接需要密码认证
        -Dcom.sun.management.jmxremote.ssl=false 不使用SSL(SSL我试了多次都没有配置成功:P 暂时不开启)
        -Dcom.sun.management.jmxremote.access.file=$CATALINA_HOME/conf/jmxremote.access 使用指定的JMX帐号授权文件
        -Dcom.sun.management.jmxremote.password.file=$CATALINA_HOME/conf/jmxremote.password 使用指定的JMX帐号文件)

# ----- JMX Config Start -----
    if [ "$1" = "run" ]; then

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=10207
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.access.file=$CATALINA_HOME/conf/jmxremote.access

-Dcom.sun.management.jmxremote.password.file=$CATALINA_HOME/conf/jmxremote.password"
    elif [ "$1" = "start" ]; then

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=10207
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.access.file=$CATALINA_HOME/conf/jmxremote.access

-Dcom.sun.management.jmxremote.password.file=$CATALINA_HOME/conf/jmxremote.password"
    fi

# ----- JMX Config End -----

也就是说需要在tomcat的bin下需要在catalina.sh下加入如下代码即可。

# ----- JMX Config Start -----
    if [ "$1" = "run" ]; then

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=10207
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.access.file=/usr/java/jdk1.6.0_32/jre/lib/management/jmxremote.access

-Dcom.sun.management.jmxremote.password.file=/usr/java/jdk1.6.0_32/jre/lib/management/jmxremote.password"
    elif [ "$1" = "start" ]; then

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=10207
-Dcom.sun.management.jmxremote.authenticate=true
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.access.file=/usr/java/jdk1.6.0_32/jre/lib/management/jmxremote.access

-Dcom.sun.management.jmxremote.password.file=/usr/java/jdk1.6.0_32/jre/lib/management/jmxremote.password"
    fi
    # ----- JMX Config End -----

export JAVA_OPTS  (重要)

然后我们要做的就是进入的/usr/java/jdk1.6.0_32/jre/lib/management下

有个模板,拷贝一份作为jmxremote.password,切记,这个文件权限比较特殊,我用的时候用的400

记得jmsremote.password最后

monitorRole  QED
        controlRole   R&D

前的注释去掉(系统自带的账号和密码,建议自己新增一个,新增的时候记得去jmxremote.access中付给账号读写权限)

然后就可以了。

再就是注意一下hostname那部分,应该就直接可以在客户端输入jconsole然后输入IP地址,端口,账号,密码,你就可以监控tomcat了

再次感谢@逝水fox大神

vi /etc/hosts 修改主机名为外网IP地址,这个很重要,要不然连接不上...

WIndows访问Linux服务器Tomcat:使用JDK自带jvisualvm监控tomcat

时间: 2024-10-11 13:25:55

LINUX配置JMX监控tomcat7的相关文章

Linux记录-JMX监控JAVA进程

1.下载 下载地址:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-plat-419418.html,下载jmx_remote-1_0_1_03-ri.zip和jmx-1_2-ri.zip. 2.上传jmx-java.zip并解压到$JAVA_HOME/jre/lib/ext下 3.修改xxx.sh加入export JAVA_OPTS="-Dcom.sun.ma

tomcat中配置jmx监控

1.在tomcat的start.bat中添加下面代码, set JMX_REMOTE_CONFIG=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=40200 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=localhost

14、Zabbix如何使用JMX监控

JMX(Java Management Extensions,即Java管理扩展)是java平台上为应用程序.设备.系统等植入管理功能的框架. JMX工作原理:  zabbix_server想知道一台主机上的特定的JMX值时,它向Zabbix-Java-gateway询问,而Zabbix-Javagateway使用"JMXmanagementAPI"去查询特定的应用程序,而前提是应用程序这端在开启时需要"-Dcom.sun.management.jmxremote"

cacti中文安装配置与监控wWindows Server和Linux服务器

Cacti做为当今天运维人员的主流监控工具已经应该很广泛了,下面我就来把我的安装步骤罗列如下; (1).Cacti安装之前要准备Linx平台下的Web架构: (2).Linux下的Web搭建的方法如下; [[email protected] ~]# yum -y install httpd mysql-server php php-mysql gd net-snmp php-snmp net-       snmp-utils net-snmp-devel mysql-devel  openss

zabbix监控通过jmx监控tomcat的配置过程

1.zabbix获取通过jmx监控tomcat示意图 2.在tomcat的catalina.sh配置文件中添加如下信息: JAVA_OPTS="-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote.port=9999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremo

运用JMX监控Tomcat

1.先配Tomcat的启动语句,window下tomcat的bin/catalina.bat(linux为catalina.sh),在头上注释部分(.bat为rem..sh为#)后面加上set JAVA_OPTS=-Dcom.sun.management.jmxremote.port=8999 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true (linux为JAVA_

监控应用服务器使用JMX监控Tomcat (转收藏)

前言:做了一个监控应用服务器的项目(支持Tocmat.WebSphere.WebLogic各版本), 过程也算是磕磕绊绊,由于网上缺少相关资料,或者深陷于知识的海洋难以寻觅到有效的资料,因而走过不少弯路,遇过不少困难.为了留下点印记,给后来人留下 点经验之谈,助之少走弯路,故将这些经验整理出来,与大家分享.水平有限,难免疏漏,还望指正.如有疑问,欢迎留言,或者加入Q群参与讨 论:35526521. 一.激活Tomcat的JMX远程配置 要通过JMX远程监控Tomcat,首先需要激活Tomcat的

用 Python 脚本实现对 Linux 服务器的监控

hon 分享到:8 原文出处: 曹江华 目前 Linux 下有一些使用 Python 语言编写的 Linux 系统监控工具 比如 inotify-sync(文件系统安全监控软件).glances(资源监控工具)在实际工作中,Linux 系统管理员可以根据自己使用的服务器的具体情况编写一下简单实用的脚本实现对 Linux 服务器的监控. 本文介绍一下使用 Python 脚本实现对 Linux 服务器 CPU 内存 网络的监控脚本的编写. Python 版本说明 Python 是由 Guido va

在centOS7.2安装配置zabbix监控

zabbix由两部分组成,zabbix-server与可选的zabbix-agent.zabbix-server可以通过SNMP,ZABBIX-AGENT,PING,端口监视等方法提供对远程服务器/网络状态的监控与数据收集. 安装环境: 192.168.1.12 server端,监控自己同时也监控其他主机(暂且叫client) 192.168.1.9 client端 准备:NTP时钟服务正常.DNS解析正常(在此两台服务器所以配置hosts即可) server端安装配置: 1) 挂载本地镜像,配