11 Replies Latest reply on Sep 29, 2011 9:26 PM by ffang

    Servicemix features:install hangs on server with no internet access

    dhoyt

      We have a corporate policy that none of our servers can have internet access.  When I try to install any features on our our ServiceMix environment, Servicemix appears to hang.  When I look at the netstat output, it appears hung on SYN_SENT.  I assume this is Servicemix going out to the Maven repositories it knows about looking for any packages it doesn't have.  Is there a way I can load any necessary jars or bundles myself from disk?  I saw you can add new repositories via addURL, but I didn't see a way to install them from disk.  Any help is greatly appreciated.

       

       

      One example is:   features:install webconsole

        • 1. Re: Servicemix features:install hangs on server with no internet access
          dhoyt

          It looks like it is hanging while trying to connect to tibet079.server4you.de.80

          • 2. Re: Servicemix features:install hangs on server with no internet access
            ffang

            Hi,

             

            FUSE ESB will download artifacts remotely if necessary.

             

            The general solution for your scenario is setup a nexus server which play the role as proxy, so the nexus server can access internet and download artifacts, all your intranet machine can download from your nexus server, so that you can only configure your firewall to let nexus server through. You may need google to get more details about how nexus works.

             

            About use the artifacts locally, if all necessary artifacts is in your local maven repo folder, by default it will be loaded firstly before check remote download. So you just need ensure all necessary artifacts is in your local maven repo,  but IMO this isn't a simple task to do, as maven transitive dependency and your application may become complex and you'll easily run into some new dependency artifacts you don't have locally.

             

            I prefer to the nexus solution as it's not very hard for firewall configuration and can download on demand automatically.

             

            Freeman

            • 3. Re: Servicemix features:install hangs on server with no internet access
              dhoyt

              Thanks for the reply.  I played with Nexus, and the setup was very simple.  The problem is that we can not use a poxy server either.  Any files we want to use need to be placed by us.  I do have access to the internet on our build machines and developer workstations, so they can install any packages they need.  What is the best way to take features installed on those servers and move them to production?

               

                  I see that when I install the webconsole, it installs to data/cache/org.eclipse.osgi/bundles/5.  What is the best way to take this package and add it to the file system (like a local .m2 repository that ServiceMix can use).  Is it possible to zip it up an drop it in the deploy directory?

               

                  I understand that ServiceMix was designed with internet connectivity in mind, but it just isn't an option in our production environment.  Thanks in advance for any help in getting around this shortcoming.

               

               

              Daryl

              • 4. Re: Servicemix features:install hangs on server with no internet access
                ffang

                Hi,

                 

                You can zip your local .m2 repository from build machine, and then copy/override the one from your runtime machine as a workaround.

                 

                Freeman

                • 5. Re: Servicemix features:install hangs on server with no internet access
                  dhoyt

                  Is there a way I can see what packages are being added?  I can add packages to my local repository, but when I install packages through ServiceMix (such as webconsole), I don't see that getting added to my local repository.  I just see them being added to the data directory with other bundles.  Is there a way to list all packages ServiceMix is using?

                  • 6. Re: Servicemix features:install hangs on server with no internet access
                    aschutz

                    Apologies beforehand for picking up this thread half a year later..

                     

                    Daryl,

                     

                    your scenario is exactly the same problem I need to overcome:

                    Deploying Servicemix into production environment where we do not have the ability to fetch resources from a maven repository, due to restrictions.

                     

                    I am currently looking at having a Servicemix instance residing on a drive under SCM control, and configuring it as much as possible in a generic way, i.e. gather all the dependencies and bundles such that they are cached in the data directory.

                    Once this is done, I'm zipping the whole thing up and unzip again our production environment.

                    If necessary, additional configuration can then be taken care of by starting Servicemix as server and scripting into the console.

                     

                    This appears to be working, I'm just wondering whether it is common practice, or whether there are any pitfalls down the road that I am not aware of?

                     

                     

                    Alex

                    • 7. Re: Servicemix features:install hangs on server with no internet access
                      janstey

                      Folks who run in an environment where Internet access is not possible typically use a custom repo of their project's dependencies. See chapter 11 in the ESB deployment guide:

                       

                      http://fusesource.com/docs/esb/4.4/esb_deploy_osgi/Locate.html

                       

                      Cheers,

                      Jon

                      • 8. Re: Servicemix features:install hangs on server with no internet access
                        volkerjaan

                        I have similar problem, that FuseESB is hanging out when I'm installing bundles from maven repository. I have this bundles in local repository, so it's extremally annoying behaviour, such as the fuse will want to download this artifact even if it is in local repo.

                        • 9. Re: Servicemix features:install hangs on server with no internet access
                          ffang

                          Hi,

                           

                          You need ensure your maven local repo is in the $FUSE_ESB/etc/org.ops4j.pax.url.mvn.cfg if it's not in the default folder.

                          Also ensure the artifacts in your maven local repo follow the maven folder structure.

                           

                          Freeman

                          • 10. Re: Servicemix features:install hangs on server with no internet access
                            samslara

                            I'm not too sure about gathering the necessary files but what about setting up the files in the system directory.  To my knowledge the system directory acts as an installation specific maven repo.

                            • 11. Re: Servicemix features:install hangs on server with no internet access
                              ffang

                              Hi,

                               

                              Yes, the $FUSE_ESB/system folder is the first place pax-url-mvn try to find necessary artifacts, so put artifacts there also works, ensure follow the maven folder structure.

                               

                              Freeman