1. 修改服务器上jmxremote.access与jmxremote.password,输入命令:
     find -name jmxremote.access

    进入该jmxremote.access文件所在目录中,输入命令:
    cd /usr/java/jdk1.8.0_91/jre/lib/management

    路径要用到两个文件:(jmxremote.access和jmxremote.password)
    mv jmxremote.access.template jmxremote.access如果 jmxremote.access文件不存在,只有 jmxremote.access.template 文件时,需创建 该文件
    vi jmxremote.access

    mv jmxremote.password.template jmxremote.password  如果 jmxremote.password 文件不存在,只有 jmxremote.password.template 文件时,需创建 该文件
    vi jmxremote.password  

  2. 启动相应jar文件
    java -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=端口 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Djava.rmi.server.hostname=172.16.103.115 -jar jar包名

    例如

    java -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Djava.rmi.server.hostname=172.16.103.115 -jar SpringMVCDemo-0.0.1-SNAPSHOT.jar

    java -Xms200m -Xmx1024m 
    -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=7091 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -Djava.rmi.server.hostname=172.16.103.115 -jar SpringMVCDemo-0.0.1-SNAPSHOT.jar

  3. 本机启动JvisualVM
    在 JDK的bin目录下双击jvisualvm.exe启动

  4. 在JavaVisuaVM中右击远程 -> 远程添加主机

  5. 右击该远程主机 -> 添加JMX连接

  6. 监控见面如下:
  7. 查看线程DUMP
     右击JMX连接图标,线程DUMP

    8堆DUMP
    右击jmx,堆dump,

    从远程机拷到本地

    文件 -> 装入

    就能看堆dump

    9. 堆比较

添加jmx启动参数,踩过的坑

添加jmx 参数

-Dcom.sun.management.jmxremote=true 
-Dcom.sun.management.jmxremote.port=123456 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-XX:+UnlockCommercialFeatures 
-XX:+FlightRecorder 
-Djava.rmi.server.hostname=172.16.103.127

1.jmxremote.password和jmxremote.access 权限问题

注意:jmxremote.password和jmxremote.access文件只允许启动用户名对该文件拥有读写权限 ,

权限不对,会报:

Error: Password file read access must be restricted: /usr/java/jdk1.8.0_91/jre/lib/management/jmxremote.password
Error: Password file read access must be restricted: /usr/java/jdk1.8.0_91/jre/lib/management/jmxremote.password

调整文件权限

[root@dog:management]# chmod 600 *

[root@dog:management]# chown root:root *
[root@dog:management]# ll

2.添加jmx 启动参数,导致启动shell 脚本里格式不正确

Error: Could not find or load main class \
Error: Could not find or load main class \

开始是直接将启动参数贴到启动shell脚本,导致启动失败。

手工一行一行添加参数后,定位到最后一行-Djava.rmi.server.hostname=172.16.103.127 参数 可能是编码,格式的问题。

手动将ip地址敲进去,问题解决。

JvisualVM、JMC监控远程服务器的更多相关文章

  1. 关于nagios监控远程服务器对服务器性能影响的测试

    1.    Nagios监视远程服务器时,是通过在控制端执行以下命令进行数据收集的: /usr/local/nagios/libexec/check_http -I 192.168.16.11 /us ...

  2. 通过SSIS监控远程服务器Windows服务并发送邮件报警!

    利用SSIS不仅可以做BI项目的ETL,而且还可以做一些系统监控和维护工作,由于之前供应商写的Windows服务是读取ESB的消息进行处理,且通过OA流程与访客系统进行了集成,无论是ESB出现状况,还 ...

  3. 通过SSIS监控远程服务器磁盘空间并发送邮件报警!

    由于之前ESB是供应商部署的,且部署在C盘(C盘空间很小,还添加了很多ESB的windows服务日志在C盘,很容易把C盘空间占满,导致ESB服务运行宕机,几乎每隔几周发生一次事故,需要人工干预处理,不 ...

  4. 使用VisualVM监控远程服务器JVM

    VisualVM是JDK自带的一款全能型性能监控和故障分析工具,包括对CPU使用.JVM堆内存消耗.线程.类加载的实时监控,内存dump文件分析,垃圾回收运行情况的可视化分析等,对故障排查和性能调优很 ...

  5. VisualVM监控远程服务器JVM

    VisualVM是JDK自带的一款全能型性能监控和故障分析工具,包括对CPU使用.JVM堆内存消耗.线程.类加载的实时监控,内存dump文件分析,垃圾回收运行情况的可视化分析等,对故障排查和性能调优很 ...

  6. 【Java】监控远程服务器JVM

    今天在用JMeter进行测试的时候,发现线程并发量到50的时候会导致阻塞情况,于是需要监控远程JVM,那么如何监控远程JVM呢? 首先,找到启动计量引擎的sh文件,例如我目前的计量引擎启停文件为str ...

  7. JVM监控远程服务器

    1. 首先配置服务器端,进入服务器tomcat的bin目录下,打开catalina.sh配置文件,xxx为服务器配置路径. # cd /xxx/apache-tomcat-/bin # vim cat ...

  8. Python实现自动化监控远程服务器

    最近发现Python课器做很多事情,在监控服务器有其独特的优势,耗费资源少,开发周期短. 首先我们做一个定时或者实时脚本timedtask.py,让其定时监控目标服务器,两种方式: 第一种: #!/u ...

  9. 使用WMI和性能计数器监控远程服务器权限设置

    应用场景:在web服务器中,通过.NET编码使用WMI查询远程服务器的一些硬件配置信息,使用性能计数器查询远程机器的运行时资源使用情况.在网上没有找到相关的东西,特记录与大家共享. 将web服务器和所 ...

随机推荐

  1. iOS 测试三方 KIF 的那些事

    一: KIF 三方库的配置   今天的广州天气还不错,原本想试试UI测试的,前几天也了解到很多公司都在用 KIF 这这三方框架!!今天也就试着做做,可就跪在了这个安装上,我用cocopods 导入了 ...

  2. SpringMVC中404错误解决方法总结

    在新手配置Spring MVC的时候,感觉都弄好了之后,运行起来却显示404错误. 网上对出现404的问题不同情况,都有了解决方法,前几天我也遇到了这个问题,顺便把这些问题总结一下. 解决问题最重要的 ...

  3. iptables 完成联网控制 (续) ,独立native进程监听。

    上一篇:http://www.cnblogs.com/oscar1011/p/5243877.html 之前做的iptables 来进行的联网控制,一直耿耿于怀,想要知道系统里的netd等等是如何做到 ...

  4. Ubuntu下搭建FTP服务器

    Ubuntu下搭建FTP服务器 我装的服务器系统是Ubuntu 12.04 LTS,FTP软件当然是选择大名鼎鼎的vsftpd(very secure FTP daemon), 用系统自带的FTP还好 ...

  5. WC2015 冬眠营滚粗记

    WC2015 转眼间就过去了,回想半年前我还是一个无知的渣渣现在已经能参加冬令营了心里真的有点小激动= =,先不论胸牌滚粗的结果,来讲一下自己这几天的经历吧 DAY 0: 早上起来才发现自己什么都没收 ...

  6. 分布式配置管理--百度disconf搭建过程和详细使用

    先说官方文档:http://disconf.readthedocs.io/zh_CN/latest/index.html 不管是否要根据官方文档来搭建disconf,都应该看一下这一份文档.精炼清晰地 ...

  7. c++类的构造函数详解

    c++类的构造函数详解 一. 构造函数是干什么的 class Counter{ public:         // 类Counter的构造函数         // 特点:以类名作为函数名,无返回类 ...

  8. 深度神经网络(DNN)的正则化

    和普通的机器学习算法一样,DNN也会遇到过拟合的问题,需要考虑泛化,这里我们就对DNN的正则化方法做一个总结. 1. DNN的L1&L2正则化 想到正则化,我们首先想到的就是L1正则化和L2正 ...

  9. loadrunner11.0之IP欺骗

    一:设置虚拟ip地址 操作步骤: 1:添加ip地址 运行loadrunner---tools---IP wizard 2:选择create  new setting,点击"下一步" ...

  10. Scalatra--Introduction And Quick start

    Introduction Scalatra是一款轻易级Scala web框架,通过Scalatra可以很轻易创建web Application,由Linkedln开源并遵循了Ruby Web框架的Si ...