"Seegrid will be due for a migration to confluence on the 1st of August. Any update on or after the 1st of August will NOT be migrated"

Snark Service Implementation

Introduction

This page details the current implementation of the SNARK service and its respective client programs

The Service - First iteration Requirements

SNARK SERVICE
Implements persistence of job resource

Methods:
  • Run method - creates job description file and submits it to WS-Gram
  • Status method - returns the job's status
  • List Jobs - lists jobs run over the past month
  • Job Extra Details - lists extra details about the job
  • Results - transfers files from the Cluster Storage to defined filesystem or SRB location and returns location to client
  • Standard error & output - returns standard error & output to the user

Current Iteration Details

Snark Service Implementation

Snark SERVICE
Implements persistence of job resource

Methods:
  • Run method - creates job description file and submits it to WS-Gram
  • Kill method - stops a job
  • Status method - returns the job's status
  • Results - transfers files from the Cluster Storage to defined filesystem or SRB location and returns location to client
  • Standard error & output - returns standard error & output to the user

To Install the Current Service

Username: apacguest Password: apacguest

  • Install the code in your project area of your gt4 installation - $GLOBUS_LOCATION/test.

We are using one of our vms - ng2.ivec.org to deploy our web service, replace this hostname with yours.

  • $GLOBUS_LOCATION is defined as "/usr/local/globus"
  • $EXAMPLES_DIR (as used in the tutorials) refers to "$GLOBUS_LOCATION/test/SnarkGTService"

AS THE GLOBUS USER ("globus")
  • source $GLOBUS_LOCATION/etc/globus-devel-env.sh
  • edit $EXAMPLE_DIR/serviceConfig.xml
     <serviceConfig>
             <submissionHost>https://ng2.ivec.org:8443</submissionHost> <!--local sites ng2 machine -->
             <nodes>2</nodes> <!--typically leave as 2, set default cpus -->
             <fileSource>gridftp</fileSource> <!-- either gridftp OR srb -->
             <localGridftpServer>gsiftp://ng2.ivec.org:2811</localGridftpServer> <!--ng2 machine's LOCAL gridftp server -->
             <clusterGridftpServer>file:///</clusterGridftpServer><!--gridftp server on the cluster, if there isn't one, set to ng2's gridftp server, thus maybe the same as above server-->
             <remoteStagingServer>gsiftp://ngdata.ivec.org:2811</remoteStagingServer> <!--staging server, PLEASE LEAVE AS ngdata@ivec, remote server used to stage data in and out from, for example: gsiftp://ngdata.ivec.org:2811 OR gsiftp://ng2.ivec.org:5000-->
             <queue>normal</queue> <!-- pbs queue name-->
     </serviceConfig>

  • Creating the GAR file: from $EXAMPLES_DIR type - "python globus-build-service.py simSnark"

to create the .gar file defining our web service. The file "au_csiro_services_snarkservice.gar" is then created in $EXAMPLES_DIR.

  • Deploy the service into a Web Services container: from $GLOBUS_LOCATION type - "globus-deploy-gar $EXAMPLES_DIR/au_csiro_services_SimulationSnarkService.gar"
  • Restart the globus container

There is also a command to undeploy the service: globus-undeploy-gar au_csiro_services_SimulationSnarkService (Notice that you do NOT include the extension (*.gar))

Note: you can safely redeploy a .gar (after a change) without first undeploying it, BUT you must restart globus to let the changes take effect!

For further information, please see the following, please note substitute ApacGeneric with Snark HowToExtendOurService#To_Install_the_service

Information on the interface

The interface for the service is available at: https://cgsrv1.arrc.csiro.au/subversion/apacgrid/trunk/SnarkGTService/schema/SimulationSnarkSchema/MyWsdl.wsdl

Usage of Clients

Snark Service clients

Example Snark Input Files

Please see the documentation on Underworld (the main executable in the Snark/St Germain package) http://www.mcc.monash.edu.au/twiki/view/Software/UnderworldContents

Mailing list for Underworld/Snark users http://vpac.org/mailman/listinfo/underworld-users

Unit Tests

Please checkout the test/client code from our svn: https://cgsrv1.arrc.csiro.au/subversion/apacgrid/trunk/SnarkGTService-clients/

Change the relevant information in the runtests.sh file and go $ ./runtests.sh

Testing service (OLD)

Temp page for results.

Set 1

  • java 1.4.2_10
  • sourced devel-env
  • full globus libs in classpath
  • compiled java files against full globus

kill dead job
real 0m23.530s user 0m8.773s sys 0m7.814s
real 0m18.894s user 0m9.066s sys 0m7.839s
real 0m19.617s user 0m9.548s sys 0m7.611s
real 0m19.977s user 0m9.915s sys 0m7.814s

submit real job
real 0m25.268s user 0m8.974s sys 0m8.459s
real 0m25.021s user 0m9.795s sys 0m7.957s
real 0m25.113s user 0m9.113s sys 0m8.268s
real 0m26.001s user 0m10.407s sys 0m8.378s

Kill Real Job
real 0m23.940s user 0m9.141s sys 0m7.861s
real 0m24.168s user 0m10.295s sys 0m8.138s
real 0m23.137s user 0m9.279s sys 0m7.549s
Topic revision: r41 - 15 Oct 2010, UnknownUser
 

Current license: All material on this collaboration platform is licensed under a Creative Commons Attribution 3.0 Australia Licence (CC BY 3.0).