|
|||||||||||||||||||||||||||
17.16 Configuring a Grid with Globus
17.16.1 Peer-to-Peer Globus Interfacing OverviewGlobus is a grid toolkit designed to simplify security authentication, job management, resource discovery, and data staging, among providing other services. Globus does this by using X.509 security credentials and a proxy delegation model to allow a "single sign-on" to access these grid services. (See the Globus homepage for more details about Globus technologies.) Moab may use Globus in the following ways:
NOTE: To use Globus grid services, Moab must be specifically compiled with Globus support enabled. (You will need to use either a globus-enabled binary, or if using a source distribution, build Moab with -D__MGLOBUS and un-comment the necessary Globus libraries.) NOTE: Before testing Moab with Globus, proper Globus configuration and operation should be verified using a simple acceptance test suite. NOTE: Moab works with all major releases of Globus including Globus Toolkit 2.x, Globus Toolkit 3.x, and Globus Toolkit 4.x. NOTE: If using Moab's bi-directional peer-to-peer communication configuration, Globus should be compiled threadsafe. To Globus or Not To Globus Moab can enable grids either with or without Globus services. When setting up a new grid that does not already have Globus installed, the question arises regarding whether Globus should be installed. Moab has the ability to enable most or all services provided by Globus using either internal capabilities or by taking advantage of other external services. Moab can enable secure peer-to-peer authentication, can handle job migration, and can use other mechanisms for data staging. However, Globus can also provide these services. The following table provides some of the pros and cons associated with this decision:
17.16.2 Peer-to-Peer Globus Credential AuthenticationAs mentioned, Moab peers may use Globus credentials to set up relationships of trust to allow public key based authentication. Globus credentials are used to replace the secret key model explained in Grid Security. Both models cannot be used when communicating with the same peer, but both can be used when a Moab server communicates with different peers. Setting up Moab to use Globus credential authentication is straightforward, but before Moab can use this service the following conditions must be met:
After conditions are met, Moab will automatically load in a Globus credential when started. It will attempt to acquire the credential owned by the user starting it. If running as root, Moab will use the host credential. Moab must now be configured to use the credential for authentication purposes. If Moab is to use resources on a destination peer using Globus authentication it needs to specify this in the moab-private.cfg file. For example, if moab.cfg defines a destination peer resource manager named destpeer, then the moab-private.cfg could appear as follows:
This indicates that when communicating with the destination peer, the Globus credential loaded at startup will be used to authenticate. Notice also the credential's subject name /O=Grid/OU=GlobusTest/OU=simpleCA-localhost.localdomain/OU=localdomain/CN=DestHost is specified to notify Globus which credential it should accept communication from. (You can determine the credential's subject name by executing mdiag -S on the destination peer.) Before the destination peer will accept Globus authentication from the source peer, it needs an entry in its moab-private.cfg file:
To view information about Globus credential usage, execute the mdiag -S command. To view information, including possible errors, with peers using Globus credential authentication use the mdiag -R command. 17.16.3 Using Globus Pre-WS GRAM for Job SubmissionTo enable inter-cluster job migration using Globus's Pre-WS GRAM protocol, the resource manager interface should be configured with the JOBSTAGEMETHOD attribute set to GLOBUS as in the following example:
The mdiag -R command can be used to display and diagnose this configuration. Next, install the pbsnative Globus job manager bundled with Moab. This needs to be installed on every peer that will receive requests to submit jobs using the Globus GRAM service. The needed files can be found in the tools/globus directory. Edit the globus-job-manager-patch file so that the PBS and GLOBUS variables point to the correct locations. Save the file and then run it as root:
Those using Moab's client commands to access grid resources controlled under Globus authentication may find it necessary to set the Globus destination subject. This is done by setting the MGLOBUSDS environment variable to the appropriate destination subject.
17.16.4 Using Globus GridFTP for Data StagingTo enable inter-cluster data staging using Globus's GridFTP service, you will need to set up a storage manager that uses scripts that use the Globus services. Please see Data Staging for full details. 17.16.5 Interfacing with GlobusMoab can use the Globus gatekeeper service to stage and submit jobs if Moab is built with Globus support and can acquire a valid Globus credential. If gatekeeper is to be used, the source side resource manager job migration method must be set to globus as in the following example:
NOTE: Moab can use gatekeeper services even if non-Globus credential based peer-to-peer server authentication is being used, but will still need a Globus credential to authenticate against gatekeeper. The mdiag -R -V job [RMID] command can be used to test and diagnose end-to-end job migration regardless of the job staging method configured.
|
|||||||||||||||||||||||||||
| © 2001-2008 Cluster Resources, Incorporated | |||||||||||||||||||||||||||