PrepServer Installation Instructions
From RHESSI Wiki
(Difference between revisions)
(→IDL Pre-processing Server breaks on startup: Finished paragraph) |
m (→PrepServer: Edit) |
||
Line 31: | Line 31: | ||
=== PrepServer === | === PrepServer === | ||
# Edit ''$PREP_SERVER/prepserver.properties'' | # Edit ''$PREP_SERVER/prepserver.properties'' | ||
- | ## Set ''publishing.dir'' to the publicly shared folder in Tomcat (most likely something like ''$CATALINA_HOME/webapps/prepserver/public''. Make sure that ''prepserver'' has read/write access to that folder. | + | ## Set ''publishing.dir'' to the publicly shared folder in Tomcat (most likely something like ''$CATALINA_HOME/webapps/prepserver/public''. Make sure that ''prepserver'' has read/write access to that folder). |
## Set ''publishing.url'' to the web url under which the public folder from the step before is available (e.g. ''http://my.server.com:8080/prepserver/public''). | ## Set ''publishing.url'' to the web url under which the public folder from the step before is available (e.g. ''http://my.server.com:8080/prepserver/public''). | ||
# Edit ''$PREP_SERVER/bin/re-startup.csh'' and make sure all ''Global Variables'' are set correctly. | # Edit ''$PREP_SERVER/bin/re-startup.csh'' and make sure all ''Global Variables'' are set correctly. | ||
- | # On certain systems the IDL Pre-processing Server may experience an error because of the absence of an active X11 window. | + | # On certain systems the IDL Pre-processing Server may experience an error because of the absence of an active X11 window. Make sure to check the [[#Troubleshooting]] section. |
# Test the installation by running ''$PREP_SERVER/bin/re-startup.csh'' as ''prepserver'' and checking the logs in ''$PREP_SERVER/logs''. Also see [[PrepServer Maintenance and Diagnostic]]. | # Test the installation by running ''$PREP_SERVER/bin/re-startup.csh'' as ''prepserver'' and checking the logs in ''$PREP_SERVER/logs''. Also see [[PrepServer Maintenance and Diagnostic]]. | ||
- | # To start the PrepServer after a system reboot, add line to ''/_etc/rc.local'' (without the | + | # To start the PrepServer after a system reboot, add line to ''/_etc/rc.local'' (without the underscore, on Linux/Unix) or create a ''Launch Control'' startup item (Mac). |
## rc.local | ## rc.local | ||
### Log in as root | ### Log in as root | ||
Line 47: | Line 47: | ||
## CRON job | ## CRON job | ||
### Log in as root | ### Log in as root | ||
- | ### Edit the crontab by typing <source lang="bash">crontab -e</source> and adding <source lang="bash">6 * * * * su $PREP_USER -c $PREP_SERVER/bin/re-startup.csh</source> | + | ### Edit the crontab by typing <source lang="bash">crontab -e</source> and adding <source lang="bash">6 * * * * su $PREP_USER -c $PREP_SERVER/bin/re-startup.csh # To restart the PrepServer at 6 am</source> |
## Mac (if using Launch Control): | ## Mac (if using Launch Control): | ||
### See previous instructions on ''Launch Control'' | ### See previous instructions on ''Launch Control'' |
Revision as of 14:57, 31 August 2010
Contents |
Requirements
- Windows, Linux, Unix, or Mac OSX
- Sun (Oracle) Java 1.5+
- Tomcat 6
- IDL 7.0+
- Preferably Apache 2.2
Preparations
- Create an unprivileged user and group, e.g. prepserver with group prepserver. Make prepserver available as $PREP_USER
- Create a home directory for user prepserver
- Set prepserver home directory to $PREP_SERVER (e.g. /home/prepserver, /usr/local/prepserver, C:\Programs\PrepServer, etc.)
- Download prepserver.jar, prepserver.war, prepserver.libs.zip, prepserver.properties, re-startup.csh, and get_idl_path.pro to a temporary directory
- Make sure that the Tomcat installation is available at $CATALINA_HOME
Installation (Mac/Unix/Linux)
PrepServer
- Log in as prepserver
- Create the following folders in $PREP_SERVER: lib, bin, logs, tmp
- Copy prepserver.jar and prepserver.properties to $PREP_SERVER
- Copy extract Java libraries from prepserver.libs.zip to $PREP_SERVER/lib
- Copy re-startup.csh and get_idl_path.pro to $PREP_SERVER/bin
- Check the #Configuration section
Tomcat
- Log in as prepserver or as the appropriate Tomcat user
- Copy prepserver.war to $CATALINA_HOME/webapps
- If necessary, deploy application prepserver.war (on some systems auto-deploy is disabled)
- Check the #Configuration section
Configuration
PrepServer
- Edit $PREP_SERVER/prepserver.properties
- Set publishing.dir to the publicly shared folder in Tomcat (most likely something like $CATALINA_HOME/webapps/prepserver/public. Make sure that prepserver has read/write access to that folder).
- Set publishing.url to the web url under which the public folder from the step before is available (e.g. http://my.server.com:8080/prepserver/public).
- Edit $PREP_SERVER/bin/re-startup.csh and make sure all Global Variables are set correctly.
- On certain systems the IDL Pre-processing Server may experience an error because of the absence of an active X11 window. Make sure to check the #Troubleshooting section.
- Test the installation by running $PREP_SERVER/bin/re-startup.csh as prepserver and checking the logs in $PREP_SERVER/logs. Also see PrepServer Maintenance and Diagnostic.
- To start the PrepServer after a system reboot, add line to /_etc/rc.local (without the underscore, on Linux/Unix) or create a Launch Control startup item (Mac).
- rc.local
- Log in as root
- Add the line
su $PREP_USER -c $PREP_SERVER/bin/re-startup.csh
- Launch Control
- Log in as root
- Download the file gov.nasa.prepserver.plist and copy it to /System/Library/LaunchDaemons
- Edit /System/Library/LaunchDaemons to fit your system. Please notice that this file comes with automatic restart of the PrepServer.
- rc.local
- To reboot the PrepServer every day after an SSW update, create a CRON job (Linux/Unix) or a Launch Control startup idem (Mac).
- CRON job
- Log in as root
- Edit the crontab by typing and adding
crontab -e
6 * * * * su $PREP_USER -c $PREP_SERVER/bin/re-startup.csh # To restart the PrepServer at 6 am
- Mac (if using Launch Control):
- See previous instructions on Launch Control
- CRON job
Troubleshooting
IDL Pre-processing Server breaks on startup
It seems as if some graphics libraries loaded by IDL required an active X11 window, even if no widgets are being created. Is the PrepServer started from an X11-less console it can happen that the absence of an active X11 window causes the libraries to break. The workaround is to create a Virtual Frame Buffer window and to set the DISPLAY variable in the re-startup.csh script to that DISPLAY. To create and test the solution, execute the below command as root. To make this a permanent solution, add the command to /_etc/rc.local (remove the underline).
Xvfb :7 -screen 0 800x600x8 2>/dev/null &
Note: Java should disallow opening IDL widgets that could block the PrepServer (waiting for user input). In addition to that, re-startup.csh is loaded in NOX (No X11) mode.