环境:
服务器端: Linux + jdk1.7.0_75 + tomcat 7
本地: Win + jdk1.7.0_55

一、修改/etc/hosts文件

hostname -i 如果显示127.0.0.1时,修改/etc/hosts 将127.0.0.1替换成linux服务器的真实ip

二、修改 catalina.sh文件

vim  /usr/local/tomcat7**/bin/catalina.sh   #进入tomcat的bin目录下

在# OS specific support.  $var _must_ be set to either true or false.下增加

#JAVA_OPTS="-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

三、修改jmxremote.access和jmxremote.password.template

cd /usr/java/jdk1.7.0_75/jre/lib/management

vim jmxremote.access

monitotRole 只读权限  随意添加一个用户xxxx    controlRole 读写权限,添加用户admin

#monitorRole   readonly
lisssss readonly
#controlRole readwrite \
admin readwrite \
create javax.management.monitor.*,javax.management.timer.* \
unregister

mv jmxremote.password.template   jmxremote.password #重命名

chmod +w  jmxremote.password  #增加写权限

vim jmxremote.password   为只读用户和读写用户设置密码

# monitorRole  QED
lisssss 1234xx
# controlRole R&D
admin 1234xx

四、打开本地jconsole,连接远程linux中jvm

1.打开jconsole

cmd----jconsole 或者双击C:\Program Files\Java\jdk1.7.0_55\bin下的jconsole.exe

2.连接远程linux中jvm

选择远程进程:远程服务器的ip:端口号  用户名、口令输入jmxremote.password中的用户名或密码---点击连接

jconsole监控成功如下图:

问题:监控后,关闭tomcat,报错:提示9008端口号被占用,原因在关闭tomcat时,也执行了Catalish中的jmxremote的端口号

[root@localhost bin]# ./shutdown.sh
/usr/local/tomcat7-java_shop/bin/catalina.sh: line : -agentpath:/opt/jprofiler7/bin/linux-x64/libjprofilerti.so=port=: No such file or directory
Using CATALINA_BASE: /usr/local/tomcat7**
Using CATALINA_HOME: /usr/local/tomcat7**
Using CATALINA_TMPDIR: /usr/local/tomcat7**/temp
Using JRE_HOME: /usr/java/jdk1..0_75
Using CLASSPATH: /usr/local/tomcat7-java_shop/bin/bootstrap.jar:/usr/local/tomcat7**/bin/tomcat-juli.jar
Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: ; nested exception is:
java.net.BindException: Address already in use

解决:在catalish.sh文件中,判断是否为启动命令,如果是start,就设置变量,否则,就不设置

JAVA_OPTS="$JAVA_OPTS -Xms256m -Xmx1024m -XX:PermSize=128M -XX:MaxPermSize=256m"
if [ "$1" = "start" ];then
echo "set console";
JAVA_OPTS="-Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false";
else
echo "no startup";
fi;

声明,本随笔综合了各大神的文章,就不一 一赘述了,在此表示感谢!

本地win下JConsole监控远程linux下的JVM的更多相关文章

  1. Jvisualvm监控远程linux下Tomcat

    Jvisualvm监控远程linux下Tomcat 1.编辑tomcat/bin/catalina.sh 加入下面这段代码,中间无换行: CATALINA_OPTS="$CATALINA_O ...

  2. jconsole监控远程linux tomcat运行情况的配置 (转)

    来自:http://zhumeng8337797.blog.163.com/blog/static/100768914201242494649455/ 步骤如下: 1.编辑tomcat/bin/cat ...

  3. jprofiler_监控远程linux服务器的JVM进程(转 非常棒)

    几天前写了一篇文章,jprofiler_监控远程linux服务器的tomcat进程(实践),介绍了使用jprofiler怎样监控远程linux的tomcat进程,这两天想了想,除了可以监控tomcat ...

  4. jprofiler_监控远程linux服务器的JVM进程(实践)

    几天前写了一篇文章,jprofiler_监控远程linux服务器的tomcat进程(实践),介绍了使用jprofiler怎样监控远程linux的tomcat进程,这两天想了想,除了可以监控tomcat ...

  5. jconsole监控上Linux上的JVM

    说明: 首先JConsole这个是JDK里面自带的工具  在JAVA_HOME/bin目录下,今天主要测试远程监控JVM 第一步:设置好需要远程机器的Tomcat 修改Tomcat下的配置文件:/us ...

  6. Nagios的安装配置与应用之五监控远程Linux服务器

    本文出自 “曹坏水” 博客,请务必保留此出处http://cao2012.blog.51cto.com/366908/1132113 NRPE是Nagios的一个功能扩展,它可在远程Linux和UNI ...

  7. Nagios学习笔记四:基于NRPE监控远程Linux主机

    1.NRPE简介 Nagios监控远程主机的方法有多种,其方式包括SNMP.NRPE.SSH和NCSA等.这里介绍其通过NRPE监控远程Linux主机的方式. NRPE(Nagios Remote P ...

  8. 使用jconsole监控远程JVM

    使用jconsole监控远程JVM 学习了:https://www.linuxidc.com/Linux/2015-02/113420.htm https://www.cnblogs.com/thin ...

  9. Linux下的tree命令 --Linux下目录树查看

    Linux下的tree命令 --Linux下目录树查看 有时我们需要生成目录树结构,可以使用的有ls -R,但是实际效果并不好 这时需要用到tree命令,但是大部分Linux系统是默认不安装该命令的, ...

随机推荐

  1. Elasticsearch Date类型,时间存储相关说明

    资料 网址 Elasticsearch 插入时间字段时数据格式问题 https://segmentfault.com/a/1190000016296983 Elasticsearch Date类型,时 ...

  2. table的各种用法

    使用 colgroup 和 col 实现响应式表格(table的各种用法):http://coderlt.coding.me/2017/11/20/table-colgroup/

  3. 牛客NOIP暑期七天营-提高组6C:分班问题 (组合数)

    题意:A班有N个人,B班有M个人,现在要组成一个新的班级C班,为了公平,从AB班各抽相同人数的人. 现在求所有方案中,人数之和是多少. 思路:即求Σ k*C(N,k)*C(M,k);    先忽略这个 ...

  4. 2018宁夏邀请赛 L. Continuous Intervals

    转化一下询问即为区间$max - min + 1 = cnt$,其中$cnt$表示区间内数的种类数. 即求有多少区间$max - min - cnt=-1$,注意到任意区间的$max-min-cnt ...

  5. @EnableFeignClients 客户端详细

    在Spring cloud应用中,当我们要使用feign客户端时,一般要做以下三件事情 : 1.使用注解@EnableFeignClients启用feign客户端: 示例 : @SpringBootA ...

  6. Zookeeper的缺点

    工作中对Zookeeper都是间接比较浅的使用,性能也没太高的要求所以对它的缺点也没太深的认识,从网上评价看,它还是有不少问题的. 1. 原生客户端坑太多,Curator(Curator是Netfli ...

  7. Java实现PV操作 | 读者与写者(在三种情况下进行讨论)

    注 :本文应结合[天勤笔记]进行学习. 1.读者优先 设置rmutex信号量来对readcount变量进行互斥访问.mutex信号量对写者与读者进行同步. static syn rmutex=new ...

  8. 【CF55D】Beautiful numbers

    [CF55D]Beautiful numbers 题面 洛谷 题解 考虑到如果一个数整除所有数那么可以整除他们的\(lcm\),而如果数\(x\)满足\(x\bmod Lcm(1,2...,9)=r\ ...

  9. uni-app 实现分享生成图片

    <template> <view> <view class="personal_li" @click="shareClick"&g ...

  10. 一个bug程序员的入园

    大家好,我叫dg是一个只写bug的程序员.当然只写bug也是有好处的,那就是踩过的坑多了,摔的跟斗多了,并且没有被摔死,勇敢的活了下来,练就了一身钢筋铁骨.哈哈,开个玩笑.但是猜的坑多了就知道了哪里有 ...