1. 程式人生 > >Jconsole遠端連線

Jconsole遠端連線

  根據oracle網站上的文件,本地使用jconsole沒有問題。但當我從windows連線到linux時(centos5.4)時,老是連線不上)。原因是Linux上JVM給jconsole的RMI配置檔案不對,

jvm使用了hostname -i的IP地址,我的/etc/hosts上127.0.0.1,所以遠端老是連線不上。

   只要在java啟動引數中加入 -Djava.rmi.server.hostname=192.168.0.10  顯示說明JVM返回給jconsole的IP地址即可。

擋在java啟動引數中加入 -Dcom.sun.management.jmxremote.port=6666  時,jvm回去讀取  JRE_HOME/lib/management/jmxremote.password 和  JRE_HOME/lib/management/jmxremote.access檔案。其中jmxremote.password 說明遠端訪問的使用者名稱和密碼, jmxremote.access說明使用者的訪問許可權,有readonly和readwrite選項。 jmxremote.password 可以有jmxremote.password.template生成,同時要注意修改jmxremote.password的訪問許可權為使用者只讀,組和others無許可權,  chmod 0400 ./jmxremote.password。

否則會出現Error: Password file read access must be restricted: /root/jdk1.6.0_26/jre/lib/management/jmxremote.password

  一下兩個選項分別禁止ssl驗證和無使用者名稱密碼訪問 

 -Dcom.sun.management.jmxremote.ssl=false 

-Dcom.sun.management.jmxremote.authenticate=false