glassfish - 通过 JMX 将 JConsole 连接到远程 glassfish 4.1/4.1.1

标签 glassfish glassfish-4 glassfish-4.1

GlassFish 在具有公共(public) IP 地址和 jmx 端口 8986 的主机上运行

启动时

JMXStartupService has started JMXConnector on JMXService URL service:jmx:rmi://test.anahata.net.au:8986/jndi/rmi://test.anahata.net.au:8986/jmxrmi]]

当我尝试使用来自另一个盒子的 test.anahata.net.au:8986 + 用户 + 密码通过 JConsole 连接时,我得到:
non-JRMP server at remote endpoint 

如果我尝试使用服务连接:jmx:rmi://test.anahata.net.au:8986/jndi/rmi://test.anahata.net.au:8986/jmxrmi

我得到:
connection refused

域.xml
> <admin-service system-jmx-connector-name="system"
> type="das-and-server">
>         <jmx-connector address="0.0.0.0" port="8986" name="system" auth-realm-name="admin-realm">
>           <ssl classname="com.sun.enterprise.security.ssl.GlassfishSSLImpl"
> client-auth="want" cert-nickname="s1as"></ssl>
>         </jmx-connector>
>         <property name="adminConsoleContextRoot" value="/admin"></property>
>         <property name="adminConsoleDownloadLocation" value="${com.sun.aas.installRoot}/lib/install/applications/admingui.war"></property>
>         <property name="ipsRoot" value="${com.sun.aas.installRoot}/.."></property>
>         <das-config></das-config>
>       </admin-service>
> 
> ...
> <jvm-options>-Djava.rmi.server.hostname=test.anahata.net.au</jvm-options>

我在运行 gf 4.1.1 和真正的 SSL 证书的不同 vm 上有一个类似的设置,我可以使用 host:port 连接到它,但如果我尝试使用连接
服务:jmx:rmi://host.com:8886/jndi/rmi://host.com:8886/jmxrmi

我明白了
java.rmi.ConnectIOException: non-JRMP server at remote endpoint

有人对此有所了解吗?

最佳答案

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.local.only=false
-Dcom.sun.management.jmxremote.port=8686
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
-Djava.rmi.server.hostname=myremoteip

由于 glassfish 4 这是唯一的方法。

虽然我确实在运行 asadmin enable-secure-admin 之前设法连接到 glassfish 自己的 jmx。

打开日志记录到 FINE,看看你是否在 JMX auth 期间收到“LoginException”
javax.enterprise.system.tools.admin.security

无论如何,我的结论很头疼,只需使用上面的 jvm jmx 即可。

关于glassfish - 通过 JMX 将 JConsole 连接到远程 glassfish 4.1/4.1.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35289813/

相关文章:

maven - 实例化 EJBContainer 时出现异常

java - WAR 中的配置

eclipse-kepler - Eclipse - Glassfish 4 调试启动超时

java - 使用 java Swing 向 JMS 队列发送消息

java - Glassfish 服务器未连接。部署不可用 intelliJ

glassfish - @MessageDriven 事务和重新传递语义

java - 如何热部署maven项目到glassfish?

java-ee-6 - javax.ejb.EJBException java.lang.IllegalStateException : Unable to retrieve EntityManagerFactory for unitName

java - Glassfish 服务器提前退出,退出代码为 134

spring-mvc - GlassFish 4,Grizzly 框架 2.3.23 : Instance could not be initialized. 类=接口(interface) org.glassfish.grizzly.http.server.AddOn