文档章节

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
JMX学习以及在log4j中的应用

前言 JMX即Java Managemen Extensions,是一个为应用程序植入管理功能的框架。一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理。 常常在编程的过程中...

buglife
2015/01/06
0
15
Confluence 6 使用 JConsole 监控远程 Confluence

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

honeymose
07/05
0
0
使用JConsole监控java程序的运行状态总结

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

ordiy
2016/11/01
47
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea新建springCloud项目(5)- 订单服务

1.创建订单api,如下: 2.创建订单实现逻辑 3.新建订单、订单商品表 -- 订单 create table `order_master` ( `order_id` varchar(32) not null, `buyer_name` varchar(32) not null comment......

monroeCode
4分钟前
0
0
游戏开发经验谈(二):对战类全球服游戏的设计与实现

上篇文章《游戏开发经验谈(一):游戏架构里隐藏的五个坑及其应对方案》,我们主要讲解了游戏架构设计当中隐藏的一些坑及其应对方案,错过的小伙伴可以回溯之前的内容。本期内容,将会重点介...

UCloudTech
14分钟前
0
0
Mysql基本语法

一.联合主键 drop table CONTENT_AND_CATALOG;CREATE TABLE `tobebetter`.`CONTENT_AND_CATALOG` ( `ID` VARCHAR(120) NOT NULL , `CONTENT_ID` VARCHAR(120) , `CA......

我是菜鸟我骄傲
15分钟前
0
0
179. centos7 安装mariadb

1. centos7 中安装mariadb 1.1 执行安装 centos7 自带了mariadb yum -y install mariadb mariadb-server 1.2 启动mariadb systemctl start mariadb 1.3 设置开机启动 systemctl enable maria......

Lucky_Me
22分钟前
0
0
【AI实战】动手训练自己的目标检测模型(YOLO篇)

在前面的文章中,已经介绍了基于SSD使用自己的数据训练目标检测模型(见文章:手把手教你训练自己的目标检测模型),本文将基于另一个目标检测模型YOLO,介绍如何使用自己的数据进行训练。 ...

雪饼
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部