Uploaded image for project: 'Red Hat Fuse'
  1. Red Hat Fuse
  2. ENTESB-4406

Multiple calls of container-start command on one ssh container start multiple karaf processes

XMLWordPrintable

    • Todo

      Using container-start ssh-container command multiple times when container is stopped creates multiple karaf processes. I know it is not common usage but if by some mistake you call the container-start command two times then two karaf processes are started on ssh machine. After that you are unable to stop the container again from root.

      Stopping the container and calling container-start two times results into this:

      JBossFuse:karaf@root> container-list
      [id]   [version]  [type]  [connected]  [profiles]              [provision status]
      root*  1.0        karaf   yes          fabric                  success           
                                             fabric-ensemble-0000-1                    
                                             jboss-fuse-full                           
      ssh1   1.0        karaf   no           default                 stopped           
      JBossFuse:karaf@root> container-start ssh1 
      The list of container names: [ssh1]
      JBossFuse:karaf@root> container-start ssh1 
      The list of container names: [ssh1]
      

      Machine when ssh container is running:

      [fuse@rjakubco-test ~]$ ps -ef | grep karaf.base
      fuse      3735  3627 99 09:42 ?        00:00:28 java -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -Dkaraf.restart.jvm.supported=true -Djava.endorsed.dirs=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/jre/lib/endorsed:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/lib/endorsed:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/endorsed -Djava.ext.dirs=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/jre/lib/ext:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/lib/ext:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/ext -Dkaraf.instances=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/instances -Dkaraf.home=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071 -Dkaraf.base=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071 -Dkaraf.data=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/data -Dkaraf.etc=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/etc -Djava.io.tmpdir=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/data/tmp -Djava.util.logging.config.file=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/etc/java.util.logging.properties -Djavax.management.builder.initial=org.apache.karaf.management.boot.KarafMBeanServerBuilder -Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -classpath /home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf-jaas-boot.jar:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf.jar:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf-jmx-boot.jar org.apache.karaf.main.Main
      fuse      3973  3854 17 09:42 ?        00:00:01 java -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -Dkaraf.restart.jvm.supported=true -Djava.endorsed.dirs=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/jre/lib/endorsed:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/lib/endorsed:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/endorsed -Djava.ext.dirs=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/jre/lib/ext:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64/jre/lib/ext:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/ext -Dkaraf.instances=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/instances -Dkaraf.home=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071 -Dkaraf.base=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071 -Dkaraf.data=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/data -Dkaraf.etc=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/etc -Djava.io.tmpdir=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/data/tmp -Djava.util.logging.config.file=/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/etc/java.util.logging.properties -Djavax.management.builder.initial=org.apache.karaf.management.boot.KarafMBeanServerBuilder -Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true -classpath /home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf-jaas-boot.jar:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf.jar:/home/fuse/containers/ssh1/fabric8-karaf-1.2.0.redhat-621071/lib/karaf-jmx-boot.jar org.apache.karaf.main.Main
      fuse      4055  2572  0 09:42 pts/0    00:00:00 grep --color=auto karaf.base
      

      Looking into root again we see that container is running and has provision status is success but we will be unable to stop the container because the second process is still running. Calling container-stop multiple doesn't help.

      JBossFuse:karaf@root> container-list
      [id]   [version]  [type]  [connected]  [profiles]              [provision status]
      root*  1.0        karaf   yes          fabric                  success           
                                             fabric-ensemble-0000-1                    
                                             jboss-fuse-full                           
      ssh1   1.0        karaf   yes          default                 success  
      JBossFuse:karaf@root> container-stop ssh1 
      The list of container names: [ssh1]
      Container 'ssh1' stopped successfully.
      
      waiting 3 minutes:
      JBossFuse:karaf@root> container-list
      [id]   [version]  [type]  [connected]  [profiles]              [provision status]
      root*  1.0        karaf   yes          fabric                  success           
                                             fabric-ensemble-0000-1                    
                                             jboss-fuse-full                           
      ssh1   1.0        karaf   yes          default                 stopped   
      

      I am not really sure if this can be fixed in some way because ssh container is working in asynchronous way but maybe at least some warning would be nice. This is not a bug maybe but more like enhancement in a sense.

              pantinor@redhat.com Paolo Antinori
              rjakubco Roman Jakubco (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Created:
                Updated:
                Resolved: