Be careful, by default, JMX is bound to localhost (not 0.0.0.0), so not visible 
outside.

I mean by default, in etc/org.apache.karaf.management.cfg, you have:

rmiRegistryHost = 127.0.0.1
rmiServerHost = 127.0.0.1

Can you try with 0.0.0.0 here instead of localhost ?

Regards
JB

> Le 9 févr. 2021 à 16:08, Daniel Las <daniel....@empirica.io> a écrit :
> 
> HI,
> 
> I started the container using bare 4.3.0 image pulled from Docker hub:
> 
> docker run -p 1099:1099 -p 44444:44444 apache/karaf:4.3.0
> 
> This is output from Docker ps command:
> 
> e5492ba6143a        apache/karaf:4.3.0                                    
> "karaf run"              15 seconds ago      Up 13 seconds           
> 8101/tcp, 0.0.0.0:1099->1099/tcp, 0.0.0.0:44444->44444/tcp, 8181/tcp   
> blissful_mahavira
> 
> When I try to connect from Visual VM, there are errors logged:
> 
> 14:55:56.962 WARN  [RMI TCP Accept-44444] RMI TCP Accept-44444: accept loop 
> for ServerSocket[addr=0.0.0.0/0.0.0.0,localport=44444 
> <http://0.0.0.0/0.0.0.0,localport=44444>] throws
> java.io.IOException: Only connections from clients running on the host where 
> the RMI remote objects have been exported are accepted.
> at 
> org.apache.karaf.management.ConnectorServerFactory.checkLocal(ConnectorServerFactory.java:900)
> at 
> org.apache.karaf.management.ConnectorServerFactory.access$000(ConnectorServerFactory.java:67)
> at 
> org.apache.karaf.management.ConnectorServerFactory$LocalOnlyServerSocket.accept(ConnectorServerFactory.java:646)
> at 
> java.rmi/sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(Unknown
>  Source)
> at java.rmi/sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(Unknown Source)
> at java.base/java.lang.Thread.run(Unknown Source)
> 
> I gave the JConsole a try, it fails to connect as well. Every time I try to 
> connect, the above exception is logged.
> 
> Regards
> 
> wt., 9 lut 2021 o 14:15 Jean-Baptiste Onofre <j...@nanthrax.net 
> <mailto:j...@nanthrax.net>> napisał(a):
> And you set both registry and transport ports ?
> 
> It’s seems that the 44444 is not bound.
> 
> What’s the service URL you have in etc/org.apache.karaf.management.cfg ?
> 
> Regards
> JB
> 
>> Le 9 févr. 2021 à 14:01, Daniel Las <daniel....@empirica.io 
>> <mailto:daniel....@empirica.io>> a écrit :
>> 
>> Hi,
>> 
>> Yes, I did.
>> 
>> Regards
>> 
>> wt., 9 lut 2021 o 13:59 Jean-Baptiste Onofre <j...@nanthrax.net 
>> <mailto:j...@nanthrax.net>> napisał(a):
>> Hi,
>> 
>> Did you bind the JMX ports on docker ? (Like docker run -p 1099:1099 -p 
>> 44444:44444 …)
>> 
>> Regards
>> JB
>> 
>>> Le 9 févr. 2021 à 13:27, Daniel Las <daniel....@empirica.io 
>>> <mailto:daniel....@empirica.io>> a écrit :
>>> 
>>> Hi,
>>> 
>>> I'm running a custom distribution based on Karaf 4.2.9 in docker. How 
>>> should I configure it to allow JMX access?
>>>  
>>> I tried to set host IP in rmiRegistryHost and rmiServerHost in 
>>> org.apache.karaf.management.cfg but I can't connect to it from JMX client. 
>>> Without it I see errors in log when JMX client attempts to connect:
>>> 
>>> 2021-02-09T12:12:17,275 | WARN  | RMI TCP Accept-44444 | tcp                
>>>               | 3 - org.ops4j.pax.logging.pax-logging-api - 1.11.7 | RMI 
>>> TCP Accept-44444: accept loop for 
>>> ServerSocket[addr=0.0.0.0/0.0.0.0,localport=44444 
>>> <http://0.0.0.0/0.0.0.0,localport=44444>] throws
>>> java.io.IOException: Only connections from clients running on the host 
>>> where the RMI remote objects have been exported are accepted.
>>> at 
>>> org.apache.karaf.management.ConnectorServerFactory.checkLocal(ConnectorServerFactory.java:900)
>>>  ~[?:?]
>>> at 
>>> org.apache.karaf.management.ConnectorServerFactory.access$000(ConnectorServerFactory.java:67)
>>>  ~[?:?]
>>> at 
>>> org.apache.karaf.management.ConnectorServerFactory$LocalOnlyServerSocket.accept(ConnectorServerFactory.java:646)
>>>  ~[?:?]
>>> at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.executeAcceptLoop(Unknown 
>>> Source) [?:?]
>>> at sun.rmi.transport.tcp.TCPTransport$AcceptLoop.run(Unknown Source) [?:?]
>>> at java.lang.Thread.run(Unknown Source) [?:?]
>>> 
>>> Best regards
>>> -- 
>>> Daniel Łaś
>>> CTO at Empirica S.A.
>>> +48 695 616181
>> 
>> 
>> 
>> -- 
>> Daniel Łaś
>> CTO at Empirica S.A.
>> +48 695 616181
> 
> 
> 
> -- 
> Daniel Łaś
> CTO at Empirica S.A.
> +48 695 616181

Reply via email to