GCore Based Information System Installation
From Gcube Wiki
Contents
IS-InformationCollector
IS-Registry
Installation
The IS-Registry can be deployed on a gHN as any other gCube Service by typing:
gcore-deploy-service <path>/org.gcube.informationsystem.registry.gar
gHN Configuration
The gHN where an IS-Registry instance is running has to be configured in a special way:
- it must be declared a STATIC node (GHNtype parameter), i.e. a node where no dynamic deployment activities can be performed
- it must run in a ROOT mode (mode parameter), meaning that it starts up in a special way
These two configuration settings have to be specified in the $GLOBUS_LOCATION/config/GHNConfig.xml file as reported in the following example:
<?xml version="1.0" encoding="UTF-8"?> <jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> <global> <environment name="securityenabled" value="false" type="java.lang.Boolean" override="false" /> <environment name="mode" value="ROOT" type="java.lang.String" override="false" /> <!-- multiple scopes must be separated by a comma (e.g "EM,testing")--> <environment name="startScopes" value="devsec" type="java.lang.String" override="false" /> <environment name="infrastructure" value="gcube" type="java.lang.String" override="false" /> <environment name="labels" value="GHNLabels.xml" type="java.lang.String" override="false" /> <environment name="GHNtype" value="STATIC" 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>
Instance Configuration
The configuration of an IS-Registry instance is a two-step process:
- since a IS-Registry can act in one and only one scope, its JNDI file ($GLOBUS_LOCATION/etc/org.gcube.informationsystem.registry/jndi-config.xml) must be configure to join only one scope. In the following example, the instance is configure to join the scope named /testing/vo1:
<?xml version="1.0" encoding="UTF-8"?>
<jndiConfig xmlns="http://wsrf.globus.org/jndi/config">
<service name="gcube/informationsystem/registry">
<environment
name="configDir"
value="etc/org.gcube.informationsystem.registry"
type="java.lang.String"
override="false" />
<environment
name="securityManagerClass"
value="org.gcube.common.core.security.GCUBESimpleServiceSecurityManager"
type="java.lang.String"
override="false" />
<!-- Lifetime for temporary resources, after this period temporary resources are destroyed-->
<environment
name="temporaryResourceLifetimeInMs"
value="480000"
type="java.lang.Long"
override="false" />
<environment
name="startScopes"
value=" /testing/vo1"
type="java.lang.String"
override="false" />
</service>
....
- due to its role, the IS-Registry requires a special Service Map for its scope. In that map, the EPR of the RegistryFactory of itself must be reported. Let's suppose that an instance running on a node named grid5.4dsoft.hu joins the /testing/vo1 scope, the $GLOBUS_LOCATION/config/ServiceMap_vo1.xml file must be filled as follows (the EPRs are here just for the sample purposes):
<ServiceMap>
<Service name ="ISICAllQueryPT" endpoint ="http://grid1.4dsoft.hu:8080/wsrf/services/diligentproject/informationservice/disic/DISICService"/>
<Service name ="ISICAllRegistrationPT" endpoint ="http://grid1.4dsoft.hu:8080/wsrf/services/diligentproject/informationservice/disic/DISICRegistrationService"/>
<Service name ="ISRegistry" endpoint="http://grid5.4dsoft.hu:8080/wsrf/services/gcube/informationsystem/registry/RegistryFactory" />
</ServiceMap>