Quick Guide to Dirac
Contents
Introduction
This document describes how to quickly set up a simple Dirac client, create a job script and then submit it to a Dirac server for execution. You need to be registered with the dirac server (please see below on how to check this) before attempting to install the dirac UI.
If you are not registered, please contact janusz.martyniak@imperial.ac.uk.
Please consider signing up to the gridpp dirac users mailing list: Sign up !
For operational issues please consider filing a GGUS ticket. If you set "Notify site" to UKI-LT2-IC-HEP, we'll see it quicker. If you don't know if your issue is operational, just use the mailing list :-)
Server URL
The Dirac server is installed at Imperial College. The Web interface is at:
https://dirac.grid.hep.ph.ic.ac.uk:8443
You need a certificate installed in your browser.
To check that you are correctly registered with this dirac instance, check the bottom righthand corner. If this shows you as "visitor" and you cannot change this, you are not registered. In this case, please contact Janusz.
Dirac client installation
mkdir dirac cd dirac wget -np -O dirac-install http://lhcbproject.web.cern.ch/lhcbproject/dist/Dirac_project/dirac-install chmod +x dirac-install ./dirac-install -V gridpp -r v6r11p12 source bashrc
Note 1: The 'gridpp' in the command above does not refer to the gridpp VO - please use the command as is, independently of which VO you will use later on."
Note 2: The version (v6r11p12) should match the version given at the bottom of the GridPP DIRAC portal web pages. CHECK THIS BEFORE CREATING A NEW DIRAC CLIENT.
Configure the client
Create a dumb, groupless proxy (mind -x). This option is to be used only when configuring the client.
Have your keys (userkey.pem and usercert.pem) in $HOME/.globus/ and the CA certs in /etc/grid-security
Make a proxy.
$ dirac-proxy-init -x Generating proxy... Enter Certificate password: Proxy generated: subject : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak/CN=proxy issuer : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak identity : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak timeleft : 23:59:59 path : /tmp/x509up_u500 username : unknown properties :
Configure defaults. (Also use this command (-F == force update) when updating the UI).
$ dirac-configure -F defaults-gridpp.cfg
if you see an error like below then you probably are not registered with the dirac instance.
Could not sync dir Cannot get URL for Framework/BundleDelivery in setup MyDIRAC-Production: Option /DIRAC/Setups/MyDIRAC-Production/Framework is not defined
Create a proxy for a community
To be able to submit a job, you need to be a member of a community (VO), here gridpp. If you are, you can create a proxy:
$ dirac-proxy-init -g gridpp_user -M Generating proxy... Enter Certificate password: Uploading proxy for gridpp_user... Proxy generated: subject : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak/CN=proxy issuer : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak identity : /C=UK/O=eScience/OU=Imperial/L=Physics/CN=janusz martyniak timeleft : 23:59:58 DIRAC group : gridpp_user path : /tmp/x509up_u500 username : martynia properties : NormalUser
You can easily verify what VOs you are a member of, by going to the Dirac website and clicking at the drop-down menu at the bottom right, next to your username@ text. If your username shows "Anonymous" it means
that you are not registered as a Dirac user. Please contact janusz.martyniak at imperial.ac.uk.
Other VOs: vo.londongrid.ac.uk: use londongrid_user, for t2k.org please use t2k_user, for pheno use pheno_user, for snoplus use snoplus_user, for cernatschool use cernatschool_user.
Note: We are aware that the VO name and the dirac group should match, but for the time being, please bear with us and use the dirac groups ......
Create a JDL
Now we are ready to create a simple Dirac jdl. Put the lines below into a file Simple.jdl:
[ JobName = "Simple_Job"; Executable = "/bin/ls"; Arguments = "-ltr"; StdOutput = "StdOut"; StdError = "StdErr"; OutputSandbox = {"StdOut","StdErr"}; ]
Submit a job
$ dirac-wms-job-submit Simple.jdl JobID = 236
Check job status:
$ dirac-wms-job-status 236 JobID=236 Status=Waiting; MinorStatus=Pilot Agent Submission; Site=ANY
and eventually:
$ dirac-wms-job-status 236 JobID=236 Status=Done; MinorStatus=Execution Complete; Site=LCG.Glasgow.uk;
The jobs can also be monitored using the Web interface. Go to Jobs ->Job monitor You can also submit a job using the Web interface (Tools->Job Launchpad).
Back to GridPP Dirac overview page.