JMX远程连不上ActiveMQ

rmn190 2012-09-04 04:07:19
现在要用JMX来远程地监控与操作ActiveMQ,不过, 悲催的是, 第一步就有问题了, 远程的ActiveMQ连不上。

Google加Baidu了半天,看到的方法都试过了,还是不行。

郁闷。

现在静下心来回顾下JMX远程连接ActiveMQ的思路。 JMX连接有两种方式:

1,普通端口号(非jmxrmi)方式。

在默认脚本activemq基础上只改了下面的内容,其它的没动:

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"


客户端这边是直接通过jconsole方式连接的,没有用Java代码连接。 如下所示:




这里的用户名密码是admin/activemq。 应该不是用户名密码用错了吧?

jconsole上直接报“连接失败”错误。




2, jmxrmi方式。

在默认脚本activemq基础上只改了下面的内容,其它的没动:
ACTIVEMQ_SUNJMX_CONTROL="--jmxurl service:jmx:rmi:///jndi/rmi://127.0.0.1:1099/jmxrmi --jmxuser controlRole --jmxpassword abcd1234"
#ACTIVEMQ_SUNJMX_CONTROL=""



/etc/hosts文件中新加了“127.0.0.1 192.168.40.50”, 这里的192.168.40.50是远程服务器的IP。
这时用java代码连接, 代码如下:

RemoteJMXBrokerFacade createConnector = new RemoteJMXBrokerFacade();

System.setProperty("webconsole.jmx.url", "service:jmx:rmi:///jndi/rmi://192.168.40.50:1099/jmxrmi");
System.setProperty("webconsole.jmx.user","controlRole");
System.setProperty("webconsole.jmx.password","abcd1234");

SystemPropertiesConfiguration configuration = new SystemPropertiesConfiguration();
createConnector.setConfiguration(configuration);
try {
BrokerViewMBean brokerAdmin = createConnector.getBrokerAdmin();

Java运行时报这样的异常:
java.lang.RuntimeException: java.rmi.ConnectException: Connection refused to host: 192.168.40.50; nested exception is:


剩下的试了不少方法, 类似的有http://blog.csdn.net/lucett/article/details/7024756, 但都不行。

于是, 不想再瞎试了, 想系统地研究下JMX远程连接ActiveMQ的事。

请问谁哪有JMX远程连接ActiveMQ的时序图?或相关的材料?


注: 远程服务器上防火墙已经不再拦截端口号1099。




...全文
505 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kimmking 2013-07-01
  • 打赏
  • 举报
回复
jmx MBeanserver启动的时候就绑死了localhost
rmn190 2012-09-04
  • 打赏
  • 举报
回复
连本地的ActiveMQ一点事也没有。

悲催~~~
rmn190 2012-09-04
  • 打赏
  • 举报
回复
这里边涉及到的概念有: hostname, sub,

这些天JMX远程连ActiveMQ时有什么用?

能不能系统地解释下?

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧