文档章节

LINUX配置JMX监控tomcat7

boonya
 boonya
发布于 2015/06/17 17:24
字数 770
阅读 657
收藏 16

    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


本文转载自:http://my.oschina.net/7shell/blog/72054

上一篇: Mybatis 批量更新
下一篇: Linux 配置sendmail
boonya
粉丝 79
博文 375
码字总数 74754
作品 0
海淀
高级程序员
私信 提问
加载中

评论(0)

使用JMX透过防火墙远程监控tomcat服务

JDK的bin目录下有jvisualvm或jconsole可以监控本地和远程jvm实例的运行动态(包括cpu,内存等), 对于性能分析或内存泄露分析等极其方便。下面介绍如何通过这两个工具远程监控有防火墙的lin...

javasql
2012/07/04
7.6K
2
LINUX配置JMX监控tomcat7情况

首先谢谢@逝水fox大神,谢谢他给我讲JMX帮我配置JMX 现在将JMX在LINUX的配置分享给大家,希望对大家有用 代码为@逝水fox整理 1) 正常安装JDK和Tomcat 配置环境变量(此步略过) 2) 配置JMX访问...

枫爱若雪
2012/08/11
6.2K
8
zabbix通过JMX 监控tomcat

Linux运维专家群 QQ:419858299 技术成就梦想,欢迎小伙伴加入. 一、环境 1.Centos6.5 tomcat7 2.需要用到的文件:catalina-jmx-remote.jar和cmdline-jmxclient-0.10.3.jar 二、JDK安装方法不...

程小白0302
2018/06/26
0
0
maven配置tomcat6/7新方法

由于tomcat7的出世导致以前的maven配置tomcat插件失效,因此在此记录新的配置方法: 1、在项目pom.xml做如下配置: <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artif......

逸风如梦
2013/02/28
8.1K
0
probe 不能与tomcat7使用

各位大神好!我想用probe业监控我的整个tomcat运行状态,可是我无法进行probe的页面,用户和密码我都配置过了 我能进入tomcat的管理页面 manager ,可是在进入probe页面的时候就提示我没有权限...

卢峰
2015/06/10
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周二乱弹 —— 一山里不容二猫

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 @薛定谔的兄弟 :分享洛神有语创建的歌单「我喜欢的音乐」: 《数え歌》- 池田綾子 手机党少年们想听歌,请使劲儿戳(这里) @诺墨 :哈哈哈哈...

小小编辑
24分钟前
43
1
敏捷开发验收评审会议

迭代验收评审是Scrum中的重要活动之一,迭代验收评审会议召开过程是否符合敏捷原则,实践是否贴近实际,参照以下:要点一:参加迭代验收评审会议的角色是否完整和投入 ●敏捷团队所有...

沐沐爸比
51分钟前
43
0
js 获取文件本地内存路径

URL.createObjectURL(file)

DrChenXX
今天
51
0
CentOS 6.5 安装 Hadoop 集群【未完】

1、安装 CentOS 6.5 2、关闭 iptables 3、关闭 suliunx 4、修改 IP 4、修改 hostname 5、修改 hosts 6、SSH 免密 7、JDK(1.8)安装 华为镜像直达 8、...

产品哥
今天
59
0
R语言用quantstrat包获取股票、债券、基金、黄金、原油、指数、外汇和全球经济数据

R语言可以非常轻松的获得证券(股票、债券、基金、期货(黄金、原油等)、期权),指数、外汇和美联储提供的各种经济数据。我来详细说一下。 quantstrat包的金融数据很全 yahoo提供的各种证券...

常志伟
今天
49
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部