我正在使用 Apache ActiveMQ version 5.8.0 并且我下载了 Apache ActiveMQ Browser version 2.5.2.8
在Apache ActiveMQ中,我编辑了 activemq.xml 配置以使用JMX:
在启动脚本中,我按如下方式设置JMX设置:
#ACTIVEMQ_SUNJMX_START="-Dcom.sun.management.jmxremote.port=11099 "
ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.password.file=${ACTIVEMQ_CONF}/jmx.password"
ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.access.file=${ACTIVEMQ_CONF}/jmx.access"
ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote.ssl=false"
ACTIVEMQ_SUNJMX_START="$ACTIVEMQ_SUNJMX_START -Dcom.sun.management.jmxremote"
当我重新启动Apache ActiveMQ时,日志显示JMX已启动且可访问:
JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi | org.apache.activemq.broker.jmx.ManagementContext | JMX connector
还检查端口是否正在侦听结果进入侦听端口:
[me@server ~]$ netstat -lptun | grep 1099
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 :::1099 :::* LISTEN 16775/java
Apache ActiveMQ正在服务器上运行 . 例如,在IP 10.0.0.100上 . Apache ActiveMQ Browser在我的PC上运行(10.0.0.200) .
当我尝试连接Apache ActiveMQ Browser时,连接会一直失败 . 我正在使用以下设置:
JMX URL: service:jmx:rmi:///jndi/rmi://10.0.0.100:1099/jmxrmi
JMX role: admin
JMS password: activemq
此时我将用户和密码保留为 jmx.password 和 jmx.access 中的默认值 .
我还尝试使用putty连接为端口1099创建隧道到本地端口1099,然后连接到 localhost 而不是 10.0.0.100 以确保没有防火墙是问题 . 但都失败了 .
我忘了什么吗?