
----
h1. Upgrade Identifiers Naming Authority Web Application
----
h2. Step 1: Prepare Host.
This web application was installed under a separate user, "nawebapp", on the Identifiers Naming Authority host.
The caGrid 1.4 Training grid host was installed and configured according to the specifications listed on [caGrid 1.4 Host Configuration] page.
Identifiers Naming Authority specific requirements:
# Secure Container on port 443
h2. Step 2: Prepare Configuration Files.
h3. Copy Identifiers Naming Authority configuration files to new host.
# Download and extract [https://wiki.cagrid.org/download/attachments/10617829/caGrid-1.4-Configs-NCI.zip].
## Copy <target_grid>/IdentifiersNamingAuthorityWebApp/na.properties to $HOME/tmp
h2. Step 3: Install caGrid 1.4 Software and configure a secure container.
{info}At Step 11 of the caGrid install make sure you select the correct target grid for your installation
QA: NCI QA Grid for caGrid 1.4
Stage: NCI QA Grid for caGrid 1.4
Production: NCI QA Grid for caGrid 1.4
Training: Training Grid for caGrid 1.4
Step 15: The hostname must be the externally routable name. For example, the Training Grid Master GTS external hostname is mastergts.training.cagrid.org and internal is cagrid-1_3-training-master-gts.cagrid.org. We specified mastergts.training.cagrid.org when creating credentials.
*Set "Shutdown Port" to 8019*
*Set "HTTPS Port" to 443*
Step 16: Select the option to browse to credentials on the host. Use the /home/griduser/tmp/certificates location.
{info}Use the installer to install and configure caGrid using these instructions: [cagrid14:Install caGrid and Configure a Secure Container Using the caGrid 1.4 Installer]
{info}At this point, your user should have the following environment variables set. The last step of the installer provides the paths for these settings:
# CAGRID_HOME which points to the location of your 'caGrid' source directory
# ANT_HOME which points to the location of your apache-ant-1.7.0 directory
# JAVA_HOME which points to the location of your jdk1.6.0_* directory
# GLOBUS_LOCATION which points to the location of your ws-core-4.0.3 directory
# CATALINA_HOME which points to the location of your apache-tomcat-5.5.27 directory
{info}
h2. Step 4: Configure Identifiers Naming Authority Web App with prepared configuration files.
# Edit $HOME/tmp/na.properties
## cagrid.na.prefix=http://identifiers-pa.training.citih.osumc.edu:8080/namingauthority/NamingAuthorityService/
\\{info}
cagrid.na.prefix *must* end with a "/" character
QA = http://cagrid-identifiers-pa-qa.nci.nih.gov/qa/
Stage = http://cagrid-identifiers-pa-stage.nci.nih.gov/stage/
Production = http://cagrid-identifiers-pa.nci.nih.gov/production/
{info}
## cagrid.na.grid.url=https://identifiers-na.training.citih.osumc.edu:8443/wsrf/services/cagrid/IdentifiersNAService
\\{info}
QA = https://cagrid-identifiers-na-qa.nci.nih.gov:8443/wsrf/services/cagrid/IdentifiersNAService
Stage = https://cagrid-identifiers-na-stage.nci.nih.gov:8443/wsrf/services/cagrid/IdentifiersNAService
Production = https://cagrid-identifiers-na.nci.nih.gov:8443/wsrf/services/cagrid/IdentifiersNAService
{info}
## In *cagrid.na.db.username*, specify your database username
## In *cagrid.na.db.password*, specify your database user's password
# Copy na.properties
{terminal}$ cp $HOME/tmp/na.properties $CAGRID_HOME/projects/identifiers-namingauthority/WebContent/WEB-INF/.
{terminal}
h2. Step 5: Install Identifiers Naming Authority Web App.
# Deploy the GlobalModelExchange service
{terminal}$ cd $CAGRID_HOME/projects/identifiers-namingauthority
$ ant deployTomcat
{terminal}
h2. Step 6: Edit the Tomcat Connector
By default, the Tomcat connector created by the caGrid Installer does not include a *proxyPort* entry. In order for the Identifiers Naming Authority Web Application to be correctly configured it is necessary that this entry be added.
# Open the Tomcat server.xml file in a text editor
\\{terminal}$ vi $CATALINA_HOME/conf/server.xml
{terminal}
# Find the connector by searching for the following text: *<Connector acceptCount="10"*
# Within this element, add the *proxyPort* attribute with the same port number as the *port* attribute.
\\{note}Example: If Tomcat runs on port 443. add *proxyPort="443"* to the connector
<Connector acceptCount="10" autoFlush="true" cert="/home/nawebapp/.cagrid/certificates/identifiers-na.training.citih.osumc.edu-cert.pem" className="org.globus.tomcat.coyote.net.HTTPSConnector" debug="0" disableUploadTimeout="true" enableLookups="true" key="/home/nawebapp/.cagrid/certificates/identifiers-na.training.citih.osumc.edu-key.pem" maxSpareThreads="75" maxThreads="150" minSpareThreads="25" port="443" *proxyPort="443"* protocolHandlerClassName="org.apache.coyote.http11.Http11Protocol" scheme="https" socketFactory="org.globus.tomcat.catalina.net.BaseHTTPSServerSocketFactory"/>
{note}
h2. Step 7: Start Tomcat.
Start Tomcat as follows:
{terminal} $CATALINA_HOME/bin/startup.sh
{terminal}
{info}Check the $CATALINA_HOME/logs/catalina.out file for any errors.
{info}
h2. Step 8: Validate.
Prerequisite: An identifier created by the Identifiers Grid Service validation step.
# Open a web browser
# Navigate to the URL of the Identifiers Web Application that you just installed.
{note}
QA = https://cagrid-identifiers-na-qa.nci.nih.gov/namingauthority/
Stage = https://cagrid-identifiers-na-stage.nci.nih.gov/namingauthority/
Production = https://cagrid-identifiers-na.nci.nih.gov/namingauthority/
{note}
# Paste the identifier in the form
## The identifier that you use should be the same that you created when validating the Identifiers Naming authority Grid Service. Paste only the actual alphanumeric identifier, not the entire URL.
# Click "Resolve Identifier"
## You will be presented with output that specifies the "Key" and "Key Data" associated with the identifier. This should be an identifier for "http://www.google.com"
h2. Step 9: Configure Service to Start on Reboot.
For the Identifiers Naming Authority Service to be available upon reboot of your server Tomcat must be configured to start automatically.
h3. Tomcat
# Configure Tomcat to start automatically: [http://tomcat.apache.org/tomcat-5.5-doc/setup.html]