Hi Everyone,

You can download the files referenced here: 
http://dd5.ddmg.net/openbd/openbd-3.2-upgrade.zip (203.8MB; 
MD5: b1b4ba4af666e331cbe8bc60d055ead6)

I have used the VivioTech installer as the base of my OpenBD for years now. 
I love how easy it is to use and that it provides me with a
stack that I am used to dealing with and knowledgable in maintaining (at 
least for basics). Thanks to Jordan and VivioTech for their work on that.

My main issue was that I wanted to upgrade to the latest OpenBD (at this 
time, version 3.2.0) but I needed to maintain my current stack 
architecture. Mainly
because we have hundreds of sites/applications based on it and the 
work/time to figure out jetty syntax verses apache verses having an 
entirely different directory structure within each site (to add WEB-INF, 
etc) and then having that many different OpenBD "servers" ... just didn't 
seem like something I wanted to do. Now before you shout me down with Jetty 
is so much easier ... it very well may be, I'm not arguing that ... but I 
*know* the system I have and don't have to relearn it with all my customers 
paying the price with site down time and or instability and my uncertainty 
of what I'm doing for them. So for me, and for the way we have architected 
everything currently - it would be much more beneficial to be able to 
maintain the "single" server instal AND upgrade to the newest versions.

So, most of the threads around the inter-webs seem to indicate that we 
should just be able to drop the new OpenBD jars into the install and 
everything would be peachy keen. If you have tried that from the same 
environment that I had ... you already know this doesn't work. There is a 
version mismatch on all the components. The OpenBD complains because the 
JDK isn't the right one, but Tomcat won't start because it wants the 
specific version that was used in the installer. Add to that, that any time 
I spend with the server down is time that all our customers' sites are down 
(and consequently our phones start ringing off the hook). So I needed to 
get a viable stack built and then come up with a smooth, fast way to 
upgrade an existing running server with minimal down time AND the ability 
to quickly revert back if something went wrong or would not start.

This post is the step by step process I went through and includes (at the 
top and bottom) links to the stack I built to help others through the 
upgrade. Hopefully someone will find this useful.

The download is a zip file that contains a README.txt file with these 
instructions, a png of the final server info tab of the upgraded OpenBD 
admin panel and a tar of the clean stack (OpenBD, Tomcat, JDK). 

Starting point is a valid running "single" server install as completed with 
the VivioTech installer. I run linux systems, so if you run windows I'm not 
sure all that you would have to change, but logic says that you may only 
have to change out the JDK folder with the windows equivalent and maybe 
update/edit some paths? If you have windows and get something working I 
would recommend that you post back to the community on the steps you went 
through. Otherwise, this post by Rawk - 
https://groups.google.com/forum/#!topic/openbd/MXHw1ZB9ltg - may hold some 
good info for you. I do not cover setting up Apache and getting the base 
installation functional. That should be completed prior to going through 
this thread.

My starting stack looks like the following:

Linux, Apache, Tomcat 7.0.23, OpenBD 2.0.2 running JDK 1.6.0_30


So download the zip file and here are the steps... 

*STEP 1*: Start with valid, running stack. I have my base instal in the 
/opt/openbd folder and my sites/applications in a completely different 
directory structure located elsewhere on the system. I use the tomcat 
server.xml file to add hosts entries per site and use Apache virtual hosts 
directives to match those up. NOTE: I've never been able to get that 
automatic system that supposedly manages the server.xml file for you to 
work. That last part of the VivioTech installer always fails for me. It's 
never been an issue for me though because I just manually update the 
server.xml file when we push a new site/application into production. Since 
that piece doesn't work for me, if you have it functional on your stack 
there may be issues using my tar file.

I would guess you can do a new install and then do this upgrade, but this 
process was developed to upgrade existing, functioning systems. The steps 
should be pretty much the same (though you wouldn't need to copy over your 
existing configs).

*STEP 2*: This step is designed to allow me to 'roll back' the upgrade if 
something didn't work properly. Again, this process is designed to be used 
on systems that are currently hosting production sites/applications and to 
preserve minimal down time. That said, stop the OpenBD server. Then move 
the install directory to a new folder:

[opt]# mv openbd openbd_2.0.2


Then create a symbolic link to the new folder:

[opt]# ln -s openbd_2.0.2 openbd 


So now you should have the following in the /opt directory if viewed with 
'ls -l'

lrwxrwxrwx  1 root root      12 Sep 17 11:21 openbd -> openbd_2.0.2
drwxr-xr-x 14 root root    4096 Sep 16 13:53 openbd_2.0.2 


Restart the OpenBD server and ensure everything is still working properly. 
You may need to ensure that your Apache is set up to follow sym links. For 
me, everything works properly and is running 'fat, dumb, and happy' at this 
point.

*STEP 3*: Create a new directory for the upgrade within the /opt directory.

[opt]# mdkir openbd_3.2.0


*STEP 4*: Take the 'openbd_3.2.0_clean.tar' from within the zip file 
downloaded and move this into the new directory. Once there, 'cd' into the 
directory and untar the file.

[opt/openbd_3.2.0]# tar -xvf openbd_3.2.0_clean.tar


Check the ownership of the files - I believe in my installation everything 
was owned by root and this should carry over from the tar file properly for 
you.

At this point you should have a complete workable OpenBD stack. But it 
won't be configured yet. If you want just a clean install and you are not 
technically 'upgrading' an
existing 2.0.2 installation you can skip the next step and go on to step 6.

*STEP 5*:  Copy over your configuration files from your previous working 
system. There are two files that you *must* migrate over and a third if you 
have tweaked your java runtime environment variables.

First is you OpenBD conf file. This contains the settings that you have 
changed and implemented in the admin control panel including datasources, 
admin password, mappings, etc.

[opt]# cp openbd_2.0.2/conf/bluedragon.xml openbd_3.2.0/conf/bluedragon.xml


Second is the Tomcat conf  file that contains the context host 
configurations so that your Apache virtual hosts match up properly.

[opt]# cp openbd_2.0.2/tomcat/conf/server.xml 
openbd_3.2.0/tomcat/conf/server.xml


The third file is important if you have modified it in your previous 
system. It controls the java environment variables. If you have never 
modified it, then you can skip this.

[opt]# cp openbd_2.0.2/tomcat/bin/setenv.sh 
openbd_3.2.0/tomcat/bin/setenv.sh


Last thing to consider is if you have installed custom classes or custom 
tags. If you have then you need to copy those over from the 
openbd_2.0.2/classes and openbd_2.0.2/customtags directories respectively. 
You may also do this later if you wish as it won't effect the stack from 
starting or running properly. It will cause any applications that utilize 
those custom classes/tags to error out if you do not migrate them over.

*STEP 6*: Change the 'running' server from the 2.0.2 to the 3.2.0. To do 
this simply stop the OpenBD server, delete the sym link and recreate it 
pointing to the new directory. Then restart the OpenBD server.

[opt]# /etc/init.d/openbd_ctl stop

[opt]# rm openbd

[opt]# ln -s openbd_3.2.0 openbd


Now the 'ls -l' command should show the following:

lrwxrwxrwx  1 root root      12 Sep 17 11:21 openbd -> openbd_3.2.0
drwxr-xr-x 14 root root    4096 Sep 16 13:53 openbd_2.0.2
drwxr-xr-x 13 root root    4096 Sep 17 09:41 openbd_3.2.0 


Restart the OpenBD server: 

[opt]# /etc/init.d/openbd_ctl start 


At this point you should now be running the upgraded server / stack. Check 
the OpenBD admin site and check the sites / applications you have on this 
system. If you need to roll back because something isn't working and your 
sites are down, simply reverse the process in step 6 above.  If everything 
went well you should now see something like the below in the "Server" > 
"System Info" screen in the Admin site:

OpenBD Product Version: 3.2 (written 3,2)
Application Server: Apache Tomcat/8.0.26
Java Virtual Machine: 1.7.0_79


I hope this helps someone. If anyone finds errors or bugs please fix them 
and send them back out to the community.

For reference, here is the link for the files again:

 http://dd5.ddmg.net/openbd/openbd-3.2-upgrade.zip (203.8MB; 
MD5: b1b4ba4af666e331cbe8bc60d055ead6)

Thanks,
Alan

-- 
-- 
online documentation: http://openbd.org/manual/
 http://groups.google.com/group/openbd?hl=en

--- 
You received this message because you are subscribed to the Google Groups "Open 
BlueDragon" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to