远程使用JMX监视jboss

时间:2016-10-19 15:07:18

标签: jboss jmx remoting

我们正试图使用​​jconsole从远程机器使用jmx监视jboss:

jboss Version: jboss-eap-6.4 jdk version: 1.7.079

为实现这一目标,我在jboss配置中做了以下更改:

Domain.sh中添加了以下参数:

JAVA_OPTS="$JAVA_OPTS -    Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl"
JAVA_OPTS="$JAVA_OPTS -Djboss.platform.mbeanserver"
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=IP.of.machine"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=4847"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"

以下内容已在domain.xml

中配置
        <subsystem xmlns="urn:jboss:domain:jmx:1.3">
            <expose-resolved-model/>
            <expose-expression-model/>
            <remoting-connector use-management-endpoint="false"/>
        </subsystem>

Defined an ApplicationRealm user with the help of add-user.sh

在做了这么多之后,我可以使用下面的url通过本地服务器(jboss正在运行)通过jmx监视jboss:

service:jmx:remoting-jmx://ip.of.machine:4847

但是,当我尝试从远程计算机提供相同的URL时,我会遇到异常。

`与xxxxx的连接没有成功'。

我需要帮助,知道我做错了什么。这样我就可以远程使用JMX控制台监视jboss。

更新 源和目的地之间没有防火墙。

1 个答案:

答案 0 :(得分:0)

您是否在远程计算机上安装了JBOSS? JBOSS指出&#34;如果你在不同于服务器的机器上运行jconsole,你需要安装本地JBoss:Java JRE的jconsole不能开箱即用(即没有额外的罐子) classpath)。此外,如果您在远程计算机上且目标计算机不在DNS中,则必须将其添加到主机文件中。&#34;

  • 然后确保你在他的机器上设置了JAVA_HOME并指向你的JDK 1.7。
  • 运行相应的JBOSS jconsole脚本:JBOSS_HOME / bin / jconsole.sh(linux)或JBOSS_HOME / bin / jconsole.bat(windows)脚本。然后,系统会提示您输入正常的连接对话框,并输入相应的信息。

如果你不想走这条路,那么我可以做一些研究,找出需要包含在JDK jconsole中的适当的罐子。