3_Hyrax_Setup

Download Report

Transcript 3_Hyrax_Setup

Hyrax Installation and
Customization
Dan Holloway
James Gallagher
Outline
• Hyrax Architecture
• Example Configuration of Hyrax
• Hyrax Customization
Hyrax Architecture
OLFS
BES
• Two (or more) cooperating processes:
– Front-end provides DAP interface
– Back-end(s) read(s) data
• Both parts can be customized
– Front-end: different network protocols
– Back-end: different data formats/systems
• N-Tier design is flexible, secure
Data
Hyrax Architecture
DAP2
BES Commands
OLFS
BES
THREDDS
HTML
XML- encapsulated object
Java
Servlet Engine
Unix Daemon
Optional THREDDS
catalogs
File system with
data files,
SQL Database, …
Hyrax Architecture Summary
• Hyrax can be installed on one machine
or several
• Installation security merits serious
consideration
• Authentication & Authorization are
handled by the web servers (Tomcat
and Apache)
Hands on: Hyrax
Configuration
• Choices:
–
–
–
–
–
–
Single or Multiple machine
Single or Multiple back-end servers
Tomcat or Apache web server
Data formats
Catalog customization
Security
• Testing
– Command line tools for system administrators
– Web browser
Workshop Configuration
• Run a single BES and the OLFS on one
host (the virtual machine running Linux)
• Use Tomcat running on port 8080
• Data formats: HDF4 and FreeForm
• No custom THREDDS catalogs
• No firewall
The Virtual Machine
• Linux VMware Virtual Appliance
• All the software needed has been built,
installed and configured
• Start the virtual machine now…
Start the Virtual Machine
Installing the Software
• Already present on the virtual machine
• But, if it wasn’t, you’d go to the
OPeNDAP web site* and download:
– Binaries or source for the BES and the
data handlers needed.
– Get the OLFS web archive file (which is a
compiled java servlet).
– You also need the Tomcat servlet engine
* http://opendap.org/download/hyrax
Location of Server Files on the
Virtual Machine
• On your virtual machine:
– We’ll use the root directory of the shrew/hyrax checkout
often and refer to it as $prefix
– The value of $prefix on you VM is
/home/opendap/src/hyrax-1.9
– The Tomcat servlet engine is in $prefix/tomcat
– The BES, data handlers and related source files are in
$prefix/src. The BES has been built and installed in
$prefix/{bin,lib,…}
– The OLFS web archive file is
$prefix/tomcat/webapps/opendap.war
– BES: bes.conf, found at $prefix/etc/bes/bes.conf
– OLFS: olfs.xml and catalog.xml, found at
$prefix/tomcat/content/opendap
Background: Starting the
Server
• Start the BES (back-end data
processing component)
• Use bescmdln to verify it’s working
• Start Tomcat: This automatically starts
all installed servlets
– Servlets are installed by copying the .war
file to the servlet’s webapps directory
• Verify it’s working using a web browser
Start the BES
One quirk of the shrew project is that we have built it
with the assumption that $PATH contains
$prefix/bin.
Use source spath.sh to set this. Take a quick look
at the spath.sh script to see what else it does.
Verify the BES is running
Start Tomcat & the OLFS
•
Typical steps:
– Unpack the olfs jar-file
– Copy the opendap.war file to Tomcat’s
webapps directory
– Start Tomcat
•
Since all but the last step has been
done already, start Tomcat:
–
$prefix/tomcat/bin/startup.sh
…terminal view
Verify Tomcat is running
http://localhost:8080
…and Hyrax
http://localhost:8080/opendap
Complete the Configuration
• Steps you would typically perform:
– Security: Set up a firewall! Limit access to
port 10022 to this host only
– Custom catalogs: Edit the catalog.xml
configuration file. By default automatic
catalogs are generated
– Logging: Edit the log4j.xml file. By default
all accesses are logged
Stopping Hyrax
First, stop Tomcat using ‘shutdown.sh’
…then stop the BES using ‘besctl’
Hyrax Configuration Summary
• For our chosen configuration, we used only
Tomcat, plus the Hyrax web application which
consists of the BES and the OLFS
• The tools bescmdln, getdap and a web
browser were used to test the installation
• There are a lot of options, but the default
settings produce a working server
• Security is a must for a web application; use a
firewall to isolate the BES so only the local
host can connect to it.
• The Hyrax Admin interface requires additional
setup and some configuration on the BES.