These notes have been written to lead you through the exercises on the Open Science Grid education gridlab at the University of Chicago.
You will need a personal account on the education lab machines. You can get an account by filling in the form at http://www.ci.uchicago.edu/accounts/ giving your CI Sponsor's name as Mike Wilde and making sure to choose the 'OSG Education Gridlab' option. You must also directly email Mike Wilde, wilde@mcs.anl.gov introducing yourself and your interest in using the training lab.
When you have your account, you can connect to terminable.ci.uchicago.edu using an SSH client. Most unix systems have an ssh command by default. On Windows, a popular ssh client is PuTTY.
These notes have transcripts from a machine called
terminable.ci.uchicago.edu. You might be
using a different machine, in which case you should be careful to replace
terminable.ci.uchicago.edu with the name of the machine
you are logged in to.
The exercise notes was prepared by running as user
YOURLOGIN.
Replace that with your actual username in all command line parameters.
You will see various styles of text in the tutorial notes.
Text like this represents output from your computer.
Text like this is input that you should type.
Text like this is a listing of the content of a file, such as a program that you will need to type in.
You will be doing all the lab exercises on a set of Linux computers
(hosts) named terminable
and gridlab2.
From these machines, we will
run Grid jobs both locally on the grid lab machines and on the
Open Science Grid.
To access terminable
from your computer, use secure shell.
On a Windows machine, use the PuTTY program. Open PuTTY and enter the hostname of the computer that you will use.
On a Mac, use the Terminal and ssh command-line tool. Open Terminal and type:
$ssh YOURLOGIN@terminable.ci.uchicago.eduThe authenticity of host 'terminable.ci.uchicago.edu (128.135.125.193)' can't be established. RSA key fingerprint is 36:74:78:a8:ed:6b:38:96:63:20:01:df:46:9b:59:3b. Are you sure you want to continue connecting (yes/no)?Note
Make sure to replace the login name with your login name, as assigned by the instructors.yesWarning: Permanently added 'terminable.ci.uchicago.edu,128.135.125.193' (RSA) to the list of known hosts. YOURLOGIN@terminable.ci.uchicago.edu's password:PASSWORD# not echoed terminable$Note
Now you're talking to a shell on the terminable server
After the first time you do this, you won't get the "Are you sure..." prompt. Some of you will never see this, as your computers were used for testing this material, and the "yes" reply was already supplied by a tester. So it will look like:
$ssh YOURLOGIN@terminable.ci.uchicago.eduPassword:PASSWORDterminable$
You should be able to reach the other lab host
gridlab2.ci.uchicago.edu in this way too.
To start, practice cutting text from this page in your web browser to run a command or set of commands: cut the pwd command from the box below and paste it into your terminal window to execute it. This is a good way to avoid making typos while entering commands from the examples.
$ pwd
/home/train99
In order to do things (like submit jobs or transfer data) on the grid, you need an X509 credential. The details of this will be examined later on, in the security section.
If you already have a credential (for example from the security module of an in-person OSG grid school), you can install it into your gridlab account. If you do not, then you should request one. The next two sections detail how to do this. You should follow the instructions in only the relevant section:
This section will help you to request a certificate from the DOEGrids certificate authority.
Type the following command. You must modify some of the parameters to reflect your real name, email address, telephone number. Make sure you do this before submitting the request.
$ cert-request -agree -ou p -name "Your Name Here" -email youremail@somewhere.edu \
-phone "+111-111-1111" -reason "Grid school" -affiliation osg -vo osgedu \
-sponsor_name "Alina Bejan" -sponsor_email "abejan@ci.uchicago.edu" -sponsor_phone "+1-773-702-3492"
You will need to change -name, -email, and -phone to reflect your personal details.
You will be asked for a secret passphrase. Choose one.
After you have have requested a certificate for yourself from the DOEgrids CA, you will have to wait some period for your request to be approved. This may take around one day.
When your request has been processed, you should receive an approval email.
That email message will contain a serial number. For example, in the below message, the serial number is 0x3cc4.
Your Personal certificate request has been processed successfully. SubjectDN= CN=Ben Clifford 800313,OU=People,DC=doegrids,DC=org IssuerDN= CN=DOEGrids CA 1,OU=Certificate Authorities,DC=DOEGrids,DC=org notAfter= Jun 7, 2008 6:21:01 AM notBefore= Jun 8, 2007 6:21:01 AM Serial Number= 0x1234
Retrieve your credential like this:
$ cert-retrieve -certnum 0x1234
using CA doegrids
Checking that the usercert and /home/train99/.globus/userkey.pem match
Enter pass phrase for /home/train99/.globus/userkey.pem:
writing RSA key
/home/train99/.globus/usercert.pem and /home/train99/.globus/userkey.pem now contain your Globus credentialNow you have a DOE credential for yourself.
If you already have your own credential elsewhere, for example from an
in-person grid school, you can install it into your account by placing
the two files usercert.pem and
userkey.pem into the directory
~/.globus/ in your account, for example by using
scp or sftp.
When you have a credential installed in your account through one of the above methods, you will need a grid proxy. A grid proxy contains everything necessary to authenticate you to grid resources. You can create one by using the command grid-proxy-init .
terminable.ci.uchicago.edu$grid-proxy-initYour identity: /DC=org/DC=doegrids/OU=People/CN=Your Name 418168 Enter GRID pass phrase for this identity:passwordCreating proxy ........................................... Done Your proxy is valid until: Thu Nov 29 02:50:35 2007
Now you are ready to start running your own jobs on the grid. But, as with any programming tasks, you my get errors. Here is an useful pointer on Globus error messages. Please make sure to check it before submitting your ticket to the support team.