Wildfly 8 Final - jconsole无法远程连接

use*_*581 6 jconsole wildfly

美好的一天,人们,

我正在尝试使用jconsole连接到远程Wildfly 8 Final服务器.这不起作用:连接失败.经过多次尝试和失败后,我试图让它至少连接到我的'localhost'jboss,但即使这样也行不通.没有错误,它只是没有连接并说"连接失败".

细节:

  1. Wildfly 8 Final服务器
  2. 使用来自wildfly_installation/bin/jconsole.bat的jconsole
  3. 管理用户创建.尝试使用和不使用用户名/密码.
  4. standalone.xml是原始的,随Wildfly 8 Final一起提供,没有任何变化
  5. 我插入jconsole连接的url是:service:jmx:remoting-jmx:// localhost:9999
  6. Wildfly/jboss没有任何部署,没有WAR/EAR.
  7. Java版本是1.7版本51.最新的写作时刻.
  8. JAVA_HOME指向系统上安装的唯一java 1.7.
  9. JConsole可以连接到本地java进程并且可以工作,但不能远程连接.

基本上它是Wildfly 8 Final的全新安装,管理用户创建并且jconsole无法远程连接到它.

还有我尝试过的其他内容:我已经阅读了很多有关jconsole和Jboss AS 7.x的人的帖子.我已经尝试过这些线程的建议,但都没有奏效.另外,Wildfly 8似乎有不同的JMX版本(Jboss 7.x中的1.3 vs 1.1),所以我认为这就是为什么Jboss 7.x的standalone.xml建议不能用于Wildfly 8 Final.

小智 8

Java Mission Control JMX控制台和Flight Recorder分析器也适用于WildFly.

如前所述,正确的JMX连接字符串是:

service:jmx:http-remoting-jmx:// {insert server ip here}:9990

它需要管理用户(底部的详细信息).

至于Flight Recorder,这些应该添加到服务器运行时配置中standalone.conf(.bat):

JAVA_OPTS =%JAVA_OPTS%-XX:+ UnlockCommercialFeatures -XX:+ FlightRecorder -XX:FlightRecorderOptions = defaultrecording =真

在要运行Java Mission Control的工作站上,需要调整类路径jmc.ini(位于JDK的bin目录中):

-Xbootclasspath/a:c:\ Program Files\Java\jdk1.7.0_67\lib\jconsole.jar; c:\ Program Files\Java\jdk1.7.0_67\lib\tools.jar; c:\ wildfly-8.1. 0.Final\BIN \客户端\ jboss的-CLI-client.jar`

先决条件(您很可能已经配置了这个):

  1. 假设您已在工作站上安装了JDK c:\Program Files\Java\jdk1.7.0_67\
  2. 假设您已经在工作站上安装了WildFly c:\wildfly-8.1.0.Final
  3. 在服务器上,您需要具有适当的bind.address配置(或<any-address>)standalone.xml:

<interfaces>
    <interface name="management">
        <any-address/>
    </interface>
    <interface name="public">
        <any-address/>
    </interface>
    <interface name="unsecure">
        <any-address/>
    </interface>
</interfaces> 
Run Code Online (Sandbox Code Playgroud)
  1. You need to have a management user on the server, which you can add by using \bin\add-user.bat(.sh).

要测试此连接,请http://{insert server ip here}:9990使用Web浏览器打开服务器的Web UI控制台.

最好的祝福!


use*_*581 6

好吧,弄清楚了.在Wildfly 8的最终版本中删除了本机管理端口(9999).现在只有一个管理端口(9990),它有多个以前的多路复用端口,包括JMX.它仍然可以在Wildfly 8的发布候选版本中找到,因此对在线其他地方提供的在线说明和配置感到困惑.

所以关键是要指定正确的协议,这不是现在的remoting-jmx,而是http-remoting-jmx.连接到服务器的URL必须如下所示:

service:jmx:http-remoting-jmx://<server_host_or_ip>:9990
Run Code Online (Sandbox Code Playgroud)

(这与服务:jmx:remoting-jmx://:9999在以前的jboss/wildfly服务器中)

最后,不需要乱用standalone.xml配置.所有配置调整使其适用于Jboss 7.x将无法正常工作.它开箱即用,具有适当的协议和端口号.只需确保在ManagementRealm中创建一个jboss用户.