Lo siento por esta pregunta que se debe haber preguntado muchas veces, pero no puedo resolver mi problema. He leído muchos blogs, sitios, foros, ... y no encontré ninguna solución en mi caso.VisualVM a través de firewalls: solución de problemas de RMI
caso: Necesito conectar VisualVM en mi caja de servidores distantes (Tomcats, weblogics) para la supervisión del rendimiento/hilos/memoria. Esos servidores están instalados en máquinas (físicas o virtuales) que están protegidas por un firewall. Se abren grandes intervalos de puertos en el firewall y se pueden usar, pero no en todos los puertos.
Pruebas de
- He intentado conexiones directas a través de JMX en VisualVM, utilizando siguientes opciones de JVM en el lado del servidor al iniciar el servidor:
-Djava.rmi.server.hostname=[hostname] -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=[port] -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
He precisó la nombre de host porque desde mi red el nombre de host y la dirección IP del servidor no son los mismos que los de la red del servidor remoto.
Sin éxito, VisualVM siempre parece buscar un servidor desconocido.
juzgados a partir jstatd en el lado del servidor en un accesible (opción -p) Puerto de mi caja (telnet en este puerto las obras), pero cuando se lanza VisualVM en este host con el puerto jstatd, todavía parece esperando algo inalcanzable ... Mismo comportamiento con jps conectando a este host remoto.
intentado utilizar las mismas herramientas en un servidor con menos protección de red, y funciona. Así que he visto las conexiones entre mi caja y el servidor y están hechas en puertos diferentes de lo que he especificado para jstatd. Entiendo que este puerto es necesario para la primera comunicación (tipo de handshake) y las comunicaciones reales se realizan en otros puertos, pero no son predecibles (por ejemplo, 60305, 55197, ...). No estoy seguro de entender muy bien cómo funciona RMI.
Por favor, ayúdame, me estoy volviendo loco!
Si tiene la actualización 4 de Java 7, hay esperanza con la marca '' -Dcom.sun.management.jmxremote.rmi.port = 7091'' Vea esta publicación en el blog: http://hirt.se/ blog /? p = 289 – davey