![](/img/trans.png)
[英]Access HornetQ Connection Factory (Locally) via JNDI in JBoss EAP 6.2.0
[英]JBoss HornetQ JMX access
我们在JBoss内部运行HornetQ消息。 从远程VM我们无法使用JMXURL进行连接。
HornetQ设置(hornet1 configuration.xml):
<jmx-management-enabled>true</jmx-management-enabled>
JBoss设置
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port = 3000 -Dcom.sun.management.jmxremote.ssl = false -Dcom.sun.management.jmxremote.authenticate = false
从远程JVM中,这些URL都不起作用:
至于JBoss 6.0.0
jconsole服务:jmx:rmi:// localhost / jndi / rmi:// localhost:1090 / jmxconnector
作品。 如果将localhost
替换为您的主机地址,它也可以正常工作。
请注意,我使用了JBoss
run.sh -c whatever --host = 0.0.0.0
以便JBoss绑定到所有接口/地址(而不是仅限localhost):
--host = host_or_ip ...所有JBoss服务的绑定地址
我已将run.sh更改为:
export JMX_ARGS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=3000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
java $JVM_ARGS -classpath $CLASSPATH $JMX_ARGS org.hornetq.integration.bootstrap.HornetQBootstrapServer $FILENAME
那么当hornetq启动时你应该在日志中看到这个:
15:15:22,312 CONFIG [sun.management.jmxremote] JMX Connector ready at: service:jmx:rmi:///jndi/rmi://localhost:3000/jmxrmi
在客户端,你应该能够连接到服务器:
val url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:3000/jmxrmi")
val connection = JMXConnectorFactory.connect(url, new java.util.HashMap())
def mbeanServer = connection.getMBeanServerConnection()
val objectName = new ObjectName("org.hornetq:module=Core,type=Server")
val serverInfo = mbeanServer.getMBeanInfo(objectName)
println(serverInfo.getDescription())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.