This document describes how to install the Web Grid Product Server software contained in the pds-web-ps package. The following topics can be found in this section:
This section details the system requirements for installing and operating the Web Grid Product Server.
The Web Grid Product Server was developed using Java and will run on any platform with a supported Java Runtime Environment (JRE). The software was specifically developed under Java version 1.6 and has only been tested with this version. The following commands test the local Java installation in a UNIX-based environment:
% which java /usr/bin/java % java -version java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03-384-10M3425) Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-384, mixed mode)
The first command above checks whether the java executable is in the environment's path and the second command reports the version. If Java is not installed or the version is not at least 1.6, Java will need to be downloaded and installed in the current environment. Consult the local system administrator for installation of this software. For the do-it-yourself crowd, the Java software can be downloaded from the Oracle Java Download page. The software package of choice is the Java Standard Edition (SE) 6, either the JDK or the JRE package. The JDK package is not necessary to run the software but could be useful if development and compilation of Java software will also occur in the current environment.
The Web Grid Product Server requires a Java application server for hosting the web application. The suggested application server for this release is Apache Tomcat with a minimal version of 6.0.20 through version 7.0.X. Consult the local system administrator for installation of this software. For the do-it-yourself crowd, the Apache Tomcat software can be downloaded from the Apache Tomcat page. Choose the version to download (6.0 or 7.0) from the menu on the left.
Assuming the Product Server should be accessible to machines outside of your local network, there are a few options for achieving such a configuration:
The Apache Tomcat server is configured to run on port 8080 by default. This port can be made accessible to machines outside of your local network by allowing access through the firewall on the target machine and any firewall setup on the local network. Consult the local system administrator for firewall configuration.
If the Apache Tomcat server is the only web server on the target machine it can be configured to run on port 80, the default port for HTTP. The same firewall configuration mentioned above is required for port 80.
The preferred option for providing external access to the Product Server web application, is to configure a proxy from an Apache HTTP server to the Product Server application on the Tomcat server. This is really convenient if the target machine or another machine on the local network is already running an Apache HTTP server. If not, the Apache HTTP software can be downloaded from the Apache HTTP Server page. The same firewall configuration mentioned above is also required.
Assuming you are convinced that the Apache HTTP server is the preferred option, there are two modules, mod_jk and mod_proxy, that will facilitate such a configuration. Consult the local system administrator for the preferred module. For the mod_proxy module, enable the module in the Apache HTTP server configuration and add the following to the httpd.conf configuration file:
# Configure Proxy Requests ProxyRequests Off ProxyPreserveHost On <Proxy *> AddDefaultCharset on Order deny,allow Allow from all </Proxy> # Redirect requests to the Product Server ProxyPass /pds http://localhost:8080/pds ProxyPassReverse /pds http://localhost:8080/pds
The above configuration will pass requests to /pds on the HTTP server through to the Product Server application (assuming the WAR file name was changed as suggested below) on the Tomcat server.
Download the pds-web-ps package from the PDS FTP site. The binary distribution is available in identical zip or tar/gzip packages. The installation directory may vary from environment to environment but in UNIX-based environments it is typical to install software packages in the /usr/local directory and in Windows-based environments it is typical to install software packages in the C:\Program Files directory. Unpack the selected binary distribution file with one of the following commands:
% unzip pds-web-ps-2.2.0-bin.zip or % tar -xzvf pds-web-ps-2.2.0-bin.tar.gz
Note: Depending on the platform, the native version of tar may produce an error when attempting to unpack the distribution file because many of the file paths are greater than 100 characters. If available, the GNU version of tar will resolve this problem. If that is not available or cannot be installed, the zipped package will work just fine in a UNIX environment.
The commands above result in the creation of the pds-web-ps-2.2.0 directory with the following directory structure:
A README file directing the user to the available documentation for the project.
The copyright notice from the California Institute of Technology detailing the restrictions regarding the use and distribution of this software. Although the license is strictly worded, the software has been classified as Technology and Software Publicly Available (TSPA) and is available for anyone to download and use.
This is the Web ARchive (WAR) file containing the Product Server software including all dependent JAR files.
This directory contains a local web site with the Web Grid Product Server documentation and other configuration management related information. Just point the desired web browser to the index.html file in this directory.
The Web Grid Product Server web application is packaged as a WAR file and is intended for installation under a standard Java Application Server. For a Tomcat server deployment, the WAR file is normally copied directly to the webapps directory within the Tomcat installation or installed via the Manager interface. It is suggested that the WAR file name be changed from pds-web-ps-2.2.0.war to pds.war prior to installation. Once this step is complete, the application is ready for configuration.
The preferred method for configuring the Web Grid Product Server is to use the web-based interface. There is also a method for file-based configuration, which is especially useful when performing an upgrade of the Product Server.
The Product Server is a web application and can be accessed with any standard web browser (e.g., Firefox, Safari, Internet Explorer, etc.). Assuming the user is attempting access to the application from the local machine where the application server is running and the name of the WAR file was changed to pds.war, the application is accessible from the following endpoint: http://localhost:8080/pds. The following screen should appear in your web browser:
Select the Configure the Product Server link, which will display the following login screen:
Enter the default password of maha.lo and select the Log In button to display the following configuration screen:
The top portion of the screen provides access to the following configuration settings:
Change the default administrator password. Enter a new password in the text box. This password will be required to reconfigure the Product Server in the future.
Select the Yes button if administrative access should be limited to web browsers running on the host machine where the application server is running. Selecting the No button, will allow access to all hosts.
Select the Yes button to require HTTPS for administrative access. The host application server must support HTTPS. Selecting the No button, will provide access over HTTP.
Scroll down the screen to the System Properties section as displayed below:
The values for the following two properties must be specified:
This property must contain the file specification to your pds2jpeg application. If you do not have a machine-specific version of the pds2jpeg application, contact the PDS Operator for a copy. In the Value text box next to the property, replace the placeholder value (@PDS2JPEG@) with the file specification for the application on the host machine (i.e., /usr/local/pds/bin/pds2jpeg).
This property must contain the full path to the Node's directory containing all PDS data. Typically, this will be a directory that contains the Node's data and (optionally) the Node's archive or browse directories. In the Value text box next to the property, replace the placeholder value (@PRODUCT_DIR@) with the full path to the directory (i.e., /archive/pds).
The Product Server does offer some more advanced configuration settings including adding code bases and additional product or profile query handlers. These advanced configuration settings will not be covered here. Scroll down to the bottom of the screen as displayed below:
Select the Save Changes button to save any changes made to the configuration settings. The Product Server is now ready for operations.
Although not the suggested method for configuring the Product Server, this method can be useful if the desire is to transfer the configuration from one Product Server to another (i.e., upgrading versions). The configuration file resides at $TOMCAT_HOME/webapps/pds/WEB-INF/config.xml and should look something like the following:
<configuration https='false' localhost='false' password='bWFoYS5sbw==' xmlns='http://oodt.jpl.nasa.gov/web-grid/ns/'> <server className='jpl.pds.server.FileQueryHandler' type='product'/> <properties> <property key='jpl.pds.server.FileQueryHandler.productDir'> @PRODUCT_DIR@ </property> <property key='jpl.pds.server.JPEGFileHandler.pds2jpeg'> @PDS2JPEG@ </property> </properties> </configuration>
Before upgrading the Product Server, make a copy of the above configuration file. Install the new Product Server as specified above. Shutdown the host application server, copy the saved configuration file over the one that came in the new installation and they restart the application server. The Product Server is now ready for operations.