zoukankan      html  css  js  c++  java
  • JAVA 容器配置 JVM 监控

    目前世面上较流行的JAVA容器工具有:tomcat,jboss,weblogic
    在日常工作中,经常会遇到开发需要查看JVM相关信息,这时就需要开启JVM。

    一、tomcat

    1 修改jdk认证配置文件

    文件位于jdk/jre/lib/management/目录下,该目录下有

    • jmxremote.access //配置用户认证相应权限
    • jxmremote.password //配置认证用户名和密码
    • management.properties //可配置相应端口,认证。此文件中的配置是使用此jdk相关JAVA程序,建议单独配置在相应的JAVA容器内,使每个JVM监控分隔开来。

    2 tomcat中添加相应的监听端口和监听ip

    注意:端口不要冲突
    文件: tomcat/bin/catalina.sh //在文件前部添加下面内容

    ~]# vim /tomcat/bin/caclina.sh
    JAVA_HOME=/iyunwen/server/jdk  		//配置每个tomcat个的JAVA_HOME
    JAVA_OPTS="-server -Xms3096m -Xmx4096m -XX:PermSize=256M -XX:MaxNewSize=128m -XX:MaxPermSize=512m -Djava.awt.headless=true -Dfile.encoding=UTF-8" //配置tomcat内存大小
    CATALINA_OPTS="$CATALINA_OPTS -Djava.rmi.server.hostname=172.18.35.189 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9002 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true"
    // 监听的IP地址和端口,并开启认证
    

    3 重启tomcat服务后,即可通过ip地址和端口进行监听JVM相关信息了


    二、jboss

    1 修改jdk认证配置文件,同tomcat配置jdk

    2 添加相应node中的监听IP地址,端口。

    jboss的相应配置文件位于node的run.conf文件

    ~]# vim /jboss/jboss-eap-4.3/jboss-as/server/node7081/run.conf
    if [ "x$JAVA_OPTS" = "x" ]; then
       #JAVA_OPTS="-Xms512m -Xmx512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true"
       JAVA_OPTS="-Xms512m -Xmx6144m -XX:MaxNewSize=512m -XX:MaxPermSize=512m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.lang.ClassLoader.allowArraySyntax=true -Dcom.sun.management.jmxremote.port=19910 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
    fi
    //这里修改了内存分配和JVM监控相关参数
    

    3 重启jboss,并使用jvm查看工具即可


    ##三、weblogic

    1 登陆was控制台 http://192.168.1.137:9060/admin

    2 在 Generic JVM arguments 中添加JVM监控参数

    Servers -> Server Types -> WebSphere application servers -> server1 -> Java and Process Management -> Process definition -> Java Virtual Machine

    -Djavax.management.builder.initial= -Dcom.sun.management.jmxremote 
    -Djava.rmi.server.hostname=192.168.1.130   //服务端的IP地址,不写可能会出现无法连接
    

    添加完成后 -> apply -> save

    3 修改weblogic中jdk相关文件

    添加相应端口和认证

    ~]# vim /opt/IBM/WebSphere/AppServer/java/jre/lib/management/management.properties		//文件末尾添加如下配置。如不知道文件在哪的话,可以查看相关java进行中使用的jdk路径中查找
    com.sun.management.jmxremote.port=9002			//监听端口
    com.sun.management.jmxremote.authenticate=true	//开启认证
    com.sun.management.jmxremote.ssl=false			//ssl关闭
    

    修改认证中的用户名和密码

    ~]# vim /opt/IBM/WebSphere/AppServer/java/jre/lib/management/jmxremote.password.template     //修改文件的帐号 密码
    monitorRole Java_Remote_Monitor
    controlRole Java_Remote_Monitor
    

    查看相关帐号权限

    ~]# vim /opt/IBM/WebSphere/AppServer/java/jre/lib/management/jmxremote.access
    monitorRole   readonly				//只读
    controlRole   readwrite create	 javax.management.monitor.*,javax.management.timer.* unregister  	//可操作
    

    最后重启weblogic,并检测相应端口是否可用

    ~]# ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9 	//这种操作只有确定这台机器中只有这一个java程序时才能操作,否则就请仔细重启相关服务
    
    重启服务
    ~]# /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin/startServer.sh server1
    
    查看端口
    ~]# netstat -ano | grep 19002		//端口正常启用
    tcp        0      0 :::19002                    :::*                        LISTEN      off (0.00/0/0)
    

    ##使用Java VisualVM 监听服务 ![](https://images2018.cnblogs.com/blog/1202606/201808/1202606-20180829115112856-2016020268.png)
  • 相关阅读:
    Excel中的Vlookup函数用法
    C# WinForm 在窗口菜单上显示已打开窗体的标题及其窗体的排列
    C#使用Windows注册表编辑
    World Creater
    AtService.exe 占用CPU资源较高的解决办法
    几段SQL Server语句和存储过程(转载)
    代码转换工具
    ReSharper 4.5 Feature Map
    DXperienceXaf9.2.6 Personal Computer SN
    RegexBuddy v3.1.1 破解版
  • 原文地址:https://www.cnblogs.com/dance-walter/p/9552479.html
Copyright © 2011-2022 走看看