2016-06-29 15 views
0

Ich möchte eine Remote-Ausführung von Java (Spring Boot) -Anwendung mit jvisualvm (oder Jconsole) überwachen. Wenn ich lokal arbeite, kann ich die verwalteten Beans sowohl in jvisualvm als auch in jconsole sehen. Bei einer Remote-Verbindung kann ich keine Verbindung herstellen. Ich habe es mit verschiedenen Java-Prozessen versucht (z. B. mit Feder xd). Hier auf SO und auf Google nach Antworten zu suchen hat nicht geholfen.Remote-Überwachung mit Java Visualvm und JMX

Das sind meine JAVA_OPTS (auf der Remote-Host):

$ echo $JAVA_OPTS 
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9010 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=10.106.138.210 

Die Java-Version auf dem Remote-Host (CentOS Linux vm) ist:

$ java -version 
java version "1.8.0_45" 
Java(TM) SE Runtime Environment (build 1.8.0_45-b14) 
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode) 

Die Java-Version auf dem lokalen Rechner (Mac OS) ist etwas anders:

Java in Windows-Rechner

$ java -version  
java version "1.8.0_40" 
Java(TM) SE Runtime Environment (build 1.8.0_40-b25) 
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode) 
In jvisualvm I add the remote connection as follows (tried both with ssl connection and without): 

Wenn ich remote Java-Anwendung durch jvisualvm verbinden, wie wie, 10.106.138.210:9010

Ich habe Fehler wie,

Cannot connect to 10.106.138.210:9010 service:jmx:rmi:///jndi/rmi://10.106.138.210:9010/jmxrmi 

Bitte helfen Sie mir

+0

Hat diesen Befehl ausführen erfolgreich auf Ihrem Windows-Host? 'telnet 10.106.138.210 9010'? – ck1

+0

Nein .. es hat nicht funktioniert .. Ich habe Verbindung fehlgeschlagen Nachricht, wenn ich Telnet – Vinoth

Antwort

0

Höchstwahrscheinlich werden Sie keine Verbindung herstellen können aufgrund eines Netzwerkproblems, zum Beispiel die von Ihnen verwendete IP-Adresse ist falsch, eine Firewall verhindert die Verbindung, oder der java Prozess, zu dem Sie eine Verbindung herstellen, hört Port 9010 nicht wirklich Konnektivität mit TCP/IP:

telnet 10.106.138.210 9010 

Referenz:

https://visualvm.java.net/jmx_connections.html

+0

netstat -nlp | grep: 9010 tcp6 0 0 ::: 9010 ::: * LISTEN 17503/java – Vinoth

+0

Der Prozess läuft auf dem Port 9010 in der Linux-Maschine – Vinoth

+0

Wie kann ich überprüfen, ob die Firewall verhindert oder nicht – Vinoth