Configuração do Jetty JMX para acesso remoto

5

Estou tendo problemas para fazer o JMX funcionar no Jetty (9.1.3.v20140225), portanto, li sobre o docu do Jetty sobre isso.

Então eu adicionei o seguinte ao jetty.conf

# ========================================================
# jetty.conf Configuration for jetty.sh script
# --------------------------------------------------------
# This file is used by the jetty.sh script to provide
# extra configuration arguments for the start.jar command
# created by that script.
#
# Each line in this file becomes an arguement to start.jar
# in addition to those found in the start.ini file
# =======================================================
jetty-logging.xml
jetty-started.xml
etc/jetty.xml
etc/jetty-jmx.xml
etc/jetty-jmx-remote.xml

e adicionei jmx como parte do comando start.jar --add-to-start como o doco me disse como parte da conexão do Jconsole ao Jetty

link

[mybase]$ java /opt/jetty-dist/start.jar --add-to-start=jmx
INFO: jmx-remote      initialised in ${jetty.base}/start.ini (appended)
INFO: jmx             initialised transitively

Concedido quando fiz isso, ele só adicionou jmx e não jmx-remote, não sei por que, mas espero que alguém possa me informar o motivo.

Ao dizer tudo isso da documentação que li, eu cobri o que eles querem fazer.

link

Mas, novamente, o que ele afirma não está completamente certo no que diz respeito ao pacote, daí a razão pela qual eu adicionei o jetty-jmx-remote, já que o que o doco está dizendo deve estar em jetty-jmx. xml.

Em qualquer caso quando eu inicio o Jetty, estou vendo no arquivo de log que ele está iniciando

INFO: oejj.ConnectorServer: main: JMX URL remota: serviço: jmx: rmi: // host: 1099 / jndi / rmi: // host: 1099 / jmxrmi

Eu posso telnetar para 1099 do servidor, do meu cliente, eu usei o nmap apenas para checar se a porta está ouvindo e também a vi no netstat. Quando eu uso o VisualVM para conectar, acabei de receber um erro.

Tenho certeza de que abri todas as portas entre minha rede e a localização do Jetty.

Alguém pode me apontar na direção certa para seguir em frente.

Obrigado

    
por djo 17.06.2014 / 08:09

1 resposta

5

Ordenou, precisava adicionar manualmente isso no start.ini

--module=jmx-remote
## JMX Configuration
## Enable for an open port accessible by remote machines
jetty.jmxrmihost=localhost
jetty.jmxrmiport=1099
## Strictly speaking you shouldn't need --exec to use this in most environments.
## If this isn't working, make sure you enable --exec as well
-Dcom.sun.management.jmxremote

E atualizei isso no jetty-jmx.xml.

<Call class="java.lang.System" name="setProperty">
    <Arg>java.rmi.server.hostname</Arg>
    <Arg>IP-Address</Arg>
  </Call>

Além disso, não precisei fazer o que fiz no jetty.conf.

    
por 17.06.2014 / 08:40