Как подключить JMC (Java Mission Control) к удаленной JVM в ubuntu?

Я могу подключиться к JMC к JVM, находясь в той же системе. Тем не менее, я хочу контролировать удаленный сервер. Как подключить локальный JMC к удаленному JVM?

Ответы

Ответ 1

На сервере {Ubuntu} Отредактируйте файл /etc/hosts

127.0.1.1       server-name

Замените выше строки этой строкой

<system-ip>     server-name

Ответ 2

Все это описано в документации:
1. Нажмите Справка- > Справка по управлению миссией Java.
2. Проверьте помощь браузера JVM.

За более подробной информацией обращайтесь:
http://docs.oracle.com/javase/7/docs/technotes/guides/management/agent.html

Сначала вам нужно включить внешний агент JMX на сервере. Вы делаете это, добавляя соответствующий com.sun.management.jmxremote к флагам командной строки для серверной JVM, к которой вы хотите подключиться. Вот простой пример набора системных свойств, которые можно использовать. Они отключают защиту и аутентификацию, поэтому НИКОГДА не используйте ее так, как это делается в процессе производства:

-Dcom.sun.management.jmxremote.port=7091
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false

Затем вы создадите настраиваемое соединение в JMC. Вы можете сделать это, нажав кнопку "Создать настраиваемое соединение" в браузере JVM: Location of create custom connection button

В следующем диалоговом окне вы просто вводите хост и порт.

Ответ 3

Моя среда - jboss 7.1 в Linux, пыталась подключить JMC к экземпляру jboss, изначально у меня возникли проблемы с отключением подключения - после дня и половины копания удаленный JMC работает для меня сейчас, со следующими конфигурациями в автономном режиме .conf:

JBOSS_MODULES_SYSTEM_PKGS="org.jboss.byteman,org.jboss.logmanager"

JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS"


JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.jboss.logmanager.LogManager"

JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:/apps/jboss-as-7.1.1.Final/modules/org/jboss/logmanager/main/jboss-logmanager-1.2.2.GA.jar"
JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:/apps/jboss-as-7.1.1.Final/modules/org/jboss/logmanager/log4j/main/jboss-logmanager-log4j-1.0.0.GA.jar"
JAVA_OPTS="$JAVA_OPTS -Xbootclasspath/p:/apps/jboss-as-7.1.1.Final/modules/org/apache/log4j/main/log4j-1.2.16.jar"

JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote=true"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=7091"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.rmi.port=7091"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"

JAVA_OPTS="$JAVA_OPTS -XX:+UnlockCommercialFeatures"
JAVA_OPTS="$JAVA_OPTS -XX:+FlightRecorder"