文档章节

jconsole远程配置

t
 top_dino
发布于 2017/09/07 10:30
字数 375
阅读 9
收藏 0

背景

JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM。可以监控本地和远程的java程序。

这个对于查询内存使用情况和检查线程死锁非常有用。

 

无密码访问远程JVM


涉及到的参数如下:

-Dcom.sun.management.jmxremote

-Djava.rmi.server.hostname

-Dcom.sun.management.jmxremote.port=10051

设置完后,需要根据这个端口来访问

-Dcom.sun.management.jmxremote.rmi.port=10052

这个端口很奇怪,如果不设置这个端口,虚拟机启动的时候,会生成一个随机的端口,而jconsole是需要去连接这个端口的,除非关闭防火墙

因为服务器一般只能开放指定的端口,所以这儿端口一定要设置,并且一定要在防火墙中开放这个端口

-Dcom.sun.management.jmxremote.authenticate=false

是否使用用户名密码登录

-Dcom.sun.management.jmxremote.ssl=false

是否使用ssh连接

如:

java -cp . -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=114.112.xxx.xxx -Dcom.sun.management.jmxremote.port=10051 -Dcom.sun.management.jmxremote.rmi.port=10052 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false Test

其中hostname,一定要用本机的实际IP

配置完这些端口后,直接使用命令行:

jconsole 114.112.xxx.xxx:10051

就可以登录了

带密码访问远程JVM

和无密码不同的地方:

-Dcom.sun.management.jmxremote.authenticate=true

这个参数设置为true,

同时需要修改一下

$JAVA_HOME/jre/lib/management/目录下的两个文件

chmod 600 jmxremote.password jmxremote.access

修改jmxremote.password,设置密码

设置完后,登录就可以了

如果需要监控tomcat的话,在$TOMCAT_HOME/bin/catalina.sh中加上:

CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=114.112.xxx.xxx -Dcom.sun.management.jmxremote.port=10051 -Dcom.sun.management.jmxremote.rmi.port=10051 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmx
    remote.ssl=false"

 

参考

© 著作权归作者所有

共有 人打赏支持
t
粉丝 0
博文 1
码字总数 375
作品 0
私信 提问
不用重新配置,用jconsole连接远程机器进程及获得本地进程的JMX Url的终极办法

估计有很多人都在想用jconsole连接远程机器上的进程时,发现没有配置jmx端口,或者其它的东东。 下面介始一种很简单的办法,可以不用重启远程机器的进程: ssh -X 192.168.66.66 -l username...

横云断岭
2013/11/30
0
0
Jconsole监控tomcat 的JVM内存(远程、linux、windows)

Jconsole是JDK自带的监控工具,在JDK/bin目录下可以找到。它用于连接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面...

wangdy
2016/06/24
16
0
使用JConsole监控java程序的运行状态总结

1.使用场景 在云主机上进行程序的压力测试,云主机使用端口映射的方式对外开发端口, 所以在局域网中的jconse无法连接到云主机上的java程序。使用了好几办法包括xManager远程启动jconsle,将j...

ordiy
2016/11/01
47
0
Tomcat配置Jconsole , JvisualVm 监控配置

Java内置有jconsole监控工具,可以监控CPU、内存、线程、类加载等信息,但以服务方式启动的tomcat不能被jconsole识别,在网上查找了一通,发现可以通过配置JAVA_OPTS方式启动RMI远程监控接口...

Sobey
2016/03/11
0
0
Confluence 6 使用 JConsole 监控远程 Confluence

针对生产系统中,我们推荐你使用远程监控,这个将不会消耗你远程 Confluence 服务器的资源。 启动远程监控: 添加下面的属性到 / 文件中,端口你可以定义任何你没有使用的端口。 确定你将如何...

honeymose
2018/07/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Nextjs+React非页面组件SSR渲染

@随风溜达的向日葵 Nextjs Nextjs是React生态中非常受欢迎的SSR(server side render——服务端渲染)框架,只需要几个步骤就可以搭建一个支持SSR的工程(_Nextjs_的快速搭建见Next.js入门)...

随风溜达的向日葵
53分钟前
0
0
如何在 Linux 系统查询机器最近重启时间

在你的 Linux 或类 UNIX 系统中,你是如何查询系统上次重新启动的日期和时间?怎样显示系统关机的日期和时间? last 命令不仅可以按照时间从近到远的顺序列出该会话的特定用户、终端和主机名...

来来来来来
今天
3
0
Redis协议是什么样的

前言 我们用过很多redis的客户端,有没有相过自己撸一个redis客户端? 其实很简单,基于socket,监听6379端口,解析数据就可以了。 redis协议 解析数据的过程主要依赖于redis的协议了。 我们...

春哥大魔王的博客
今天
6
0
乱入Linux界的我是如何学习的

欢迎来到建哥学Linux,咳!咳!咳!开个玩笑哈,我是一个IT男,IT界的入门选手,正在学习Linux。 在之前,一直想进军IT界,学习IT技术,但是苦于没有人指导,也不知道学什么,最开始我自己在...

linuxCool
今天
4
0
携程Apollo统一配置中心的搭建和使用(java)

一.Apollo配置中心介绍 1、What is Apollo 1.1 Apollo简介 Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到...

morpheusWB
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部