4 Replies Latest reply on Oct 20, 2015 3:02 PM by a437077

    Automated Jive Deployment?

      Has anyone toyed with deployment of Jive via Chef or other automation? We're finding the webapps to be particularly finicky to get going via automation and was wondering if somebody else has already solved it.

        • Re: Automated Jive Deployment?
          whoiskevin

          I have been putting together some ansible play books due to our unique environment I've found it has the most flexibility. However this is just early stage for code deploys and configuration. 

            • Re: Automated Jive Deployment?

              Sure. I think the hardest part was the initial configuration. It seems that if you install the rpm and then try to place configuration files then a lot is getting missed and server.xml and jive.properties disagreements may cause the webapp service to error out upon startup.

               

              To work around that we're starting and stopping webapp after install and then running jive set commands and placing jive_startup.xml and the crypto files. That is working but feels a bit convoluted.

               

              It appears that upon first startup if no config files have been place it will symlink (applications/sbs/) application and conf directories to the templates folder and copy the home tree from templates and then add some more directories and files to home. I haven't yet figured out where the extras are coming from.

               

              For an existing cluster I think we could probably clone the entire applications/sbs/ tree minus home/node.id and plus jive.properties and that may work. But it would feel cleaner if the automation for a new singleton/cluster were more similar to cloning a new webapp node into an existing cluster.

                • Re: Automated Jive Deployment?
                  whoiskevin

                  Yes.  As in yes to everything you said.  These are the tough issues.  In my particular environment case the initial machine adjustments require root so I have to accomplish that via "ticket" which is the most horrible word ever used when trying to do anything quickly or automatically.

                   

                  Once past that hurdle then the RPM install as non-root is not too bad and the rest of my current configuration is actually a tar file overlay doing things that you are referring to such as a copy of the jive.properties file (no need to do the jive set commands that way) and a lot of other adjusted files such as httpd.conf, log4j.properties files for each service, database drivers etc.

                  The remaining configurations then become specific to the role of the server such as search, ingress replicator, activity, web. 

                   

                  I am trying to put together ansible templates for those specifics as well as some of the configuration that relies on knowing specifics about the machine.  Search for instance requires setting the property files with information about each node.

                   

                  All is possible just very detailed and requires a fair number of variables to account for all the differences.