Download the source distribution of Opal2 for installation from here, if you don't have the appropriate version already.
Extract the downloaded tarball using the GNU tar utility (or other similar utilities for Windows), as follows:
tar zxvf opal-ws-$VERSION.tar.gz |
This should create a new directory called opal-ws-$VERSION/ where all the sources are expanded. Henceforth, we refer to this directory as OPAL_HOME.
Edit $OPAL_HOME/etc/opal.properties to configure the static container properties correctly. It should look something like the following:
# the base URL for the tomcat installation # this is required since Java can't figure out the IP # address if there are multiple network interfaces tomcat.url=http://localhost:8080 # parallel parameters num.procs=1 mpi.run=/path/to/your/mpi # zip up input/output files, if set to true # data.archive=true # location of working directory relative to $CATALINA_HOME/webapps. # this could be a symbolic link to another location (which should be # NFS mounted if this is on a cluster). if this is a symlink, copy # etc/opal.xml to $CATALINA_HOME/conf/Catalina/localhost/opal.xml. if # the name of the symlink is changed to something other than "opal-jobs", # modify the opal.xml accordingly # working.dir=opal-jobs # by default, opal doesn't allow the use of absolute paths in the command-line # set the following parameter to allow some exceptions # allowed.path.prefixes=/db/, /whatever/dir/, /another/one/ # use this key to display how long to save user data on server opal.datalifetime=4 days # specify in seconds the hard limit for how long a job can run # only applicable if either DRMAA or Globus is being used, and if # the scheduler supports it (some old version of SGE ignore the # parameter) # Please be aware that your application will be killed by the scheduler # once it reaches the specified limit (in same case without any log) opal.hard_limit=3600 # full qualified class name (FQCN) of the job manager being used opal.jobmanager=edu.sdsc.nbcr.opal.manager.ForkJobManager # opal.jobmanager=edu.sdsc.nbcr.opal.manager.DRMAAJobManager # opal.jobmanager=edu.sdsc.nbcr.opal.manager.GlobusJobManager # opal.jobmanager=edu.sdsc.nbcr.opal.manager.RemoteGlobusJobManager # opal.jobmanager=edu.sdsc.nbcr.opal.manager.CondorJobManager # opal.jobmanager=edu.sdsc.nbcr.opal.manager.CSFJobManager ... |
Set the tomcat.url to the correct http://ip-address:port of the server. If the Opal installation will support parallel applications, set the num.procs to the number of processors available, and the mpi.run to the location of the mpirun on your host.
By default, all new working directories for job executions are created inside the $CATALINA_HOME/webapps/ROOT directory. You may wish to change this to another location on your system (which should be NFS mounted, if you are installing on a cluster). If you would like to do so for any reason, uncomment the property working.dir. Then run the following commands:
cp $OPAL_HOME/etc/opal.xml $CATALINA_HOME/conf/Catalina/localhost/ cd $CATALINA_HOME/webapps ln -s /path/to/working_dir/on/nfs opal-jobs |
Note that the above use of symbolic links will only work on Unix systems.
If you wish to install a database to persist service state, please refer to Opal State Database Installation. If you would like to set up scheduler support, refer to Scheduler Support Using Job Managers. You can also optionally set up secure access to your services by consulting Setting up GSI-based Security for Opal.
Edit the $OPAL_HOME/build.properties file to ensure that the build properties are set correctly. Set catalina.home to point to the location of your Tomcat installation (i.e. $CATALINA_HOME), and tomcat.port to the port number that the Tomcat server is running on.
Install the Opal toolkit into the Tomcat installation, by executing the following command:
ant install |
If you are using Tomcat 5.5.X, you have to enable directory listing to properly display jobs outputs. For this look in the file $CATALINA_HOME/conf/web.xml for the definition of the main servlet:
<servlet> <servlet-name>default</servlet-name> <servlet-class> org.apache.catalina.servlets.DefaultServlet </servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>false</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> |
And make sure that the "param-name" is set to true as follows:
<param-name>listings</param-name> <param-value>true</param-value> |
Set your JAVA_OPTS to "-Djava.awt.headless=true" to enable Tomcat to run in headless mode. Run the Tomcat server by changing to the $CATALINA_HOME/bin directory, and running the appropriate command (bat on Windows, sh on Unix):
./startup.bat|sh |
Validate that Opal has been installed correctly by clicking on http://localhost:8080/opal2/happyaxis.jsp. If you have deployed Tomcat on another port, you will have to change the port number above. If all the Needed Components are found, Axis has been deployed fine. You can ignore the warnings about the Optional Components.
If the above steps have been executed successfully, the Opal server is ready for deployment of applications as Web services.