Globus 2.4 User's Guide
These instructions will show you the client interfaces to the various services of the Globus Toolkit.
- Initializing environment and creating a proxy.
- GRAM clients: used for launching jobs on remote resources.
- MDS clients: used for querying for details about resources.
- GridFTP clients: used for moving data from one place to another.
Before using any of the client tools, you need to initialize your environment, and create a proxy. First, follow the instructions on how to set your environment from the verification section of this guide.
Then, if you haven't already, follow the instructions on how to acquire a certificate.
Once you have your certificate, you can run
grid-proxy-init to create your
proxy. Now you're ready to use the client tools.
GRAM has the following clients:
$GLOBUS_LOCATION/bin/globus-job-runis an online interface to job submission, featuring staging of data and executables using a Global Access to Secondary Storage (GASS) server.
The basic syntax is:
% globus-job-run 'contact string' command
The contact string specifies a machine, port, and service to send the request to. The syntax of a contact string is
machine:port/jobmanager-name. The default port is 2119, and the default name is "jobmanager". If you have not customized the gatekeeper, you probably only need to specify the machine name. An example would be
% globus-job-run localhost /bin/date
If you wanted to conact a jobmanager named "jobmanager-pbs" on port 2345, you would run
% globus-job-run localhost:2345/jobmanager-pbs /bin/date
To access the staging functionality, you use the
-sflag. For example, if you have a script called "myprog" which is the following:
You could stage it in using the following command:
% globus-job-run localhost -s myprog
That will cause a GASS server to be started on your local machine. When your job reaches the jobmanager, the jobmanager will contact your GASS server and read in the staged file, then submit the job to the local scheduler.
You also have the ability to stage in stdin, and stage out stdout using the same mechanism:
% globus-job-run localhost -stdin myin.txt \ -stdout myout.txt -s myprog
$GLOBUS_LOCATION/bin/globus-job-submitis a batch interface to the GRAM server. It will return immediately, leaving you with a contact string that you can use to query the status of your job. The basic syntax is:
% globus-job-submit 'contact string' command
Although very similar to globus-job-run, globus-job-submit does not currently support staging of files automatically.
The contact strings are functionally opaque, but look like the following:
Using that contact string, you have access to the following commands:
- globus-job-status - get a status of "PENDING, ACTIVE, DONE, FAILED, or ..."
- globus-job-get-output - once the job is done, collect the output with this command.
- globus-job-clean - stops the job if it is running, andcleans up the cached copy of the output.
$GLOBUS_LOCATION/bin/globusrunis the executable which gives you access to the full power of RSL. globus-job-run and globus-job-submit are both shell script wrappers around globusrun.
See the RSL spec for a complete description of RSL, and some simple examples.
MDS has the following clients:
$GLOBUS_LOCATION/bin/grid-info-host-searchis the client to a GRIS server. The basic syntax is:
$ grid-info-host-search -p port hostname "LDAP filter"
$GLOBUS_LOCATION/bin/grid-info-searchis the client to a GIIS server. The basic syntax is:
$ grid-info-search [-x]
-xis for anonymous queries. The host and port are determined by information in the
GridFTP has the following clients:
The basic syntax for globus-url-copy is:
$ globus-url-copy sourceURL destURL
The URL prefix for GridFTP is gsiftp://. It can also handle file://, http://, and https://.
By default, globus-url-copy is expecting the same kind of host certificates that globusrun expects from gatekeepers.
If you run a GridFTP server by hand, you will need to explicitly specify the subject name to expect. You can use the "-ss" flag to set the sourceURL subject, and "-ds" to set the destURL subject. If you use "-s" alone, it will set both to be the same. You can see an example of this usage under the Verification section of this guide. Please note: This is the unusual case of using this client. Most times you only need to specify both URLs.
Last modified: Thu Apr 24 10:25:03 CDT 2003