put the web servers into maintenance mode (SF WEB, SD WEB)
cd /var/www/html sudo ./set_eas_mode.sh MAINT |
sudo -u postgres -i /home/dba/scripts/dbbackup.sh > /var/tmp/dbbackup.log |
Log into to the ETL server and do the following.
REM see warning above cd "C:\Program Files\MAD\" del etl setup.bat |
Now you can run this migrate job:
cd etl\src python job.py --job migrate_to_1.1.3 --action INIT --env SF_PROD |
Add an scheduled task to truncate the geowebcache.
The ETL job name is "map_cache_truncate".
This makes obsolete the linux crontab entry on GEO PROD (SF for sure, maybe SD) that truncate the geowebcache...
so you must remove these crontab entires. Execute the line below on sf_prod_geo to being editing the crontab...
sudo crontab -e |
Remember that in PROD you must also do this to the SD instance!
http://docs.geoserver.org/stable/en/user/production/java.html
http://docs.oracle.com/javase/7/docs/webnotes/install/linux/linux-jre.html#install-64-rpm
wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com" "http://download.oracle.com/otn-pub/java/jdk/7/jre-7-linux-x64.rpm" sudo rpm -ivh jre-7-linux-x64.rpm?AuthParam=1347904319_53c7d4517bc08e457c15c859a1ba216e |
http://download.java.net/media/jai/builds/release/1_1_3/
wget http://download.java.net/media/jai/builds/release/1_1_3/jai-1_1_3-lib-linux-amd64-jre.bin sudo cp jai-1_1_3-lib-linux-amd64-jre.bin /usr/java/jre1.7.0 cd /usr/java/jre1.7.0 sudo sh jai-1_1_3-lib-linux-amd64-jre.bin |
cd /usr sudo rm -rf jdk1.6.0_24 |
sudo /usr/sbin/usermod -g geodev tomcat sudo /usr/sbin/usermod -d /usr/share/apache-tomcat-7.0.32 tomcat |
http://davidghedini.blogspot.com/2011/02/install-tomcat-7-on-centos-rhel.html
wget http://mirror.olnevhost.net/pub/apache/tomcat/tomcat-7/v7.0.32/bin/apache-tomcat-7.0.32.tar.gz cd /usr/share sudo tar xvfz ~/apache-tomcat-7.0.32.tar.gz sudo chown -Rf tomcat:geodev /usr/share/apache-tomcat-7.0.32/ |
Ensures that tomcat will startup on server restart.
cd /etc/init.d sudo svn export http://eas.googlecode.com/svn/trunk/geoserver/tomcat sudo dos2unix tomcat sudo chmod 755 tomcat sudo -u root /sbin/chkconfig --add tomcat sudo -u root /sbin/chkconfig --level 234 tomcat on sudo -u root /sbin/chkconfig --list tomcat sudo chmod g+rwx /usr/share/apache-tomcat-7.0.32/webapps svn export http://eas.googlecode.com/svn/trunk/geoserver/deploy_geoserver_env.sh /usr/share/apache-tomcat-7.0.32/webapps/deploy_geoserver_env.sh |
sudo /sbin/service tomcat start sudo /sbin/service tomcat stop |
view /usr/share/apache-tomcat-7.0.32/logs/catalina.out |
SSH tunnel required.
http://localhost:8081/ (DEV)
http://localhost:8082/ (QA)
http://localhost:8083/ (PROD)
remove old version of tomcat
sudo rm -rf /usr/share/tomcat5 sudo rm /etc/init.d/tomcat5 |
cd /usr/share/apache-tomcat-7.0.32/webapps sudo wget http://downloads.sourceforge.net/geoserver/geoserver-2.1.4-war.zip sudo unzip geoserver-2.1.4-war.zip sudo /sbin/service tomcat start sudo /sbin/service tomcat stop |
Clean out the gwc
sudo rm -rf /srv/gwc/* |
mkdir downloads/ cd downloads/ wget http://iweb.dl.sourceforge.net/project/geoserver/GeoServer%20Extensions/2.1.4/geoserver-2.1.4-pyramid-plugin.zip unzip geoserver-2.1.4-pyramid-plugin.zip sudo cp gt-imagepyramid-2.7.5.jar /usr/share/apache-tomcat-7.0.32/webapps/geoserver/WEB-INF/lib sudo chown -R tomcat:geodev /usr/share/apache-tomcat-7.0.32/webapps/geoserver sudo /sbin/service tomcat start |
We need to install the following on the geoserver boxes so we can process imagery in situ.
Add a python symlink...
cd /usr/local/bin/ sudo ln -s /usr/local/bin/python2.5 python |
sudo chown dev /usr/local/src mkdir /usr/local/src/TARFILES cd /usr/local/src/TARFILES wget ftp://ftp.remotesensing.org/proj/proj-4.8.0.tar.gz wget ftp://ftp.remotesensing.org/proj/proj-datumgrid-1.5.tar.gz cd ../ tar xvfz TARFILES/proj-4.8.0.tar.gz cd proj-4.8.0/nad tar xvfz ../../TARFILES/proj-datumgrid-1.5.tar.gz cd .. ./configure --without-jni make sudo make install |
cd /usr/local/src/TARFILES wget http://download.osgeo.org/geos/geos-3.3.3.tar.bz2 cd .. tar xvfj TARFILES/geos-3.3.3.tar.bz2 cd geos-3.3.3 # no python bindings ./configure make sudo make install |
cd /usr/local/src/TARFILES wget http://download.osgeo.org/gdal/gdal-1.9.0.tar.gz cd ../ tar xvfz TARFILES/gdal-1.9.0.tar.gz cd gdal-1.9.0/ # set your PATH properly so we get the right version of python export PATH=/usr/local/bin/:$PATH ./configure --with-python make sudo PATH=/usr/local/bin/:$PATH make install |
Add this to your .bashrc
LD_LIBRARY_PATH_DEFAULT=/usr/local/lib export LD_LIBRARY_PATH_DEFAULT LD_LIBRARY_PATH=$LD_LIBRARY_PATH_DEFAULT export LD_LIBRARY_PATH |
sudo mkdir /srv/gwc sudo mkdir /srv/imagery sudo mkdir /srv/imagery/pyramids sudo mkdir /srv/imagery/pyramids/2012 sudo chown -R tomcat:geodev /srv/imagery/ sudo chown -R tomcat:geodev /srv/gwc/ sudo chmod -R g+rw /srv/imagery/pyramids |
You can either build the pyramid or copy the one from SF DEV GEO.
For this deploy, we are going to do the latter.
Do this well before the actual deploy.
Copy
Use secure FTP which operates over SSH; I use winscp.
This is about 7GB and takes about 15-20 minutes per node.
In the off chance that you need to build the pyramid from scratch, follow the instructions spelled out in main():
http://code.google.com/p/eas/source/browse/trunk/bin/build_pyramids.py
cd /usr/share/apache-tomcat-7.0.32/webapps sudo svn export http://eas.googlecode.com/svn/trunk/geoserver/deploy_geoserver_init.sh sudo dos2unix deploy_geoserver_init.sh sudo ./deploy_geoserver_init.sh |
After the start up inspect the the log file.
view /usr/share/apache-tomcat-7.0.32/webapps/geoserver_configuration/logs/geoserver.log |
This exception is OK because we do not use this plugin:
DEBUG... Unable to load kakadu JPEG2000 reader spi java.lang.ClassNotFoundException: it.geosolutions.imageio.plugins.jp2k.JP2KKakaduImageReaderSpi ... |
The should be no exceptions besides this one.
# see warning at top cd /var/www/html sudo ./deploy_eas_init.sh # make sure web application works and is correct version |
put WEB (SF/SD) servers into LIVE mode
cd /var/www/html sudo ./set_eas_mode.sh LIVE |
and test the application. You will not be able to log into SD.
Put SD WEB servers into STANDBY mode
cd /var/www/html sudo ./set_eas_mode.sh SD_STANDBY |
Once again, log into ETL PROD and seed the image cache:
python job.py --job SEED_IMAGE_CACHE --action EXECUTE --env SF_PROD |
This took about 8 hours to run from level 12 to level 19 inclusive.