简体   繁体   中英

How do I use Jconsole to connect to EC2?

I am running Jconsole on my macbook and trying to connect to a linux terminal on ec2 that does not have graphics(only command line access).

I run my code like this:

java -jar program.jar -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9005 
-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.remote.ssl=false

I read here that there was a problem with accessing via EC2(after I had problems connecting) and the solution seemed to be ' java.rmi.server.hostname to the public hostname of the instance '

I'm a bit confused at how to do this. I have tried two things, one to put it directly in my code(in the void static main section):

System.setProperty( "java.rmi.server.hostname" , "external_EC2_address" ); //in my real code I have the correct address here

The system accepted it(no errors when I created/uploaded runnable jar). I also opened the firewall on my instance to allow all TCP traffic. No Luck. I tried the above statement also as a flag to launch to the program but still no luck.

Any ideas how do this?

UPDATE: This will show how green I am at Java, I got a step further(still doesn't work) but I realized putting the java -jar filename.jar and then the options didn't give me the same results as putting my -jar at the end of the command. I tried that and the program tries to connect and then says connection failed(before it would just say it at the login screen right away).

Set the hostname property before the VM starts:

java -Dcom.sun.management.jmxremote \
     -Dcom.sun.management.jmxremote.port=9005 \
     -Dcom.sun.management.jmxremote.authenticate=false \
     -Dcom.sun.management.remote.ssl=false \
     -Djava.rmi.server.hostname=the.public.ip \
     -jar program.jar

Add the relevant rules to your security group.

Finally, ensure iptables is stopped , as this could be the reason that you're not getting a connection from the outside world. As root (or using sudo ...):

# service iptables stop

您需要在实例的安全组中打开JMX远程端口(根据上面的示例为9005)。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM