zoukankan      html  css  js  c++  java
  • jconsole使用记录

    jconsole/JVisualVM连接linux服务器查看JVM使用情况

    现需要在本地电脑上查看服务器的tomcat的整体的运行状态,使用jconsole工具.

    JMX配置

    1. 拷贝$JAVA_HOME/jre/lib/management/目录下的 jmxremote.access , jmxremote.password 到tomcat的conf目录下
    2. 修改access,password文件使用权限为700
    3. 设置password文件,在文件最后添加用户名密码. eg:jmxuser jmxpwd
    4. 设置access文件,注释掉原有monitorRole,controlRole. 添加新用户名及权限. eg:jmxuser readwrite
    5. 修改catalina.sh,添加jmx配置如下:
    6. 重启tomcat,使用jconsole连接
     # ----- Execute The Requested Command -----------------------------------------
     JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote
     -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=8.8.8.8  #访问host地址
     -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/local/tomcat/apache-tomcat-commensec/conf/jmxremote.access 
     -Dcom.sun.management.jmxremote.password.file=/usr/local/tomcat/apache-tomcat-commensec/conf/jmxremote.password"
    
     export JAVA_OPTS
    
    

    注意事项

    1. 如果不需要配置访问的权限,如内网使用zabbix进行监控,可以不用配置access和password文件. 配置 authenticate=false 即可.
    2. 在JAVA_OPTS的配置中,网上有资料是没有-Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=hostIP的.我在配置的时候发现如果没有此参数,那么我本地jconsole无法连接到服务器
    3. JVisualVM插件中心地址已经改为:https://visualvm.github.io/pluginscenters.html
    4. visual gc本地可用,远程:不受此jvm支持
      这里需要注意,如果要使用Visual GC 需要在服务器上开启jstat.开启步骤
      1. 启动RMI服务
        首先,配置java安全访问,在服务器jdk路径(/java_home/bin)下新建文件名称: jstatd.all.policy 内容如下:
        grant codebase "file:${java.home}/../lib/tools.jar" {
              permission java.security.AllPermission;
        };
        
      2. 通过如下的命令启动RMI服务:
        1. ./jstatd -J-Djava.security.policy=jstatd.all.policy
        2. ./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=8.8.8.8
      3. 然后在Visual VM中选择tomcat即可看到数据
  • 相关阅读:
    添加定界符: AnsiQuotedStr
    c++ builder 中的 XMLDocument 类详解(13) 遍历XML文件
    c++ builder 中的 XMLDocument 类详解(11) 读取和设置版本号
    c++ builder 中的 XMLDocument 类详解(9) 关于 HasChildNodes 与 IsTextElement
    VBA 宏 与 Word 编程
    Iframe 高度自适应!
    第一次加载控件的问题.
    Server.Transfer 页面传值.
    Ajax 动态加载 用户控件脚本报 "缺少对象" 的错误!
    GridView的 RowCreated 里不能写有关控件的客户端事件属性!!
  • 原文地址:https://www.cnblogs.com/0xcafedaddy/p/7048851.html
Copyright © 2011-2022 走看看