Difference between revisions of "Resource Management Installation"
Lucio.lelii (Talk | contribs) (→Requirements) |
|||
(110 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Administrator's Guide]] | ||
+ | {|align=right | ||
+ | ||__TOC__ | ||
+ | |} | ||
+ | === Preliminary Note === | ||
+ | |||
+ | All the software cited in this section be downloaded from the [https://www.gcube-system.org/index.php?option=com_content&view=article&id=290&Itemid=48 gCube Software Distribution Site], unless otherwise reported. | ||
+ | |||
=== gHNManager === | === gHNManager === | ||
==== Installation ==== | ==== Installation ==== | ||
− | The gHNManager is a Local Service shipped and installed within the [https:// | + | The gHNManager is a Local Service shipped and installed within the [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide gHN distribution]. |
==== gHN Configuration ==== | ==== gHN Configuration ==== | ||
− | No specific configuration is needed, but the [https:// | + | No specific configuration is needed, but the the typical [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Configuration gHN configuration]. |
==== Instance Configuration ==== | ==== Instance Configuration ==== | ||
Line 11: | Line 19: | ||
==== Verify the Installation ==== | ==== Verify the Installation ==== | ||
− | Once the gHN is [https:// | + | Once the gHN is [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portType: |
<pre> | <pre> | ||
Line 59: | Line 67: | ||
==== Installation ==== | ==== Installation ==== | ||
− | The Deployer is a Local Service shipped and installed within the [https:// | + | The Deployer is a Local Service shipped and installed within the [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide gHN distribution]. |
==== gHN Configuration ==== | ==== gHN Configuration ==== | ||
− | No specific configuration is needed, but the [https:// | + | No specific configuration is needed, but the typical [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Configuration gHN configuration]. |
==== Instance Configuration ==== | ==== Instance Configuration ==== | ||
Line 68: | Line 76: | ||
==== Verify the Installation ==== | ==== Verify the Installation ==== | ||
− | Once the gHN is [https:// | + | Once the gHN is [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portType: |
<source lang="text"> | <source lang="text"> | ||
Line 96: | Line 104: | ||
</source> | </source> | ||
− | === | + | === Resource Manager === |
==== Installation ==== | ==== Installation ==== | ||
− | The | + | The Resource Manager can be installed in two ways: |
* ''statically'', for infrastructure and VO scopes | * ''statically'', for infrastructure and VO scopes | ||
: here the service is deployed on a gHN as any other gCube Service by typing: | : here the service is deployed on a gHN as any other gCube Service by typing: | ||
<pre> | <pre> | ||
− | gcore-deploy-service <path>/ | + | gcore-deploy-service <path>/resource-manager-service-x.x.x.gar ( where x.x.x is the version of the service to deploy) |
</pre> | </pre> | ||
:The command above assumes that the <em>$GLOBUS_LOCATION/bin</em> folder is in your PATH | :The command above assumes that the <em>$GLOBUS_LOCATION/bin</em> folder is in your PATH | ||
+ | :Then, if the service is configured to use the BrokerService as ''resourceBrokerClass'', two additional libraries have to be installed: | ||
+ | :*org.gcube.vre-management.resourcebroker-serialization.jar | ||
+ | :*org.gcube.vre-management.resourcebroker-stubs.jar | ||
* ''dynamically'', for VRE scopes | * ''dynamically'', for VRE scopes | ||
− | : in this case, it is the [[VRE_Management_Installation#VREModeler|VREModeler]] service that takes care of the installation and its settings | + | : in this case, it is the [[VRE_Management_Installation#VREModeler|VREModeler]] service that takes care of the installation and its settings. |
==== gHN Configuration ==== | ==== gHN Configuration ==== | ||
− | No specific configuration is needed, but the [https:// | + | No specific configuration is needed, but the typical [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide gHN distribution]. |
==== Instance Configuration ==== | ==== Instance Configuration ==== | ||
− | The | + | The Resource Manager is a scope-specific service, meaning that it must join one and only one scope. Therefore, it must be configured properly to behave in the assigned scope. In the case of a dynamically deployed instance, the appropriate configuration is automatically done by the [[VRE_Management_Installation#Deployer|Deployer]] service. |
− | In the case of a statically deployed instance, its JNDI file (<em>$GLOBUS_LOCATION/etc/org.gcube.vremanagement. | + | In the case of a statically deployed instance, its JNDI file (<em>$GLOBUS_LOCATION/etc/org.gcube.vremanagement.resourcemanager/jndi-config.xml</em>) must be configured to join only one scope. In the following example, the instance (<em>startScopes</em> environment variable) is configured to join the scope named <em>/testing/vo1</em>: |
<source lang="xml"> | <source lang="xml"> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
<jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> | <jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | <service name="gcube/vremanagement/ResourceManager/service"> | |
− | + | <environment | |
− | + | name="configDir" | |
− | + | value="@config.dir@" | |
− | + | type="java.lang.String" | |
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="resourceBrokerClass" | ||
+ | value="org.gcube.vremanagement.resourcemanager.impl.brokerage.ServiceBroker" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <environment | ||
+ | name="startScopes" | ||
+ | value="/gcube/devsec/CNR-VRE" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | </service> | ||
+ | |||
+ | <service name="gcube/vremanagement/ResourceManager"> | ||
+ | |||
+ | <environment | ||
+ | name="name" | ||
+ | value="VREManager" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="RPDName" | ||
+ | value="VREManagerResourceProperties" | ||
+ | type="java.lang.String" | ||
+ | override="false"/> | ||
+ | |||
+ | <resource name="home" type="org.gcube.vremanagement.resourcemanager.impl.state.ResourceManagerHome"> | ||
+ | <resourceParams> | ||
+ | <parameter> | ||
+ | <name>factory</name> | ||
+ | <value>org.globus.wsrf.jndi.BeanFactory</value> | ||
+ | </parameter> | ||
+ | <parameter> | ||
+ | <name>resourceClass</name> | ||
+ | <value>org.gcube.vremanagement.resourcemanager.impl.state.InstanceState</value> | ||
+ | </parameter> | ||
+ | </resourceParams> | ||
+ | |||
+ | </resource> | ||
+ | |||
+ | </service> | ||
+ | |||
+ | </jndiConfig> | ||
+ | </source> | ||
− | + | Do note that: | |
− | + | * ''resourceBrokerClass'' is about which broker to use for allocating gCube packages on gHN. There are two available: | |
− | + | ** ''org.gcube.vremanagement.resourcemanager.impl.brokerage.ServiceBroker'' which uses the Broker Service | |
− | + | ** ''org.gcube.vremanagement.resourcemanager.impl.brokerage.InternalBroker'' which uses an internal broker and requires that the target gHNs are specified in any deployment request | |
− | + | ||
− | + | ||
− | + | ==== Verify the Installation ==== | |
+ | Once the gHN is [https://wiki.gcore.research-infrastructures.eu/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portType: | ||
− | + | <source lang="text"> | |
− | + | gHN started at: http://host:port/wsrf/services/ with the following services: | |
− | + | ||
− | + | ||
− | + | ||
− | + | GCUBE SERVICES: | |
− | + | ... | |
− | + | [1]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/administration | |
− | + | [2]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/binder | |
− | + | [3]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/reporting | |
+ | [4]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/scopecontroller | ||
+ | ... | ||
+ | </source> | ||
− | + | === Resource Broker === | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ==== Installation ==== | |
− | + | ||
− | + | ||
+ | Under the assumption that the <em>$GLOBUS_LOCATION</em> is properly setup and the respective bin folder your PATH, | ||
+ | the installation of ResourceBroker service is done by executing the following command: | ||
+ | <pre> | ||
+ | gcore-deploy-service <path>/org.gcube.vremanagement.resourcebroker.gar | ||
+ | </pre> | ||
+ | |||
+ | ===== Required software ===== | ||
+ | In order to properly work, the following libraries are required and must be present in the <em>$GLOBUS_LOCATION/lib</em> location: | ||
+ | :*org.gcube.vre-management.resourcebroker-serialization.jar | ||
+ | :*org.gcube.vre-management.resourcebroker-stubs.jar | ||
+ | |||
+ | ==== gHN Configuration ==== | ||
+ | The ''scope'' in which the service should be bound must be specified in the: | ||
+ | |||
+ | <pre> | ||
+ | $GLOBUS_LOCATION</em>/etc/org.gcube.vremanagement.resourcebroker/jndi-config.xml | ||
+ | </pre> | ||
+ | |||
+ | Here you'll find the following xml block (the scope is specified by the '''value''' attribute): | ||
+ | <div style="border: 1px dashed #2F6FAB; background-color: #F9F9F9; color: black; padding:0.5em; margin-top:5px; margin-bottom:5px; font-family: monospace; font-style: normal; font-size-adjust: none;"> | ||
+ | <source lang="xml" enclose="none" title="PlanRequest.xml" highlight="4"> | ||
+ | <!-- SPECIFY YOUR scope HERE --> | ||
+ | <environment | ||
+ | name="startScopes" | ||
+ | value="/gcube" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | </pre> | ||
</source> | </source> | ||
− | [ | + | </div> |
+ | |||
+ | ==== Instance Configuration ==== | ||
+ | |||
+ | The instance configuration parameters are specified in the file: | ||
+ | <pre> | ||
+ | $GLOBUS_LOCATION</em>/etc/org.gcube.vremanagement.resourcebroker/broker.properties | ||
+ | </pre> | ||
+ | |||
+ | For a detailed explanation on configuring the ResourceBroker instance parameter read [https://gcube.wiki.gcube-system.org/gcube/index.php/Resource_Broker#Configuration here]. | ||
==== Verify the Installation ==== | ==== Verify the Installation ==== | ||
− | Once the gHN is [https:// | + | Once the gHN is [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portType: |
− | < | + | <pre> |
gHN started at: http://host:port/wsrf/services/ with the following services: | gHN started at: http://host:port/wsrf/services/ with the following services: | ||
GCUBE SERVICES: | GCUBE SERVICES: | ||
... | ... | ||
− | [ | + | [4]: http://host:port/wsrf/services/gcube/vremanagement/ResourceBroker |
... | ... | ||
− | </ | + | </pre> |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | </ | + | Look at the $GLOBUS_LOCATION/logs/container.fulllog, then follow messages related to the ResourceBroker with the prefix <em>[BMM]</em>. |
− | === Software | + | === Software Gateway === |
==== Installation ==== | ==== Installation ==== | ||
− | The Software | + | The Software Gateway can be deployed on a gHN as any other gCube Service by typing: |
<pre> | <pre> | ||
− | gcore-deploy-service <path>/ | + | gcore-deploy-service <path>/softwaregateway-service-x.x.x.gar ( where x.x.x is the version of the service to deploy) |
</pre> | </pre> | ||
Line 218: | Line 280: | ||
In addition, it requires that the following software are available in the <em>$GLOBUS_LOCATION/lib</em> folder: | In addition, it requires that the following software are available in the <em>$GLOBUS_LOCATION/lib</em> folder: | ||
− | * [http:// | + | * [http://www.java2s.com/Code/Jar/a/Downloadaetherapi111jar.htm aether-api 1.11] |
− | * [http://commons.apache.org/ | + | * [http://www.java2s.com/Code/Jar/a/Downloadaetherimpl111jar.htm aether-impl 1.11] |
− | * | + | * [http://www.java2s.com/Code/Jar/a/Downloadaetherspi111jar.htm aether-spi 1.11] |
− | * [http://www. | + | * [http://www.java2s.com/Code/Jar/a/Downloadaetherutil111jar.htm aether-util 1.11] |
− | * [http://maven | + | * [http://www.java2s.com/Code/JarDownload/aether/aether-connector-wagon-1.7.jar.zip aether-connector-wagon-1.7.jar] |
+ | * [http://commons.apache.org/codec/ commons-codec 1.2] | ||
+ | * [http://www.java2s.com/Code/Jar/c/Downloadcommonscompress20050911jar.htm commons-compress 20050911] | ||
+ | * [http://www.java2s.com/Code/Jar/c/Downloadcommonshttpclient301jar.htm commons-httpclient 3.0.1] | ||
+ | * [http://en.sourceforge.jp/projects/sfnet_ehcache/releases/ ehcache-core 2.5.1] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenaetherprovider303jar.htm maven-aether-provider 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenartifact303jar.htm maven-artifact 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavencompat303jar.htm maven-compat 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavencore303jar.htm maven-core 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenembedder303jar.htm maven-embedder 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenmodel303jar.htm maven-model 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenmodelbuilder303jar.htm maven-model-builder 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenpluginapi303jar.htm maven-plugin-api 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavenrepositorymetadata303jar.htm maven-repository-metadata 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavensettingsbuilder303jar.htm maven-settings 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/m/Downloadmavensettingsbuilder303jar.htm maven-settings-builder 3.0.3] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexuscipher14sourcesjar.htm plexus-cipher 1.4] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexusclassworlds24jar.htm plexus-classworlds 2.4] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexuscomponentannotations155jar.htm plexus-component-annotations 1.5.5] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexusinterpolation114jar.htm plexus-interpolation 1.14] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexussecdispatcher13sourcesjar.htm plexus-sec-dispatcher 1.3] | ||
+ | * [http://www.java2s.com/Code/Jar/p/Downloadplexusutils206jar.htm plexus-utils-2.0.6] | ||
+ | * [http://grepcode.com/snapshot/repo1.maven.org/maven2/org.sonatype.sisu/sisu-guice/2.9.4 sisu-guice 2.9.4-no_aop] | ||
+ | * [http://www.findthatjar.com/search-26920028-hZIP/winrar-winzip-download-sisu-inject-bean-2.1.1.jar.htm sisu-inject-bean 2.1.1] | ||
+ | * [http://www.findthatjar.com/search-26920029-hZIP/winrar-winzip-download-sisu-inject-plexus-2.1.1.jar.htm sisu-inject-plexus 2.1.1] | ||
+ | * [http://grepcode.com/snapshot/repo1.maven.org/maven2/org.slf4j/slf4j-api/1.6.4 slf4j-api 1.6.4] | ||
+ | * [http://www.java2s.com/Code/JarDownload/wagon/wagon-file-1.0-beta-7.jar.zip wagon-file-1.0-beta-7.jar] | ||
+ | * [http://www.java2s.com/Code/JarDownload/wagon/wagon-provider-api-1.0-beta-7.jar.zip wagon-provider-api 1.0-beta-7] | ||
+ | * [http://www.java2s.com/Code/JarDownload/wagon/wagon-http-lightweight-1.0-beta-7.jar.zip wagon-http-lightweight-1.0-beta-7.jar] | ||
+ | * [http://www.java2s.com/Code/JarDownload/jsch/jsch-0.1.38.jar.zip jsch-0.1.38.jar] | ||
+ | * [http://repo1.maven.org/maven2/org/mortbay/jetty/jetty-util/7.0.0.pre5/jetty-util-7.0.0.pre5.jar jetty-util-7.0.0.pre5.jar] | ||
+ | * [http://repo1.maven.org/maven2/org/mortbay/jetty/jetty/7.0.0.pre5/jetty-7.0.0.pre5.jar jetty-7.0.0.pre5.jar] | ||
+ | * maven 3.0.X | ||
− | + | ||
+ | ===== Maven 3 ===== | ||
+ | |||
+ | The Software Gateway service relies on Maven 3. These are the installation instructions for Unix-based Operating Systems: | ||
+ | |||
+ | * Extract the distribution archive, i.e. apache-maven-3.0.4-bin.tar.gz to the directory you wish to install Maven 3.0.4. You can be found the archive at this link: http://www.apache.org/dyn/closer.cgi?path=/maven/binaries/apache-maven-3.0.4-bin.tar.gz | ||
+ | These instructions assume you chose /usr/local/apache-maven. The subdirectory apache-maven-3.0.4 will be created from the archive. | ||
+ | |||
+ | * In a command terminal, add the M3_HOME environment variable, e.g. export M3_HOME=/usr/local/apache-maven/apache-maven-3.0.4. | ||
+ | |||
+ | * Add the M3 environment variable, e.g. export M3=$M3_HOME/bin. | ||
+ | |||
+ | * Optional: Add the MAVEN_OPTS environment variable to specify JVM properties, e.g. export MAVEN_OPTS="-Xms256m -Xmx512m". This environment variable can be used to supply extra options to Maven. | ||
+ | |||
+ | * Add M2 environment variable to your path, e.g. export PATH=$M2:$PATH. | ||
+ | |||
+ | * Make sure that JAVA_HOME is set to the location of your JDK, e.g. export JAVA_HOME=/usr/java/jdk1.5.0_02 and that $JAVA_HOME/bin is in your PATH environment variable. | ||
+ | |||
+ | * Run mvn --version to verify that it is correctly installed. | ||
+ | |||
+ | * add the settings.xml in the .m2 folder on your home directory. The settings.xml file must be this: https://gcube.wiki.gcube-system.org/gcube/index.php/Talk:Creating_gCube_Maven_components:_How-To#Repositories | ||
==== gHN Configuration ==== | ==== gHN Configuration ==== | ||
− | [ | + | No specific configuration is needed, but the typical [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide gHN distribution]. |
==== Instance Configuration ==== | ==== Instance Configuration ==== | ||
− | + | The Software Repository can join in multiple scope, so no specific configuration are needed. However it has a lot start-up configuration that the administrator can change as he likes in the in the JNDI file (<em>$GLOBUS_LOCATION/etc/org.gcube.vremanagement.softwarerepository/jndi-config.xml</em>). The configurable parameters are: | |
+ | |||
+ | <source lang="xml"> | ||
+ | <?xml version="1.0" encoding="UTF-8"?> | ||
+ | <jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> | ||
+ | |||
+ | <service name="gcube/vremanagement/softwaregateway"> | ||
+ | |||
+ | <!-- This permits less control allowing the submission from ETICS --> | ||
+ | <environment | ||
+ | name="eticsSubmission" | ||
+ | value="true" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | |||
+ | <!-- HTTP server information --> | ||
+ | <environment | ||
+ | name="httpServerBasePath" | ||
+ | value="jetty/webapps" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="httpServerPort" | ||
+ | value="6900" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | |||
+ | <!-- All parameter below are read at service startup time. You need to restart the container to apply changes --> | ||
+ | |||
+ | <environment | ||
+ | name="configDir" | ||
+ | value="@config.dir@" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="profile" | ||
+ | value="profile.xml" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | |||
+ | <!-- Temporary directory for store operation --> | ||
+ | <environment | ||
+ | name="tmpDir" | ||
+ | value="tmp" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <!-- Directory where the pending packages are stored --> | ||
+ | <environment | ||
+ | name="pendingDir" | ||
+ | value="pending" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="dependenciesSolverClass" | ||
+ | value="org.gcube.vremanagement.softwaregateway.impl.repositorymanager.util.MavenDependenciesSolver" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="webServerClass" | ||
+ | value="org.gcube.vremanagement.softwaregateway.webserver.impl.jetty.JettyWebServer" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <!-- Maven local service parameter --> | ||
+ | <environment | ||
+ | name="mavenDir" | ||
+ | value="maven" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="mavenSettingsFileName" | ||
+ | value="settings.xml" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- END Maven local service parameter --> | ||
+ | |||
+ | |||
+ | <!-- This directory, if not exist, must be created before service start --> | ||
+ | <!-- Maven HTTP relative directory. If you want to change this directory | ||
+ | when the SR has installed some artifact you have to create a | ||
+ | symbolic link or copy the whole content the new one--> | ||
+ | <environment | ||
+ | name="mavenRelativeDir" | ||
+ | value="maven" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <!-- This directory, if not exist, must be created before service start --> | ||
+ | <!-- Report HTTP relative directory. If you want to change this directory | ||
+ | when the SR has already worked you have to create a | ||
+ | symbolic link or copy the whole content to the new one --> | ||
+ | <environment | ||
+ | name="reportRelativeDir" | ||
+ | value="report" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <!-- XSLT to be applied to report XML files --> | ||
+ | <!-- XSLT service directory --> | ||
+ | <environment | ||
+ | name="xsltDir" | ||
+ | value="xslt" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- XSLT for index.xml --> | ||
+ | <environment | ||
+ | name="indexXSLTfilename" | ||
+ | value="index.xslt" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- CSS for index.xml --> | ||
+ | <environment | ||
+ | name="indexCSSfilename" | ||
+ | value="styles.css" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- XSLT for single service archive report--> | ||
+ | <environment | ||
+ | name="reportXSLTfilename" | ||
+ | value="report.xslt" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- END XSLT to be applied to report XML files --> | ||
+ | |||
+ | |||
+ | <!-- Javadoc check --> | ||
+ | <environment | ||
+ | name="relativeJavadocPath" | ||
+ | value="doc/api" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | <!-- END Documentation check --> | ||
+ | |||
+ | |||
+ | |||
+ | <!-- Name of the file containing SVN source code --> | ||
+ | <environment | ||
+ | name="sourceCodeLinkPathfilename" | ||
+ | value="svnpath.txt" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | |||
+ | </service> | ||
+ | |||
+ | |||
+ | <service name="gcube/vremanagement/softwaregateway/Access"> | ||
+ | |||
+ | <environment | ||
+ | name="name" | ||
+ | value="Access" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | <environment | ||
+ | name="settingsDirectory" | ||
+ | value="tmp" | ||
+ | type="java.lang.String" | ||
+ | override="false" /> | ||
+ | |||
+ | </service> | ||
+ | |||
+ | |||
+ | <service name="gcube/vremanagement/softwaregateway/Registration"> | ||
+ | |||
+ | <environment name="name" value="Registration" type="java.lang.String" | ||
+ | override="false" /> | ||
+ | </service> | ||
+ | |||
+ | </jndiConfig> | ||
+ | |||
+ | <!-- END Documentation check --> | ||
+ | |||
+ | </source> | ||
+ | |||
==== Verify the Installation ==== | ==== Verify the Installation ==== | ||
+ | Once the gHN is [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portType: | ||
+ | <pre> | ||
+ | gHN started at: http://host:port/wsrf/services/ with the following services: | ||
+ | |||
+ | GCUBE SERVICES: | ||
... | ... | ||
+ | [3]: http://host:port/wsrf/services/gcube/vremanagement/softwaregateway/Access | ||
+ | [4]: http://host:port/wsrf/services/gcube/vremanagement/softwaregateway/Registration | ||
+ | ... | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | Looking at the <em>$GLOBUS_LOCATION/logs/sgateway.log</em>, the following messages related to the SoftwareRepository initialisation have to be observed: | ||
<source lang="text"> | <source lang="text"> | ||
− | + | 2012-09-06 17:14:19,950 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.0010s] SoftwareGateway: INITIALISING RUNNING INSTANCE | |
− | + | 2012-09-06 17:14:20,103 TRACE porttypes.ServiceContext [SoftwareGateway-Initialiser,trace:82] [0.153s] SoftwareGateway: loading RI profile | |
− | + | 2012-09-06 17:14:20,130 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.181s] SoftwareGateway: Added scope(s) [/gcube/devNext, /gcube/devsec, /gcube] | |
− | + | 2012-09-06 17:14:20,159 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.209s] SoftwareGateway: Attempt to change class of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 | |
− | + | 2012-09-06 17:14:20,159 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.21s] SoftwareGateway: Attempt to change name of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 | |
− | + | 2012-09-06 17:14:20,160 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.211s] SoftwareGateway: Attempt to change version of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 | |
− | + | 2012-09-06 17:14:20,161 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.212s] SoftwareGateway: Generating security manager... | |
− | + | 2012-09-06 17:14:20,164 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] [0.215s] SoftwareGateway: Loading credentials propagation property from jndi service environment | |
− | + | 2012-09-06 17:14:20,164 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] [0.215s] SoftwareGateway: Credential propagation property = null | |
− | + | 2012-09-06 17:14:20,165 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.216s] SoftwareGateway: No service propagation property set and no default configuration available | |
− | + | 2012-09-06 17:14:20,165 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.216s] SoftwareGateway: managing security with a GCUBESimpleServiceSecurityManager | |
− | + | 2012-09-06 17:14:20,169 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.22s] SoftwareGateway: Generating security control manager org.gcube.common.core.security.GCUBEServiceAuthenticationController | |
− | + | 2012-09-06 17:14:20,172 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.223s] SoftwareGateway: managing security control with a GCUBESimpleServiceAuthController | |
− | + | 2012-09-06 17:14:20,173 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.224s] SoftwareGateway: Generating security control manager org.gcube.common.core.security.GCUBEServiceAuthorizationController | |
− | + | 2012-09-06 17:14:20,179 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.23s] SoftwareGateway: managing security control with a GCUBEAuthzChainAuthorizationController | |
− | + | 2012-09-06 17:14:20,186 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.237s] SoftwareGateway: managing remote persistence with a GCUBERINoPersistenceManager | |
− | + | 2012-09-06 17:14:20,194 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: in initialization | |
− | + | 2012-09-06 17:14:20,195 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: banned version: null | |
− | + | 2012-09-06 17:14:20,196 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Tmp directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/tmp | |
− | + | 2012-09-06 17:14:20,196 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Pending directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/pending | |
− | + | 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Maven directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/maven | |
− | + | 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Maven settings file path = settings.xml | |
+ | 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP Server Base path = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps | ||
+ | 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP Server port = 6900 | ||
+ | 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: CHECK: httpServerBasePath=/home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps httpServerPort6900 | ||
+ | 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: CHECK: httpServerBasePath=/home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps httpServerPort6900 | ||
+ | 2012-09-06 17:14:20,199 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP relative Maven directory = maven | ||
+ | 2012-09-06 17:14:20,200 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP relative Report directory = report | ||
+ | 2012-09-06 17:14:20,201 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: XSLT directory = /home/gcube1/gCore/etc/softwaregateway-service-1.1.0-SNAPSHOT/xslt | ||
+ | 2012-09-06 17:14:20,201 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: webServerClass: org.gcube.vremanagement.softwaregateway.webserver.impl.jetty.JettyWebServer | ||
+ | 2012-09-06 17:14:20,225 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.276s] SoftwareGateway: moved to status INITIALISED | ||
+ | 2012-09-06 17:14:20,231 INFO porttypes.ServiceContext [SoftwareGateway-Subscriber,info:78] [0.0s] SoftwareGateway: registering for GHN shutdown events | ||
+ | 2012-09-06 17:14:20,231 TRACE porttypes.Registration [PortTypeConsumer,trace:82] [0.0s] SoftwareGateway: INITIALISING PORTTYPE REGISTRATION | ||
+ | 2012-09-06 17:14:20,232 TRACE porttypes.Access [PortTypeConsumer,trace:82] [0.0s] SoftwareGateway: INITIALISING PORTTYPE ACCESS | ||
+ | 2012-09-06 17:14:20,268 INFO porttypes.ServiceContext [SoftwareGateway-Subscriber,info:78] [0.037s] SoftwareGateway: registering for GHN scope removal events | ||
+ | 2012-09-06 17:14:22,824 INFO porttypes.ServiceContext [SoftwareGateway-Stager,info:78] [0.0s] SoftwareGateway: moved to status READY | ||
+ | 2012-09-06 17:14:22,824 TRACE porttypes.ServiceContext [SoftwareGateway-Stager,trace:82] [0.0s] SoftwareGateway: RI has been UPDATED | ||
+ | 2012-09-06 17:14:22,870 TRACE porttypes.ServiceContext [Updater,trace:82] [0.0s] SoftwareGateway: publishing RI profile in scope(s) [/gcube/devNext, /gcube, /gcube/devsec] | ||
... | ... | ||
</source> | </source> | ||
− | |||
=== VREModeler === | === VREModeler === | ||
Line 268: | Line 592: | ||
==== Installation ==== | ==== Installation ==== | ||
− | The VREModeler is typically | + | The VREModeler is typically statically deployed by typing: |
<pre> | <pre> | ||
− | gcore-deploy-service <path>/ | + | gcore-deploy-service <path>/vremodeler-service-x.x.x.gar |
</pre> | </pre> | ||
− | + | The command above assumes that the <em>$GLOBUS_LOCATION/bin</em> folder is in your PATH. In addition, the service requires that the following software are available in the <em>$GLOBUS_LOCATION/lib</em> folder: | |
+ | |||
+ | * [http://hsqldb.org/ hsqldb 1.8.0] (or higher) | ||
+ | * vremodeler-stubs-x.x.x.jar | ||
+ | * [http://ormlite.com/ ormlite 4.4] (or higher) | ||
+ | |||
+ | Moreover, the service can be also dynamically deployed by using the Resource Manager instance in the target scope. In this case, all its dependencies are also automatically deployed too. | ||
==== gHN Configuration ==== | ==== gHN Configuration ==== | ||
− | [ | + | No specific configuration is needed, but the typical [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Configuration configuration]. |
==== Instance Configuration ==== | ==== Instance Configuration ==== | ||
− | + | The service instance does not require any specific configuration. | |
+ | |||
==== Verify the Installation ==== | ==== Verify the Installation ==== | ||
+ | Once the gHN is [https://gcore.wiki.gcube-system.org/gCube/index.php/Administrator_Guide#Verify_the_Installation started], the <em>$GLOBUS_LOCATION/nohup.out</em> file has to report (among the others) the following portTypes: | ||
− | [ | + | <pre> |
+ | gHN started at: http://host:port/wsrf/services/ with the following services: | ||
+ | |||
+ | GCUBE SERVICES: | ||
+ | ... | ||
+ | [5]: http://host:port/wsrf/services/gcube/vremanagement/vremodeler/ModelerFactoryService | ||
+ | [6]: http://host:port/wsrf/services/gcube/vremanagement/vremodeler/ModelerService | ||
+ | |||
+ | ... | ||
+ | </pre> | ||
+ | |||
+ | Looking at the $GLOBUS_LOCATION/logs/container.fulllog, the following messages related to the VREModeler initialisation have to be observed: | ||
+ | |||
+ | <source lang="text"> | ||
+ | 2009-10-02 14:37:54,604 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.0030s] VREModeler: INITIALISING RUNNING INSTANCE | ||
+ | 2009-10-02 14:37:54,617 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.016s] VREModeler: Added scope(s) [/gcube, /gcube/devsec] | ||
+ | 2009-10-02 14:37:54,621 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.02s] VREModeler: managing security with a GCUBEServiceSecurityManagerImpl | ||
+ | 2009-10-02 14:37:54,622 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.021s] VREModeler: managing remote persistence with a GCUBERINoPersistenceManager | ||
+ | 2009-10-02 14:37:54,687 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.086s] VREModeler: moved to status INITIALISED | ||
+ | 2009-10-02 14:37:54,736 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0s] VREModeler: registering for GHN shutdown events | ||
+ | 2009-10-02 14:37:54,737 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0010s] VREModeler: registering for GHN scope removal events | ||
+ | 2009-10-02 14:37:54,919 INFO impl.ModelerHome [HomeConsumer,info:78] [0.0030s] VREModeler: managing resources in SOFTPERSISTENT mode | ||
+ | 2009-10-02 14:37:55,020 INFO impl.ModelerHome [HomeConsumer,info:78] [0.104s] VREModeler: activated sweeper to run every 60 seconds | ||
+ | 2009-10-02 14:37:57,922 INFO impl.ServiceContext [VREModeler-Stager,info:78] [0.0s] VREModeler: ready event invoked on VREModeler | ||
+ | 2009-10-02 14:37:57,929 INFO db.IStoDBUtil [VREModeler-Stager,info:78] IStoDBUtil: Starting initialization!! | ||
+ | ... | ||
+ | 2009-10-02 14:43:42,472 INFO impl.ServiceContext [VREModeler-Stager,info:78] [30.529s] VREModeler: moved to status READY | ||
+ | </source> | ||
+ | |||
+ | During the initialization phase, the instance looks for some resources that are not yet available (and it warns about these) and that are therefore created. | ||
==== Requirements ==== | ==== Requirements ==== | ||
− | The | + | The VREDefinitionPortlet (the VREModeler's GUI) allows the ''VRE Designer'' to select a set of functionalities to be included in the new VRE. At VREModeler level, a functionality is mapped on a set of services and portlets that globally deliver the specific operations. These mappings are defined in a Generic Resource (named ''FuctionalitiesResource'') published on the IS. |
+ | |||
+ | This Generic Resource must be defined as follow: | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <Resource> | ||
+ | <ID>df899630-82ae-11de-a6cc-f15c9cf886be</ID> | ||
+ | <Type>GenericResource</Type> | ||
+ | <Scopes> | ||
+ | </Scopes> | ||
+ | <Profile> | ||
+ | <SecondaryType>VREModelerResource</SecondaryType> | ||
+ | <Name>FuctionalitiesResource</Name> | ||
+ | <Description> | ||
+ | A Generic resource containing the functionalities requested to a VRE at design time | ||
+ | </Description> | ||
+ | <Body> | ||
+ | <MainFunctionalities> | ||
+ | <MainFunctionality> | ||
+ | <Name>Access Functions</Name> | ||
+ | <Description> | ||
+ | This class of functions characterises the facilities that can be activated in the Virtual Research Environment | ||
+ | to support users in requesting, locating, and accessing the Virtual Research Environment content. | ||
+ | </Description> | ||
+ | <Functionalities> | ||
+ | <Functionality> | ||
+ | <Name>Search (Browse, Simple, and Combined)</Name> | ||
+ | <Description> | ||
+ | By selecting this function VRE users will be provided with facilities supporting the discovery of Information Objects by issuing keyword based | ||
+ | queries. This is the simplest modality for discovering Information Objects constituting the VRE Information Space. In addition to the specification | ||
+ | of the keywords characterising the Information Objects the user is interested in, this function permits to restrict the Information Space in which to search | ||
+ | by specifying the set of Collections against which the query will be evaluated. | ||
+ | </Description> | ||
+ | <Services> | ||
+ | <Service> | ||
+ | <ServiceName>FilterXPathOperator</ServiceName> | ||
+ | <ServiceClass>Search</ServiceClass> | ||
+ | </Service> | ||
+ | <!-- ...other services --> | ||
+ | </Services> | ||
+ | <Portlets> | ||
+ | <Portlet>userprofileeditingportlet#UserProfileEditingPortlet</Portlet> | ||
+ | <Portlet>layoutcreator#LayoutcreatorPortlet</Portlet> | ||
+ | <!-- ...other portlets --> | ||
+ | </Portlets> | ||
+ | </Functionality> | ||
+ | <!-- ...other functionalities --> | ||
+ | </Functionalities> | ||
+ | </MainFunctionality> | ||
+ | <!-- ...other main functionalities --> | ||
+ | </MainFunctionalities> | ||
+ | </Body> | ||
+ | </Profile> | ||
+ | </Resource> | ||
+ | </source> |
Latest revision as of 12:03, 10 December 2013
Preliminary Note
All the software cited in this section be downloaded from the gCube Software Distribution Site, unless otherwise reported.
gHNManager
Installation
The gHNManager is a Local Service shipped and installed within the gHN distribution.
gHN Configuration
No specific configuration is needed, but the the typical gHN configuration.
Instance Configuration
The service instance does not require any specific configuration. As Local Service, it automatically joins all the gHN scopes.
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portType:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [3]: http://host:port/wsrf/services/gcube/common/vremanagement/GHNManager ...
Looking at the $GLOBUS_LOCATION/logs/container.fullog, the following messages related to the gHNManager initialisation have to be observed:
2009-07-06 16:08:04,329 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.0s] GHNManager: Added scope(s) [/testing] 2009-07-06 16:08:04,329 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.0010s] GHNManager: INITIALISING RUNNING INSTANCE 2009-07-06 16:08:04,479 TRACE contexts.ServiceContext [GHNManager-Initialiser,trace:82] [0.151s] GHNManager: loading RI profile 2009-07-06 16:08:04,490 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.162s] GHNManager: Added scope(s) [/testing, /testing/vo1] 2009-07-06 16:08:04,495 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.167s] GHNManager: managing security with a GCUBESimpleServiceSecurityManager 2009-07-06 16:08:04,497 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.169s] GHNManager: managing remote persistence with a GCUBERINoPersistenceManager 2009-07-06 16:08:04,500 INFO contexts.GHNContext [GHNManager-Initialiser,info:78] [0.997s] GHNContext: REGISTERED RI OF (VREMANAGEMENT,GHNMANAGER) 2009-07-06 16:08:04,538 INFO contexts.ServiceContext [GHNManager-Initialiser,info:78] [0.21s] GHNManager: moved to status INITIALISED 2009-07-06 16:08:04,542 DEBUG contexts.ServiceContext [GHNConsumer$<anon>,debug:66] [0.0s] GHNManager: UPDATE event received 2009-07-06 16:08:04,744 INFO contexts.ServiceContext [GHNManager-Subscriber,info:78] [0.0s] GHNManager: registering for GHN shutdown events 2009-07-06 16:08:04,745 INFO contexts.ServiceContext [GHNManager-Subscriber,info:78] [0.0010s] GHNManager: registering for GHN scope events as a local service 2009-07-06 16:08:04,790 TRACE impl.GHNManager [PortTypeConsumer,trace:82] [0.0s] GHNManager: INITIALISING PORTTYPE GHNMANAGER
Afterward, per each gHN scope, the following messages related to the gHN profile publication have to be reported in the same log file:
2009-07-06 16:08:04,542 DEBUG contexts.ServiceContext [GHNConsumer$<anon>,debug:66] [0.0s] GHNManager: UPDATE event received 2009-07-06 16:08:04,544 DEBUG contexts.ServiceContext [GHNConsumer$<anon>,debug:66] [0.0020s] GHNManager: Publishing GHN profile in scope /testing 2009-07-06 16:08:04,551 TRACE impl.GCUBEProfileManager [GHNConsumer$<anon>,trace:82] GCUBEProfileManager: Trying to update resource with ID=0722bbe0-50f5-11de-aea3-d209846ff30b in scope /testing 2009-07-06 16:08:04,586 TRACE scope.GCUBEScopeManagerImpl [GHNConsumer$<anon>,trace:82] GCUBEScopeManagerImpl: Setting scope /testing in Thread[GHNConsumer$<anon>,5,main] 2009-07-06 16:08:04,586 INFO tasks.ISRegistryServiceUpdaterHandler [GHNConsumer$<anon>,info:78] ISRegistryServiceUpdaterHandler: looking for instances of ISRegistry ServiceHandler 2009-07-06 16:08:04,587 TRACE tasks.ISRegistryServiceUpdaterHandler [GHNConsumer$<anon>,trace:82] ISRegistryServiceUpdaterHandler: Refreshing Registry instances 2009-07-06 16:08:04,588 TRACE tasks.ISRegistryLookup [GHNConsumer$<anon>,trace:82] ISRegistryLookup: Querying the IS for Registry instances 2009-07-06 16:08:05,102 TRACE tasks.ISRegistryServiceUpdaterHandler [GHNConsumer$<anon>,trace:82] ISRegistryServiceUpdaterHandler: Connecting to the IS-Registry instance located at http://grid10.4dsoft.hu:8080/wsrf/services/gcube/informationsystem/registry/RegistryFactory... 2009-07-06 16:08:05,244 INFO contexts.GCUBERemotePortTypeContext$1 [GHNConsumer$<anon>,info:78] : Preparing call to service InformationSystem,IS-Registry in scope /testing 2009-07-06 16:08:05,592 TRACE impl.GCUBEProfileManager [GHNConsumer$<anon>,trace:82] GCUBEProfileManager: Resource with ID=0722bbe0-50f5-11de-aea3-d209846ff30b successfully updated
Deployer
Installation
The Deployer is a Local Service shipped and installed within the gHN distribution.
gHN Configuration
No specific configuration is needed, but the typical gHN configuration.
Instance Configuration
The service instance does not require any specific configuration. As Local Service, it automatically joins all the gHN scopes.
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portType:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [3]: http://host:port/wsrf/services/gcube/common/vremanagement/Deployer ...
Looking at the $GLOBUS_LOCATION/logs/container.fullog, the following messages related to the Deployer initialisation have to be observed:
2009-07-06 16:08:05,538 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0s] Deployer: Added scope(s) [/testing] 2009-07-06 16:08:05,538 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0s] Deployer: INITIALISING RUNNING INSTANCE 2009-07-06 16:08:05,539 TRACE contexts.ServiceContext [Deployer-Initialiser,trace:82] [0.0010s] Deployer: loading RI profile 2009-07-06 16:08:05,542 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0040s] Deployer: Added scope(s) [/testing, /testing/vo1] 2009-07-06 16:08:05,543 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0050s] Deployer: managing security with a GCUBESimpleServiceSecurityManager 2009-07-06 16:08:05,543 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0050s] Deployer: managing remote persistence with a GCUBERINoPersistenceManager 2009-07-06 16:08:05,544 INFO contexts.GHNContext [Deployer-Initialiser,info:78] [0.0s] GHNContext: REGISTERED RI OF (VREMANAGEMENT,DEPLOYER) 2009-07-06 16:08:05,544 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0s] VREModeler: registering for GHN shutdown events 2009-07-06 16:08:05,545 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0s] VREModeler: registering for GHN scope removal events 2009-07-06 16:08:05,545 INFO contexts.ServiceContext [Deployer-Initialiser,info:78] [0.0070s] Deployer: moved to status INITIALISED 2009-07-06 16:08:05,550 INFO contexts.ServiceContext [Deployer-Subscriber,info:78] [0.0s] Deployer: registering for GHN shutdown events 2009-07-06 16:08:05,550 INFO contexts.ServiceContext [Deployer-Subscriber,info:78] [0.0010s] Deployer: registering for GHN scope events as a local service 2009-07-06 16:08:05,551 TRACE impl.Deployer [PortTypeConsumer,trace:82] [0.0s] Deployer: INITIALISING PORTTYPE DEPLOYER
Resource Manager
Installation
The Resource Manager can be installed in two ways:
- statically, for infrastructure and VO scopes
- here the service is deployed on a gHN as any other gCube Service by typing:
gcore-deploy-service <path>/resource-manager-service-x.x.x.gar ( where x.x.x is the version of the service to deploy)
- The command above assumes that the $GLOBUS_LOCATION/bin folder is in your PATH
- Then, if the service is configured to use the BrokerService as resourceBrokerClass, two additional libraries have to be installed:
- org.gcube.vre-management.resourcebroker-serialization.jar
- org.gcube.vre-management.resourcebroker-stubs.jar
- dynamically, for VRE scopes
- in this case, it is the VREModeler service that takes care of the installation and its settings.
gHN Configuration
No specific configuration is needed, but the typical gHN distribution.
Instance Configuration
The Resource Manager is a scope-specific service, meaning that it must join one and only one scope. Therefore, it must be configured properly to behave in the assigned scope. In the case of a dynamically deployed instance, the appropriate configuration is automatically done by the Deployer service.
In the case of a statically deployed instance, its JNDI file ($GLOBUS_LOCATION/etc/org.gcube.vremanagement.resourcemanager/jndi-config.xml) must be configured to join only one scope. In the following example, the instance (startScopes environment variable) is configured 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/vremanagement/ResourceManager/service"> <environment name="configDir" value="@config.dir@" type="java.lang.String" override="false" /> <environment name="resourceBrokerClass" value="org.gcube.vremanagement.resourcemanager.impl.brokerage.ServiceBroker" type="java.lang.String" override="false" /> <environment name="startScopes" value="/gcube/devsec/CNR-VRE" type="java.lang.String" override="false" /> </service> <service name="gcube/vremanagement/ResourceManager"> <environment name="name" value="VREManager" type="java.lang.String" override="false" /> <environment name="RPDName" value="VREManagerResourceProperties" type="java.lang.String" override="false"/> <resource name="home" type="org.gcube.vremanagement.resourcemanager.impl.state.ResourceManagerHome"> <resourceParams> <parameter> <name>factory</name> <value>org.globus.wsrf.jndi.BeanFactory</value> </parameter> <parameter> <name>resourceClass</name> <value>org.gcube.vremanagement.resourcemanager.impl.state.InstanceState</value> </parameter> </resourceParams> </resource> </service> </jndiConfig>
Do note that:
- resourceBrokerClass is about which broker to use for allocating gCube packages on gHN. There are two available:
- org.gcube.vremanagement.resourcemanager.impl.brokerage.ServiceBroker which uses the Broker Service
- org.gcube.vremanagement.resourcemanager.impl.brokerage.InternalBroker which uses an internal broker and requires that the target gHNs are specified in any deployment request
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portType:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [1]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/administration [2]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/binder [3]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/reporting [4]: http://host:port/wsrf/services/gcube/vremanagement/resourcemanager/scopecontroller ...
Resource Broker
Installation
Under the assumption that the $GLOBUS_LOCATION is properly setup and the respective bin folder your PATH, the installation of ResourceBroker service is done by executing the following command:
gcore-deploy-service <path>/org.gcube.vremanagement.resourcebroker.gar
Required software
In order to properly work, the following libraries are required and must be present in the $GLOBUS_LOCATION/lib location:
- org.gcube.vre-management.resourcebroker-serialization.jar
- org.gcube.vre-management.resourcebroker-stubs.jar
gHN Configuration
The scope in which the service should be bound must be specified in the:
$GLOBUS_LOCATION</em>/etc/org.gcube.vremanagement.resourcebroker/jndi-config.xml
Here you'll find the following xml block (the scope is specified by the value attribute):
<!-- SPECIFY YOUR scope HERE -->
<environment
name="startScopes"
value="/gcube"
type="java.lang.String"
override="false" />
</pre>
Instance Configuration
The instance configuration parameters are specified in the file:
$GLOBUS_LOCATION</em>/etc/org.gcube.vremanagement.resourcebroker/broker.properties
For a detailed explanation on configuring the ResourceBroker instance parameter read here.
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portType:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [4]: http://host:port/wsrf/services/gcube/vremanagement/ResourceBroker ...
Look at the $GLOBUS_LOCATION/logs/container.fulllog, then follow messages related to the ResourceBroker with the prefix [BMM].
Software Gateway
Installation
The Software Gateway can be deployed on a gHN as any other gCube Service by typing:
gcore-deploy-service <path>/softwaregateway-service-x.x.x.gar ( where x.x.x is the version of the service to deploy)
The command above assumes that the $GLOBUS_LOCATION/bin folder is in your PATH.
In addition, it requires that the following software are available in the $GLOBUS_LOCATION/lib folder:
- aether-api 1.11
- aether-impl 1.11
- aether-spi 1.11
- aether-util 1.11
- aether-connector-wagon-1.7.jar
- commons-codec 1.2
- commons-compress 20050911
- commons-httpclient 3.0.1
- ehcache-core 2.5.1
- maven-aether-provider 3.0.3
- maven-artifact 3.0.3
- maven-compat 3.0.3
- maven-core 3.0.3
- maven-embedder 3.0.3
- maven-model 3.0.3
- maven-model-builder 3.0.3
- maven-plugin-api 3.0.3
- maven-repository-metadata 3.0.3
- maven-settings 3.0.3
- maven-settings-builder 3.0.3
- plexus-cipher 1.4
- plexus-classworlds 2.4
- plexus-component-annotations 1.5.5
- plexus-interpolation 1.14
- plexus-sec-dispatcher 1.3
- plexus-utils-2.0.6
- sisu-guice 2.9.4-no_aop
- sisu-inject-bean 2.1.1
- sisu-inject-plexus 2.1.1
- slf4j-api 1.6.4
- wagon-file-1.0-beta-7.jar
- wagon-provider-api 1.0-beta-7
- wagon-http-lightweight-1.0-beta-7.jar
- jsch-0.1.38.jar
- jetty-util-7.0.0.pre5.jar
- jetty-7.0.0.pre5.jar
- maven 3.0.X
Maven 3
The Software Gateway service relies on Maven 3. These are the installation instructions for Unix-based Operating Systems:
- Extract the distribution archive, i.e. apache-maven-3.0.4-bin.tar.gz to the directory you wish to install Maven 3.0.4. You can be found the archive at this link: http://www.apache.org/dyn/closer.cgi?path=/maven/binaries/apache-maven-3.0.4-bin.tar.gz
These instructions assume you chose /usr/local/apache-maven. The subdirectory apache-maven-3.0.4 will be created from the archive.
- In a command terminal, add the M3_HOME environment variable, e.g. export M3_HOME=/usr/local/apache-maven/apache-maven-3.0.4.
- Add the M3 environment variable, e.g. export M3=$M3_HOME/bin.
- Optional: Add the MAVEN_OPTS environment variable to specify JVM properties, e.g. export MAVEN_OPTS="-Xms256m -Xmx512m". This environment variable can be used to supply extra options to Maven.
- Add M2 environment variable to your path, e.g. export PATH=$M2:$PATH.
- Make sure that JAVA_HOME is set to the location of your JDK, e.g. export JAVA_HOME=/usr/java/jdk1.5.0_02 and that $JAVA_HOME/bin is in your PATH environment variable.
- Run mvn --version to verify that it is correctly installed.
- add the settings.xml in the .m2 folder on your home directory. The settings.xml file must be this: https://gcube.wiki.gcube-system.org/gcube/index.php/Talk:Creating_gCube_Maven_components:_How-To#Repositories
gHN Configuration
No specific configuration is needed, but the typical gHN distribution.
Instance Configuration
The Software Repository can join in multiple scope, so no specific configuration are needed. However it has a lot start-up configuration that the administrator can change as he likes in the in the JNDI file ($GLOBUS_LOCATION/etc/org.gcube.vremanagement.softwarerepository/jndi-config.xml). The configurable parameters are:
<?xml version="1.0" encoding="UTF-8"?> <jndiConfig xmlns="http://wsrf.globus.org/jndi/config"> <service name="gcube/vremanagement/softwaregateway"> <!-- This permits less control allowing the submission from ETICS --> <environment name="eticsSubmission" value="true" type="java.lang.String" override="false" /> <!-- HTTP server information --> <environment name="httpServerBasePath" value="jetty/webapps" type="java.lang.String" override="false" /> <environment name="httpServerPort" value="6900" type="java.lang.String" override="false" /> <!-- All parameter below are read at service startup time. You need to restart the container to apply changes --> <environment name="configDir" value="@config.dir@" type="java.lang.String" override="false" /> <environment name="profile" value="profile.xml" type="java.lang.String" override="false" /> <!-- Temporary directory for store operation --> <environment name="tmpDir" value="tmp" type="java.lang.String" override="false" /> <!-- Directory where the pending packages are stored --> <environment name="pendingDir" value="pending" type="java.lang.String" override="false" /> <environment name="dependenciesSolverClass" value="org.gcube.vremanagement.softwaregateway.impl.repositorymanager.util.MavenDependenciesSolver" type="java.lang.String" override="false" /> <environment name="webServerClass" value="org.gcube.vremanagement.softwaregateway.webserver.impl.jetty.JettyWebServer" type="java.lang.String" override="false" /> <!-- Maven local service parameter --> <environment name="mavenDir" value="maven" type="java.lang.String" override="false" /> <environment name="mavenSettingsFileName" value="settings.xml" type="java.lang.String" override="false" /> <!-- END Maven local service parameter --> <!-- This directory, if not exist, must be created before service start --> <!-- Maven HTTP relative directory. If you want to change this directory when the SR has installed some artifact you have to create a symbolic link or copy the whole content the new one--> <environment name="mavenRelativeDir" value="maven" type="java.lang.String" override="false" /> <!-- This directory, if not exist, must be created before service start --> <!-- Report HTTP relative directory. If you want to change this directory when the SR has already worked you have to create a symbolic link or copy the whole content to the new one --> <environment name="reportRelativeDir" value="report" type="java.lang.String" override="false" /> <!-- XSLT to be applied to report XML files --> <!-- XSLT service directory --> <environment name="xsltDir" value="xslt" type="java.lang.String" override="false" /> <!-- XSLT for index.xml --> <environment name="indexXSLTfilename" value="index.xslt" type="java.lang.String" override="false" /> <!-- CSS for index.xml --> <environment name="indexCSSfilename" value="styles.css" type="java.lang.String" override="false" /> <!-- XSLT for single service archive report--> <environment name="reportXSLTfilename" value="report.xslt" type="java.lang.String" override="false" /> <!-- END XSLT to be applied to report XML files --> <!-- Javadoc check --> <environment name="relativeJavadocPath" value="doc/api" type="java.lang.String" override="false" /> <!-- END Documentation check --> <!-- Name of the file containing SVN source code --> <environment name="sourceCodeLinkPathfilename" value="svnpath.txt" type="java.lang.String" override="false" /> </service> <service name="gcube/vremanagement/softwaregateway/Access"> <environment name="name" value="Access" type="java.lang.String" override="false" /> <environment name="settingsDirectory" value="tmp" type="java.lang.String" override="false" /> </service> <service name="gcube/vremanagement/softwaregateway/Registration"> <environment name="name" value="Registration" type="java.lang.String" override="false" /> </service> </jndiConfig> <!-- END Documentation check -->
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portType:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [3]: http://host:port/wsrf/services/gcube/vremanagement/softwaregateway/Access [4]: http://host:port/wsrf/services/gcube/vremanagement/softwaregateway/Registration ...
Looking at the $GLOBUS_LOCATION/logs/sgateway.log, the following messages related to the SoftwareRepository initialisation have to be observed:
2012-09-06 17:14:19,950 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.0010s] SoftwareGateway: INITIALISING RUNNING INSTANCE 2012-09-06 17:14:20,103 TRACE porttypes.ServiceContext [SoftwareGateway-Initialiser,trace:82] [0.153s] SoftwareGateway: loading RI profile 2012-09-06 17:14:20,130 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.181s] SoftwareGateway: Added scope(s) [/gcube/devNext, /gcube/devsec, /gcube] 2012-09-06 17:14:20,159 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.209s] SoftwareGateway: Attempt to change class of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 2012-09-06 17:14:20,159 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.21s] SoftwareGateway: Attempt to change name of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 2012-09-06 17:14:20,160 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.211s] SoftwareGateway: Attempt to change version of gCube instance 80ec0bf0-f608-11e1-b150-8388f7d74ea3 2012-09-06 17:14:20,161 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.212s] SoftwareGateway: Generating security manager... 2012-09-06 17:14:20,164 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] [0.215s] SoftwareGateway: Loading credentials propagation property from jndi service environment 2012-09-06 17:14:20,164 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] [0.215s] SoftwareGateway: Credential propagation property = null 2012-09-06 17:14:20,165 WARN porttypes.ServiceContext [SoftwareGateway-Initialiser,warn:86] [0.216s] SoftwareGateway: No service propagation property set and no default configuration available 2012-09-06 17:14:20,165 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.216s] SoftwareGateway: managing security with a GCUBESimpleServiceSecurityManager 2012-09-06 17:14:20,169 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.22s] SoftwareGateway: Generating security control manager org.gcube.common.core.security.GCUBEServiceAuthenticationController 2012-09-06 17:14:20,172 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.223s] SoftwareGateway: managing security control with a GCUBESimpleServiceAuthController 2012-09-06 17:14:20,173 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.224s] SoftwareGateway: Generating security control manager org.gcube.common.core.security.GCUBEServiceAuthorizationController 2012-09-06 17:14:20,179 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.23s] SoftwareGateway: managing security control with a GCUBEAuthzChainAuthorizationController 2012-09-06 17:14:20,186 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.237s] SoftwareGateway: managing remote persistence with a GCUBERINoPersistenceManager 2012-09-06 17:14:20,194 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: in initialization 2012-09-06 17:14:20,195 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: banned version: null 2012-09-06 17:14:20,196 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Tmp directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/tmp 2012-09-06 17:14:20,196 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Pending directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/pending 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Maven directory = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/maven 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: Maven settings file path = settings.xml 2012-09-06 17:14:20,197 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP Server Base path = /home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP Server port = 6900 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: CHECK: httpServerBasePath=/home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps httpServerPort6900 2012-09-06 17:14:20,198 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: CHECK: httpServerBasePath=/home/gcube1/.gcore/persisted/node4.d.d4science.research-infrastructures.eu-8080/SoftwareGateway/jetty/webapps httpServerPort6900 2012-09-06 17:14:20,199 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP relative Maven directory = maven 2012-09-06 17:14:20,200 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: HTTP relative Report directory = report 2012-09-06 17:14:20,201 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: XSLT directory = /home/gcube1/gCore/etc/softwaregateway-service-1.1.0-SNAPSHOT/xslt 2012-09-06 17:14:20,201 DEBUG porttypes.ServiceContext [SoftwareGateway-Initialiser,debug:66] ServiceContext: webServerClass: org.gcube.vremanagement.softwaregateway.webserver.impl.jetty.JettyWebServer 2012-09-06 17:14:20,225 INFO porttypes.ServiceContext [SoftwareGateway-Initialiser,info:78] [0.276s] SoftwareGateway: moved to status INITIALISED 2012-09-06 17:14:20,231 INFO porttypes.ServiceContext [SoftwareGateway-Subscriber,info:78] [0.0s] SoftwareGateway: registering for GHN shutdown events 2012-09-06 17:14:20,231 TRACE porttypes.Registration [PortTypeConsumer,trace:82] [0.0s] SoftwareGateway: INITIALISING PORTTYPE REGISTRATION 2012-09-06 17:14:20,232 TRACE porttypes.Access [PortTypeConsumer,trace:82] [0.0s] SoftwareGateway: INITIALISING PORTTYPE ACCESS 2012-09-06 17:14:20,268 INFO porttypes.ServiceContext [SoftwareGateway-Subscriber,info:78] [0.037s] SoftwareGateway: registering for GHN scope removal events 2012-09-06 17:14:22,824 INFO porttypes.ServiceContext [SoftwareGateway-Stager,info:78] [0.0s] SoftwareGateway: moved to status READY 2012-09-06 17:14:22,824 TRACE porttypes.ServiceContext [SoftwareGateway-Stager,trace:82] [0.0s] SoftwareGateway: RI has been UPDATED 2012-09-06 17:14:22,870 TRACE porttypes.ServiceContext [Updater,trace:82] [0.0s] SoftwareGateway: publishing RI profile in scope(s) [/gcube/devNext, /gcube, /gcube/devsec] ...
VREModeler
Installation
The VREModeler is typically statically deployed by typing:
gcore-deploy-service <path>/vremodeler-service-x.x.x.gar
The command above assumes that the $GLOBUS_LOCATION/bin folder is in your PATH. In addition, the service requires that the following software are available in the $GLOBUS_LOCATION/lib folder:
- hsqldb 1.8.0 (or higher)
- vremodeler-stubs-x.x.x.jar
- ormlite 4.4 (or higher)
Moreover, the service can be also dynamically deployed by using the Resource Manager instance in the target scope. In this case, all its dependencies are also automatically deployed too.
gHN Configuration
No specific configuration is needed, but the typical configuration.
Instance Configuration
The service instance does not require any specific configuration.
Verify the Installation
Once the gHN is started, the $GLOBUS_LOCATION/nohup.out file has to report (among the others) the following portTypes:
gHN started at: http://host:port/wsrf/services/ with the following services: GCUBE SERVICES: ... [5]: http://host:port/wsrf/services/gcube/vremanagement/vremodeler/ModelerFactoryService [6]: http://host:port/wsrf/services/gcube/vremanagement/vremodeler/ModelerService ...
Looking at the $GLOBUS_LOCATION/logs/container.fulllog, the following messages related to the VREModeler initialisation have to be observed:
2009-10-02 14:37:54,604 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.0030s] VREModeler: INITIALISING RUNNING INSTANCE 2009-10-02 14:37:54,617 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.016s] VREModeler: Added scope(s) [/gcube, /gcube/devsec] 2009-10-02 14:37:54,621 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.02s] VREModeler: managing security with a GCUBEServiceSecurityManagerImpl 2009-10-02 14:37:54,622 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.021s] VREModeler: managing remote persistence with a GCUBERINoPersistenceManager 2009-10-02 14:37:54,687 INFO impl.ServiceContext [VREModeler-Initialiser,info:78] [0.086s] VREModeler: moved to status INITIALISED 2009-10-02 14:37:54,736 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0s] VREModeler: registering for GHN shutdown events 2009-10-02 14:37:54,737 INFO impl.ServiceContext [VREModeler-Subscriber,info:78] [0.0010s] VREModeler: registering for GHN scope removal events 2009-10-02 14:37:54,919 INFO impl.ModelerHome [HomeConsumer,info:78] [0.0030s] VREModeler: managing resources in SOFTPERSISTENT mode 2009-10-02 14:37:55,020 INFO impl.ModelerHome [HomeConsumer,info:78] [0.104s] VREModeler: activated sweeper to run every 60 seconds 2009-10-02 14:37:57,922 INFO impl.ServiceContext [VREModeler-Stager,info:78] [0.0s] VREModeler: ready event invoked on VREModeler 2009-10-02 14:37:57,929 INFO db.IStoDBUtil [VREModeler-Stager,info:78] IStoDBUtil: Starting initialization!! ... 2009-10-02 14:43:42,472 INFO impl.ServiceContext [VREModeler-Stager,info:78] [30.529s] VREModeler: moved to status READY
During the initialization phase, the instance looks for some resources that are not yet available (and it warns about these) and that are therefore created.
Requirements
The VREDefinitionPortlet (the VREModeler's GUI) allows the VRE Designer to select a set of functionalities to be included in the new VRE. At VREModeler level, a functionality is mapped on a set of services and portlets that globally deliver the specific operations. These mappings are defined in a Generic Resource (named FuctionalitiesResource) published on the IS.
This Generic Resource must be defined as follow:
<Resource> <ID>df899630-82ae-11de-a6cc-f15c9cf886be</ID> <Type>GenericResource</Type> <Scopes> </Scopes> <Profile> <SecondaryType>VREModelerResource</SecondaryType> <Name>FuctionalitiesResource</Name> <Description> A Generic resource containing the functionalities requested to a VRE at design time </Description> <Body> <MainFunctionalities> <MainFunctionality> <Name>Access Functions</Name> <Description> This class of functions characterises the facilities that can be activated in the Virtual Research Environment to support users in requesting, locating, and accessing the Virtual Research Environment content. </Description> <Functionalities> <Functionality> <Name>Search (Browse, Simple, and Combined)</Name> <Description> By selecting this function VRE users will be provided with facilities supporting the discovery of Information Objects by issuing keyword based queries. This is the simplest modality for discovering Information Objects constituting the VRE Information Space. In addition to the specification of the keywords characterising the Information Objects the user is interested in, this function permits to restrict the Information Space in which to search by specifying the set of Collections against which the query will be evaluated. </Description> <Services> <Service> <ServiceName>FilterXPathOperator</ServiceName> <ServiceClass>Search</ServiceClass> </Service> <!-- ...other services --> </Services> <Portlets> <Portlet>userprofileeditingportlet#UserProfileEditingPortlet</Portlet> <Portlet>layoutcreator#LayoutcreatorPortlet</Portlet> <!-- ...other portlets --> </Portlets> </Functionality> <!-- ...other functionalities --> </Functionalities> </MainFunctionality> <!-- ...other main functionalities --> </MainFunctionalities> </Body> </Profile> </Resource>