如何配置JBoss 6.3.0GA以使用RMI JMX?

时间:2014-09-19 13:17:47

标签: java jboss jmx nagios

如您所见,有新的指示:
https://docs.jboss.org/author/display/AS71/JMX+subsystem+configuration
旧的RMI指令:
https://docs.jboss.org/author/pages/viewpage.action?pageId=21627109

我可以使用新指令,但是我们使用nagios,它只允许通过RMI检查JMX,所以我需要让RMI JMX工作。

有人有解决方案吗? 我不能使用旧说明,因为它不再支持<jmx-connector>

我在JBoss初创公司的JAVA_OPTS上添加了以下内容:

JAVA_OPTS =“$ JAVA_OPTS -Dcom.sun.management.jmxremote.port = 12345 -Dcom.sun.management.jmxremote.authenticate = false -Dcom.sun.management.jmxremote.ssl = false”-Djava.util。 logging.manager = org.jboss.logmanager.LogManager -Dorg.jboss.logging.Logger.pluginClass = org.jboss.logging.logmanager.LoggerPluginImpl -Djava.rmi.server.hostname = 10.20.2.50

但我无法通过jconsole连接服务:jmx:rmi:/// jndi / rmi://10.20.2.50:12345 / jmxrmi

(PS。如果有任何拥有redhat paywall访问权限的人可以在这里报告答案:https://access.redhat.com/solutions/263763那将会膨胀:P)

1 个答案:

答案 0 :(得分:7)

要连接到JMX,输入的URL应采用

格式
service:jmx:remoting-jmx://{host_name}:{port}

独立模式

其中{port}是受监控的AS7安装的本机管理接口(默认值= 9999)。

域名模式

其中{port}是受监控的AS7安装的JMX子系统接口(第一个服务器= 4447,端口偏移量= 150下一个服务器)。

<subsystem xmlns="urn:jboss:domain:jmx:1.1">
   <show-model value="true"/>
   <remoting-connector use-management-endpoint="false"/>
</subsystem>

两种模式

在localhost之外,您必须设置-Djboss.bind.address.management或xml(standalone.xml / host.xml)。

连接后,jconsole提供的功能可以正常使用。

<强>验证

连接器正在使用JBoss Remoting与服务器通信,因此CLI将使用完全相同的身份验证机制。

本地

对于在AS7安装本地运行的进程,我们支持本地身份验证机制,允许客户端通过在服务器上共享文件系统上的令牌来验证其身份 - 此机制以静默方式运行,无需任何进一步的用户交互。

用户名/密码

如果无法进行本地身份验证,例如客户端作为与AS7进程不同的用户运行,或者默认情况下正在远程安装上运行,则使用的下一个机制是基于用户名/密码。如果使用此机制,如果使用默认管理连接器(端口9999),则在ManagementRealm中使用用户的用户名和密码;如果使用远程连接器(端口4447),则应在ApplicationRealm中使用用户的用户名和密码。新连接&#39;在“连接”之前的屏幕单击按钮。

$JBOSS_HOME/bin/add-user.sh(Linux)或$JBOSS_HOME/bin/add-user.bat(Windows)脚本可用于添加这些用户。确保在管理用户和ManagementRealm与Application User和ApplicationRealm之间进行选择,具体取决于您是使用默认管理连接器还是远程连接器(通常用于域模式或远程连接时)。

通过JBoss Remoting连接JMX的必要库

可以通过管理连接使用JBoss Remoting访问JMX MBeanServer。因此,有必要将以下libaries从EAP6 / AS7发行版的modules目录添加到监视应用程序的类路径中:

org/jboss/remoting3/remoting-jmx
org/jboss/remoting3
org/jboss/logging
org/jboss/xnio
org/jboss/xnio/nio
org/jboss/sasl
org/jboss/marshalling
org/jboss/marshalling/river

参考:Using jconsole to connect to JMX on AS7

其他资源:Connecting VisualVM with a remote JBoss AS 7 / EAP6 JVM process

修改

JBoss EAP 5支持使用RMI进行JMX监控,JBoss EAP 6不支持。 EAP 6使用“remoting-jmx”而不是“rmi”。

你应该寻找另一种解决方案,如SNMP,或适用于nagios的插件

请参阅:

JVM monitoring via SNMP of JBoss EAP 6 worker nodes with pnp4nagios Template

Jboss SAR MBean and Perl plug-in for Nagios compatible with Jboss 7.1.1