[ 
https://issues.apache.org/jira/browse/KARAF-7610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17650934#comment-17650934
 ] 

Jean-Baptiste Onofré commented on KARAF-7610:
---------------------------------------------

I'm not able to reproduce the issue neither with Karaf 4.3.7 docker image or 
Karaf 4.4.2 docker image.

Here's the steps I did:
 # I created a new bridge network named {{{}karaf-test{}}}:

{code:java}
$ docker network create karaf-test
$ docker network ls
NETWORK ID     NAME         DRIVER    SCOPE
25db086ae405   bridge       bridge    local
ebb62471d41a   host         host      local
d2b4fe1e52dc   karaf-test   bridge    local
ba5636bf592c   minikube     bridge    local
11f7808e089a   none         null      local{code}
2. I run docker container like this:
{code:java}
$ docker run -it -d --name=test --network=karaf-test -p 1099:1099 -p 
44444:44444 apache/karaf:4.4.2{code}
3. Then, I "connect" to the test container with:
{code:java}
$ docker exec -it test /bin/bash {code}
to:
 * {{edit /opt/apache-karaf/etc/org.apache.karaf.management.cfg}} with 
{{rmiRegistryHost=0.0.0.0}} and {{rmiServerHost=0.0.0.0}}
 * {{edit /opt/apache-karaf/etc/users.properties}} to enable karaf user and 
group

4. {{docker inspect}} gives me the IP address of the container, e.g. 
{{"IPAddress": "172.18.0.2"}} in my case

5. I can connect jconsole without problem on 
{{service:jmx:rmi:///jndi/rmi://172.18.0.2:1099/karaf-root}}

Can you share the difference in your setup ? Maybe the docker network type ?

> JMX: rmiRegistryHost=0.0.0.0 not working
> ----------------------------------------
>
>                 Key: KARAF-7610
>                 URL: https://issues.apache.org/jira/browse/KARAF-7610
>             Project: Karaf
>          Issue Type: Bug
>    Affects Versions: 4.2.16, 4.3.8, 4.4.2
>         Environment: Debian 11.3
> Docker version 20.10.17, build 100c701
>            Reporter: Ondrej Mrekaj
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>
> We noticed a problem with access to JMX in the case that karaf is running in 
> a docker container and uses a different network than the host. Last versions 
> of  apache karaf  where were working example below  are 4.3.0, 4.2.11.
> The given problem does not allow us to use JMX monitoring and simultaneously 
> separate individual docker networks from the host network. 
> Please see example below: 
> *working* version, docker network=host
> {code:java}
> docker run -it -d --name=test.4.4.2 --network=host -e 
> ORG_APACHE_KARAF_MANAGEMENT_RMIREGISTRYHOST='172.21.51.155' -e 
> ORG_APACHE_KARAF_MANAGEMENT_RMISERVERHOST='172.21.51.155' -e KARAF_DEBUG=true 
> -p 1099:1099 -p 44444:44444 apache/karaf:4.4.2{code}
> {code:java}
> docker exec -it test.4.4.2 /bin/bash
> sed -i 's/rmiServerHost = 127.0.0.1/rmiServerHost = 
> ${env:ORG_APACHE_KARAF_MANAGEMENT_RMISERVERHOST}/'     
> /opt/apache-karaf/etc/org.apache.karaf.management.cfg
> sed -i 's/rmiRegistryHost = 127.0.0.1/rmiRegistryHost = 
> ${env:ORG_APACHE_KARAF_MANAGEMENT_RMIREGISTRYHOST}/' 
> /opt/apache-karaf/etc/org.apache.karaf.management.cfg
> sed -i 's/#karaf = karaf,_g_:admingroup/karaf = karaf,_g_:admingroup/' 
> /opt/apache-karaf/etc/users.properties
> sed -i 's/#_g_\\:admingroup = /_g_\\:admingroup = /' 
> /opt/apache-karaf/etc/users.properties
> echo 'java.rmi.server.hostname=172.21.51.155'  >> 
> /opt/apache-karaf/etc/system.properties
> exit
> docker restart test.4.4.2{code}
> _Connect to service:jmx:rmi:///jndi/rmi://172.21.51.155:1099/karaf-root was 
> {*}successful{*}._
> *not-working* version, docker network=test
> {code:java}
> docker network create test
> docker run -it -d --name=test.4.4.2 --network=test-e 
> ORG_APACHE_KARAF_MANAGEMENT_RMIREGISTRYHOST='0.0.0.0' -e 
> ORG_APACHE_KARAF_MANAGEMENT_RMISERVERHOST='0.0.0.0' -e KARAF_DEBUG=true -p 
> 1099:1099 -p 44444:44444 apache/karaf:4.4.2
> {code}
> {code:java}
> docker exec -it test.4.4.2 /bin/bash
> sed -i 's/rmiServerHost = 127.0.0.1/rmiServerHost = 
> ${env:ORG_APACHE_KARAF_MANAGEMENT_RMISERVERHOST}/'     
> /opt/apache-karaf/etc/org.apache.karaf.management.cfg
> sed -i 's/rmiRegistryHost = 127.0.0.1/rmiRegistryHost = 
> ${env:ORG_APACHE_KARAF_MANAGEMENT_RMIREGISTRYHOST}/' 
> /opt/apache-karaf/etc/org.apache.karaf.management.cfg
> sed -i 's/#karaf = karaf,_g_:admingroup/karaf = karaf,_g_:admingroup/' 
> /opt/apache-karaf/etc/users.properties
> sed -i 's/#_g_\\:admingroup = /_g_\\:admingroup = /' 
> /opt/apache-karaf/etc/users.properties
> echo 'java.rmi.server.hostname=172.21.51.155'  >> 
> /opt/apache-karaf/etc/system.properties
> exit
> docker restart test.4.4.2{code}
> _Connect to service:jmx:rmi:///jndi/rmi://172.21.51.155:1099/karaf-root was 
> {*}unsuccessful{*}._



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to