Administrator Guide
This Guide covers the installation, configuration, and maintenance of gCore.
Before you Begin
The following software is a prerequisite for the installation of gCore:
- A platform compatible or made compatible with GT requirements.
- J2SE 1.5.08 SDK or greater. Sun's reference implementation is recommended, but versions from IBM, HP, or BEA should work equally well.
- Ant 1.6.5+ to build gCF sources or to develop services with it.
- a SVN client to install gCore from the SVN repository.
- GNU tar to install gCore from archived distributions.
- sudo to execute shell commands with controlled super-user privileges.
- A ntp server to synchronise your clock with other machines' for correct credential validation.
- A static IP address for all but the simplest testing scenarios.
Installation
gCore may be installed from a SVN repository, or else from pre-packaged archives.
In the first case, installing gCore is tantamount to downloading it into a directory of choice, the gCore location. In the second case, installing gCore is simply matter of expanding the downloaded archive into the the gCore location. In either case, proceed to the installation as a a non-privileged user with read and write permissions for the gCore location.
Configuration
At the end of the process, the gCore location should contain the following structure:
| |-bin | |-config | |-endorsed | |-etc | |-lib | |-libexec | |-share |
Some folders are of immediate interest to administrators and developers alike:
bin | executables |
config | configuration files |
etc | deployed service configuration files |
lib | standard and deployed service libraries |
share | build tools, standard and deployed service interfaces/schemas |
You should define an environment variables GLOBUS_LOCATION and point it to the installation directory. Assuming a bash shell:
export GLOBUS_LOCATION = <gCore location>
Adding $GLOBUS_LOCATION/bin to your PATH is also highly recommended:
export PATH = $PATH:$GLOBUS_LOCATION/bin
- configure ${GLOBUS_LOCATION}/etc/globus_wsrf_core/server-config.wsdd by specifying the hostname as value of the logicalHost parameter
<deployment name="defaultServerConfig" xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java" xmlns:wsa="http:/ /schemas.xmlsoap.org/ws/2004/03/addressing" xmlns:wsnt="http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd" xmlns:wsrp="http://d ocs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <globalConfiguration> <parameter name="logicalHost" value="localhost"/> [...] <globalConfiguration> </deployment>
To test it: start GHN gcore-start-container -nosec (by default on 8080, otherwise start with -p <port>)
GHN Passport
The main configuration file of gCore is $GLOBUS_LOCATION/config/GHNConfig.xml:
<?xml version="1.0" encoding="UTF-8"?> <jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> <global> <environment name="securityenabled" value="true" type="java.lang.Boolean" override="false" /> <environment name="mode" value="development" type="java.lang.String" override="false" /> <environment name="rootVO" value="/gcube" type="java.lang.String" override="false" /> <environment name="defaultVO" value="/gcube/devsec" type="java.lang.String" override="false" /> <environment name="infrastructure" value="development" type="java.lang.String" override="false" /> <environment name="labels" value="GHNLabels.xml" type="java.lang.String" override="false" /> <environment name="rootGHN" value="true" type="java.lang.Boolean" override="false" /> <environment name="GHNtype" value="Dynamic" type="java.lang.String" override="false" /> <environment name="localProxy" value="/home/globus/..." type="java.lang.String" override="false" /> <environment name="coordinates" value="43.719627,10.421626" type="java.lang.String" override="false" /> <environment name="country" value="it" type="java.lang.String" override="false" /> <environment name="location" value="Pisa" type="java.lang.String" override="false" /> <environment name="updateInterval" value="60" type="java.lang.Long" override="false" /> </global> </jndiConfig>