阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

JMX远程监控JVM

404次阅读
没有评论

共计 2754 个字符,预计需要花费 7 分钟才能阅读完成。

远程监控 JVM 状态需要在 JVM 启动的时候需要加上一段代码开启这个功能。(以下全部以 Ubuntu-14-04-server、jdk1.8、tomcat7.0 环境为基础)

配置的时候分两种情况:1、无需配置用户访问权限;2、需要配置用户访问权限

先看第一种:
首先更改 tomcat 启动参数(vim catalina.sh)
找到 # OS specific support. $var _must_ be set to either true or false. 添加如下变量:
Java_OPTS=”-Dcom.sun.management.jmxremote.port=1090 – 此端口号自定义,只要不是常用的或者系统已使用的即可,此处设置为 1090,此端口号不是 java 业务进程的端口号,所以不要混淆了。
-Dcom.sun.management.jmxremote.authenticate=false – 不起用用户访问权限
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=10.111.43.164″ 此处 hostname 设置为要监控的进程所在机器的 IP(进程本机)

第二种是配置用户权限:
找到 # OS specific support. $var _must_ be set to either true or false. 添加如下变量:
JAVA_OPTS=”-Dcom.sun.management.jmxremote.port=1090 – 此端口号自定义,只要不是常用的或者系统已使用的即可,此处设置为 1090
-Dcom.sun.management.jmxremote.authenticate=true – 起用用户访问权限
-Dcom.sun.management.jmxremote.ssl=false
-Djava.rmi.server.hostname=10.111.43.164″ – 此处 hostname 设置为要监控的进程所在机器的 IP(进程本机)
-Dcom.sun.management.jmxremote.acccess.file=/opt/apache-tomcat-7.0.57/jconsole/jmxremote.access — 配置用户访问权限(这个目录为自定义,只要能读取到即可,无特殊要求)
-Dcom.sun.management.jmxremote.password.file=/opt/apache-tomcat-7.0.57/jconsole/jmxremote.password”

现在要配置访问权限的验证文件:
首先拷贝上面启动参数多出来的两个文件
root@ubuntu:/opt/apache-tomcat-7.0.57# mkdir jconsole
root@ubuntu:/opt/apache-tomcat-7.0.57# cp /opt/jdk1.8.0_60/jre/lib/management/jmxremote.access ./jconsole/
root@ubuntu:/opt/apache-tomcat-7.0.57# cp /opt/jdk1.8.0_60/jre/lib/management/jmxremote.password.template ./jconsole/jmxremote.password
然后需要变更文件的权限(访问文件权限必须是 600,否则会报错,大家可以试一试):
root@ubuntu:/opt/apache-tomcat-7.0.57# chmod 600 ./jconsole/jmxremote.*

下面讲讲这两个文件:
jmxremote.access 里面其实最主要的就是两行:
monitorRole readonly – 这个只的是监控角色,权限为只读,如果仅仅只监控目的使用这个权限即可
controlRole readwrite – 这个具有操作权限,可以停起 server。

jmxremote.password 这个文件里面需要将最下面两行的注释给去掉,此处就是后面代码里面需要验证的用户名和密码(此处的两个用户一个是 monitorRole,密码为 QED;另一个用户为 controlRole,密码为 R &D),此处的用户名密码是可以自定义成的。
monitorRole QED
controlRole R&D

自定义效果如下:
jmxremote.access
monitorRole-admin readonly
controlRole-admin readwrite

jmxremote.password
monitorRole-admin !QAZ123
controlRole-admin !QAZ123

到这里服务器端的配置就结束了,下面就只要重启 server 即可。
root@ubuntu:/opt/apache-tomcat-7.0.57/bin# ./shutdown.sh 此处应该会出现连接的 1090 端口被占用提示,这里只需要将这个进程强制杀掉即可,jps 查到进程号,kill -9 pid
root@ubuntu:/opt/apache-tomcat-7.0.57/bin# ./startup.sh

下面就到代码部分:

String jmxURL = “service:jmx:rmi:///jndi/rmi://10.111.43.164:1090/jmxrmi”;
JMXServiceURL serviceURL = new JMXServiceURL(jmxURL);
Map<String, String[]> map = new HashMap<String, String[]>();
String[] credentials = new String[] {“monitorRole-admin”, “!QAZ123”};
map.put(“jmx.remote.credentials”,credentials);
JMXConnector connector = JMXConnectorFactory.connect(serviceURL,map);
MBeanServerConnection msc = connector.getMBeanServerConnection();

浅谈 JVM 的实现与垃圾回收机制  http://www.linuxidc.com/Linux/2016-01/127618.htm

在 Linux 中安装 Oracle JDK 8 以及 JVM 的类加载机制  http://www.linuxidc.com/Linux/2015-04/116491.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-03/128786.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2754字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19348
评论数
4
阅读量
7815759
文章搜索
热门文章
开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统 大家好,我是星哥。公司的项目文档存了一堆 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定! 前言 作为 NAS 玩家,你是否总被这些...
告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

告别Notion焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁”

  告别 Notion 焦虑!这款全平台开源加密笔记神器,让你的隐私真正“上锁” 引言 在数字笔记工...
支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare也瘫了连监控都挂,根因藏在哪?

支付宝、淘宝、闲鱼又双叕崩了,Cloudflare 也瘫了连监控都挂,根因藏在哪? 最近两天的互联网堪称“故障...
星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛NAS-12:开源笔记的进化之路,效率玩家的新选择

星哥带你玩飞牛 NAS-12:开源笔记的进化之路,效率玩家的新选择 前言 如何高效管理知识与笔记,已经成为技术...
仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

仅2MB大小!开源硬件监控工具:Win11 无缝适配,CPU、GPU、网速全维度掌控

还在忍受动辄数百兆的“全家桶”监控软件?后台偷占资源、界面杂乱冗余,想查个 CPU 温度都要层层点选? 今天给...