2011-01-13 2 views
0

JConsole을 사용하여 원격으로 서버에 연결하여 &을 모니터링하고 거기에 등록 된 MBeans를 사용하려고합니다.JConsole을 사용하여 Linux/WASv7에 원격으로 연결하는 방법은 무엇입니까?

"localhost : 8050"을 사용하여 서버에 VNC를 실행하고 JConsole을 로컬로 실행할 수 있지만 IP 주소 나 호스트 이름을 통해 원격으로 연결하려는 시도는 NullPointerException에서 실패합니다.

java.lang.NullPointerException이

javax.management.remote.rmi.RMIConnector에서 javax.management.remote.rmi.RMIConnector.connect (RMIConnector.java:281)

에서 .connect (RMIConnector.java:227)

sun.tools.jconsole.ProxyClient.tryConnect에서

(ProxyClient.java:334)

sun.tools.jconsole에서 나는 다른 우수한 Q & A의를 통해 읽은

.ProxyClient.connect (ProxyClient.java:296)

sun.tools.jconsole.VMPanel $의 2.run에서

(VMPanel.java:280) 여기 및 다른 많은 웹 사이트에서 볼 수 있습니다. 호스트 파일을 편집하면서 iptables로 포트를 열어 보았습니다. ssl 및 인증이 비활성화되면 local.only가 비활성화됩니다. 프록시를 비활성화하고 JMXServiceURL도 시도했지만 아무 소용이 없습니다.

어떻게 JConsole을 실행할 수 있습니까 & 로컬로 연결할 수 있지만 원격으로 연결할 수 없습니까?

심지어 두 번째 서버에서 win2008 & 바람둥이를 실행하면 완벽하게 재생됩니다!

아이디어가 있으십니까?

감사합니다! Martin

+0

netstat 또는 lsof를 사용하여 원격 관리 포트가 열려 있는지 확인할 수 있습니까? –

답변

1
JAVA_OPTS="-Dcom.sun.management.jmxremote \ 
    -Dcom.sun.management.jmxremote.port=<port no> \ 
    -Dcom.sun.management.jmxremote.ssl=false \ 
    -Dcom.sun.management.jmxremote.authenticate=false \ 
    -Dcom.sun.management.jmxremote.local.only=false \ 
    -Djava.rmi.server.hostname=<server ip>" 

응용 프로그램 서버에서이 설정을 사용해보십시오. 그것은 Tomcat에서 나를 위해 일했습니다.