This topic covers configuring LabKey Server to use the Enterprise Pipeline. If necessary, you will also create the LabKey Tool directory where programs like MS1 and MS2 analysis tools will be installed.
The Enterprise Pipeline allows work to be distributed to remote servers, separate from the LabKey Server web server. The following assumptions and prerequisites apply:
- Use of a Network File System: The LabKey web server and remote servers must be able to mount the following resources:
- Pipeline directory (location where mzXML, pepXML, etc files are located)
- Pipeline bin directory (location where third-party tools (TPP, Xtandem, etc) are located
- MS1 and MS2 analysis tools will be run on a separate server.
- A version of Java supported by your version of LabKey Server for each location that will be running tasks.
- You have downloaded or built from source the following files:
- LabKey Server
- Labkey Server Enterprise Pipeline Configuration files
Enable Communication with the ActiveMQ JMS Queue
You will need to add the following settings to the LabKey configuration file
. Before adding this section, check to see if it is already present but commented out, and if so simply uncomment it:
<Resource name="jms/ConnectionFactory" auth="Container"
description="JMS Connection Factory"
You will need to change the setting for brokerURL
to point to the location of your ActiveMQ installation (i.e. replace @@JMSQUEUE@@
with the hostname of the server running the ActiveMQ software).
Set the Enterprise Pipeline Configuration Directory (Optional)
By default, the system looks for the pipeline configuration files in the following directory: LABKEY_HOME/config.
To specify a different location, add (or uncomment) the following parameter to the LabKey configuration file
<Parameter name="org.labkey.api.pipeline.config" value="C:/path-to-config"/>
Set this to the location of your Enterprise Pipeline configuration directory.
Create the Enterprise Pipeline Configuration Files
- Unzip the Enterprise Pipeline Configuration distribution and copy the webserver configuration files to the Pipeline Configuration directory specified in the last step (ie <LABKEY_HOME>/config).
- The configuration files are:
- ms2config.xml which includes:
- where MS2 searches will be performed (on a remote server or locally on the web server)
- where the Conversion of raw files to mzXML will occur (if required)
- which analysis tools will be executed during a MS2 search
- ms1config.xml which includes:
- where MS1 searches will be performed (on a remote server or locally on the web server)
- which analysis tools will be executed during a MS1 search
Restart LabKey Server
In order for the LabKey Server to use the new Enterprise Pipeline configuration settings, the Tomcat process will need to be restarted. Confirm that the server started up with no errors:
- Log on to your LabKey Server using a Site Admin account.
- Select (Admin) > Site > Admin Console.
- Click Admin Console Links.
- Under Diagnostics, click view all site errors.
- Check to see that no errors have occurred after the restart.
Create the LABKEY_TOOLS Directory
The <LABKEY_TOOLS> directory will contain all the files necessary to perform MS2 searches on the remote server. The directory will contain:
- Required LabKey software and configuration files
- TPP tools
- XTandem search engine
- Additional MS1 and MS2 analysis tools
Create the <LABKEY_TOOLS> Directory
Create the <LABKEY_TOOLS> directory on the remote server. It can be on the local file system, or available as a network file share.
Download the Required LabKey Software
- Unzip the LabKey Server distribution into the directory <LABKEY_TOOLS>/labkey/dist
- Unzip the LabKey Server Pipeline Configuration distribution into the directory <LABKEY_TOOLS>/labkey/dist/conf
NOTE: For the next section you will need to know the paths to the <LABKEY_TOOLS>/labkey directory and the <LABKEY_TOOLS>/external directory on the remote server.
Install the LabKey Software into the <LABKEY_TOOLS> Directory
Copy the following to the <LABKEY_TOOLS>/labkey directory
- The directory <LABKEY_TOOLS>/labkey/dist/LabKey<VERSION>/labkeywebapp
- The directory <LABKEY_TOOLS>/labkey/dist/LabKey<VERSION>/modules
- The directory <LABKEY_TOOLS>/labkey/dist/LabKey<VERSION>/pipeline-lib
- The file <LABKEY_TOOLS>/labkey/dist/LabKey<VERSION>/tomcat-lib/labkeyBootstrap-X.Y.jar
Expand all modules in the <LABKEY_TOOLS>/labkey/modules directory by running:
java -jar labkeyBootstrap-X.Y.jar
Create the Enterprise Pipeline Configuration Files
There are 3 configuration files used on the Remote Server:
Install the MS1 and MS2 Analysis Tools
These tools will be installed in the <LABKEY_TOOLS>/bin directory on the Remote Server.
Test the Configuration
There are a few simple tests that can be performed at this stage to verify that the configuration is correct. These tests are focused on ensure that a remote server can perform an MS1 or MS2 search
- Can the remote server see the Pipeline Directory and the <LabKey_Tools> directory?
- Can the remote server execute Xtandem?
- Can the remote server execute the Java binary?
- Can the remote server execute a Xtandem search against an mzXML file located in the Pipeline Directory?
- Can the remote server execute a PeptideProphet search against the resultant pepXML file?
- Can the remote server execute the Xtandem search again, but this time using the LabKey Java code located on the remote server?
Once all these tests are successful, you will have a working Enterprise Pipeline. The next step is to configure a new Project on your LabKey Server and configure the Project's pipeline to use the Enterprise Pipeline