Getting Started
Table of contents
- Introduction
- Test 1 Getting your VO credentials
- Test 2. Check where you are allowed to submit jobs
- Test 3. Submit test jobs
- Test 4. Submit your own test
Introduction
In order to submit a jobs to the SMSCG infrastructure, you need access to a user interface node (UI). Many of the institutions participating in the SMSCG project provide such a UI to their users. Please contact us at https://rt.smscg.ch to gain access to a UI.
This page provides information on how to check:
- if the registration with your chosen VO was successful
- if the your VO membership information has been propagated
- which grid sites grant you access
If you have any questions or suggestions please visit https://rt.smscg.ch and let us know.
Test 1 Getting your VO credentials
1. Obtain a SLCS certificate:
slcs-init -i <IDENTIY_PROVIDER_ID>
(Note, if you don't know your <IDENTITY_PROVIDER_ID> or are not sure if it is enabled, do a slcs-info. This command will list all available identity providers. For more information about slcs-init and slcs-info use the '-h' flag.)
example:
[flury@fulla ~]$ slcs-init -i switch.ch Shibboleth Password:
.....
Your slcs certificate is stored in $HOME/.globus/usercert.pem and the key in $HOME/.globus/userkey.pem. If your user name on your machine is not the same as your AAI user name, you have to specify the -u option:
slcs-init -i <IDENTIY_PROVIDER_ID> -u <USER_NAME>
example:
[flury@fulla ~]$ slcs-init -i switch.ch -u Flury Shibboleth Password:
.....
2. Request your VO attributes:
voms-proxy-init -voms <YOUR_VO>
example:
flury@fulla ~]$ voms-proxy-init -voms smscg Cannot find file or dir: NONE/etc/vomses Enter GRID pass phrase: Your identity: /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A Creating temporary proxy ..................................... Done Contacting concordia:15025 [/O=GRID-FR/C=CH/O=SWITCH/OU=MIDDLEWARE/CN=concordia.switch.ch] "smscg" Done Creating proxy ................................................. Done Your proxy is valid until Thu Feb 5 22:50:16 2009
Notice that you will be requested to enter your private key password: this will either be the same AAI password or the new one you entered when requesting your SLCS certificate
3. Check your VO attributes:
voms-proxy-info -all
example:
[flury@fulla ~]$ voms-proxy-info -all subject : /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A/CN=proxy issuer : /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A identity : /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A type : proxy strength : 512 bits path : /tmp/x509up_u976 timeleft : 9:58:24 === VO smscg extension information === VO : smscg subject : /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A issuer : /O=GRID-FR/C=CH/O=SWITCH/OU=MIDDLEWARE/CN=concordia.switch.ch attribute : /smscg attribute : urn:mace:dir:attribute-def:sn = Flury (smscg) attribute : urn:mace:dir:attribute-def:mail = placi.flury@switch.ch (smscg) attribute : urn:mace:dir:attribute-def:eduPersonAffiliation = staff (smscg) attribute : urn:mace:dir:attribute-def:givenName = Placi (smscg) attribute : urn:mace:switch.ch:attribute-def:swissEduPersonHomeOrganization = switch.ch (smscg) attribute : urn:mace:switch.ch:attribute-def:swissEduPersonUniqueID = 521780@switch.ch (smscg) timeleft : 9:58:24
Test 2. Check where you are allowed to submit jobs
Notice, if your VOMS registration took place very recently you might not have access yet. It takes about 2 hours until a freshly registered user is known by all sites.
1. How to query the grid information system to see which resources you have been granted access to:
ngtest -R
example:
[flury@fulla ~]$ ngtest -R Resource authorizations: Certificate-subjectname: /DC=ch/DC=switch/DC=slcs/O=Switch - Teleinformatikdienste fuer Lehre und Forschung/CN=Placi Flury C82EEB1A Retrieving information... You are authorized at the following clusters: disir.switch.ch globus.vital-it.ch nordugrid.unibe.ch ocikbpra.unizh.ch smscg-ce.projects.cscs.ch You are authorized at the following storage-elements: None
Test 3. Submit test jobs
The NorduGrid client comes with some built-in test jobs that can be submitted out of the box. You can find a short description about the test job by typing ngtest -h.
1. Submit a 'hello grid' job to a site. Pick up one of the clusters you have seen in test 2 and do:
ngtest -c <cluster> -d <debug_level> -job 2
example:
[flury@fulla ~]$ ngtest -c disir.switch.ch -d 1 -job 2
Submitting test-job 2:
&("executable" = "/bin/echo" )("arguments" = "hello, grid" )
("jobname" = "ARC testjob 2" )("stdout" = "stdout" )("cputime" = "5" )
Client middleware: nordugrid-arc-0.6.3, globus-4.0.5
Queue selected: short@disir.switch.ch
File uploaded: /tmp/flury/rsl.ocjzud
Job submitted with jobid:
gsiftp://disir.switch.ch:2811/jobs/2961912338355801908710616
Cluster: disir.switch.ch; middleware: nordugrid-arc-0.6.3, globus-4.0.5-0.8ng
2. You can query the status of the job you just submitted by:
ngstat <jobid>
example:
[flury@]$ ngstat gsiftp://disir.switch.ch:2811/jobs/2961912338355801908710616 Job gsiftp://disir.switch.ch:2811/jobs/2961912338355801908710616 Job Name: ARC testjob 2 Status: FINISHED Exit Code: 0
3. After the job finished successfully you can retrieve its output with:
ngget <jobid>
example:
[flury@]$ ngget gsiftp://disir.switch.ch:2811/jobs/2961912338355801908710616 Results stored at /home/flury/2961912338355801908710616 Jobs processed: 1, successfuly downloaded: 1
You can get more information about every command and its options by invoking it with the '-h' flag.
Test 4. Submit your own test
In order to submit your own tests you need to write a so called job description, written in the NorduGrid ARC's proprietary job description language XRSL.
Here is an example:
[flury@fulla ~]$ cat hellogrid.xrsl & (executable=hellogrid.sh) (jobname=hellogrid) (stdout=hello.out) (stderr=hello.err)
with 'executable' hellogrid.sh e.g.:
[flury@fulla ~]$ cat hellogrid.sh #!/bin/sh echo "Hello Grid"
You can submit this job via ngsub -c <cluster> hellogrid.xrsl (or ngsub hellogrid.xrsl if you do not want to explicitly specify the cluster):
example:
[flury@fulla ~]$ ngsub -c disir.switch.ch hellogrid.xrsl Job submitted with jobid: gsiftp://disir.switch.ch:2811/jobs/3184812338362231712389307
To retrieve the result use the ngstat and ngget commands as shown in test 3.
