2013-08-17 8 views
1

모든 파일.JConsole의 원격 실행 항아리 <p></p>은 내가 최근에 클라이언트로 Mac 용 vnc4server와 닭을 사용하는 VNC를 사용할 원격 서버를 가지고,

그렇게하기위한 목적은 Java의 Jconsole을 실행하여 내 서버 로직을 실행하는 실행 가능한 jar 파일을 모니터 할 수있게하는 것입니다.

그러나 VNC를 사용하여 서버에 로그인 한 후에도 VNC에서 Jconsole을 사용하려고하면 오류가 계속 발생합니다.

연결을 실패했습니다. 다시 시도 하시겠습니까? 이제 프로세스를 시작한 사용자와 동일한 사용자로 로그인했습니다.

VNC에서 jconsole을 사용할 때 누락 된 것이 있습니까? 또한 로컬 컴퓨터의 Jconsole을 사용하여 실행 가능한 jar 파일을 원격으로 모니터링 할 수 있습니까?

다음은 jar 파일을 실행하는 옵션입니다. java -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port = 9005 -Dcom.sun.management.jmxremote.authenticate = false -Dcom.sun.management.remote.ssl = 거짓 -Djava.rmi.server.hostname = 여기서 ipaddress -jar 경로

감사


일을 고정이 JVM 옵션을 제공합니다. 여기 FIX : 당신은 VM에 전달해야 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only =

https://forums.oracle.com/thread/1177644

+0

jconsole이 원격 호스트에서 실행되는 경우 방화벽 문제입니다. –

+0

나는 로컬 컴퓨터에서해야 할 일이 서버 측에서 열린 포트를 가지고 있습니까? –

+0

vnc에서 jconsole을 실행할 수 있으면 로컬 호스트에 연결해야합니다. 할 수없는 경우 (그리고 프로그램이 JMX 포트를 노출 함) 운영 체제 방화벽이 차단됩니다. –

답변

1

false이는 VNC처럼 보이지 않는다 포트가 열려 있지 않거나, 방화벽을 차단하고 있거나, 모니터링과 관련하여 응용 프로그램 자체에 허가/인증 문제가 있습니다.

원인으로 VNC를 제거하고 jconsole의 로컬 연결에서 localhost를 사용하려면 "ssh -X REMOTHOST -n jconsole"을 수행하십시오. 이렇게하면 전체 X 서버 및 VNC를 실행하는 오버 헤드가 제거됩니다.

또한 Linux에서 다음을 수행하여 포트가 열려있는 프로세스를 확인할 수 있습니다. netstat -ap | 실행하려는 원격 호스트의 grep PORT_NUMBER.

콜린

+0

여기에서 발견 된 해결 방법 : VM에 전달해야합니다 : -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.local.only = false https://forums.oracle.com/thread/1177644 –