博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JMX操作ActiveMQ(2)
阅读量:6940 次
发布时间:2019-06-27

本文共 1261 字,大约阅读时间需要 4 分钟。

默认情况下,ActiveMQ使用useJmx后,jmx的url为

service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi

这时,jmx的MBean server被绑死在localhost上,无法在broker所在机器以外的机器访问。

其实ActiveMQ提供了jmx相关的几个配置,不仅可以调整这个url中的ip和端口,还可以使用其他的MBean server。

 

属性名称 默认值 描述
useMBeanServer true 为true则避免创建一个MBeanServer,使用jvm中已有的MBeanServer
jmxDomainName org.apache.activemq jmx域,所有ObjectName的前缀
createMBeanServer true 为true则在需要时创建一个MBeanServer
createConnector true 为true则创建一个JMX connector
connectorPort 1099  JMX connector的端口
connectorHost localhost  JMX connector和RMI server(rmiServerPort>0)的host 
rmiServerPort 0  RMI server的端口(便于穿过防火墙)
connectorPath /jmxrmi JMX connector注册的路径
findTigerMBeanServer true 启用或禁用查找Java 5 平台的 MBeanServer

1、可以通过修改connectorHost和connectorPort,修改掉url中的localhost:1099

 

例如本地的:

 

则启动的时候显示: 

INFO | JMX consoles can connect to service:jmx:rmi:///jndi/rmi://10.1.1.101:1098/jmxrmi

此时即可通过jconsole或jmx程序远程访问ActiveMQ:

 

2、也可以通过rmiServerPort指定RMI的端口,

 

 

控制台输出:

 

INFO | JMX consoles can connect to service:jmx:rmi://10.1.1.101:1097/jndi/rmi://10.1.1.101:1098/jmxrmi

 

此时url变成了

 

service:jmx:rmi://10.1.1.101:1097/jndi/rmi://10.1.1.101:1098/jmxrmi

这样,rmi和jmx的端口都可以自己配置了。

 

3、通过修改jmxDomainName可以设置MBean对象的ObjectName

参考文档:http://activemq.apache.org/jmx.html

 

你可能感兴趣的文章