This information is for a release that is no longer supported by the Globus Toolkit. The currently supported versions of the Globus Toolkit are 4.2 (recommended) and 4.0.
Resource Management (GRAM)
The Globus Toolkit includes a set of service components collectively referred to as the Globus Resource Allocation Manager (GRAM). GRAM simplifies the use of remote systems by providing a single standard interface for requesting and using remote system resources for the execution of "jobs". The most common use (and the best supported use) of GRAM is remote job submission and control. This is typically used to support distributed computing applications.
For most Grid-based projects, we recommend using GRAM as a project-wide standard for remote job submission and resource management.
GRAM is designed to provide a single common protocol and API for requesting and using remote system resources, by providing a uniform, flexible interface to, local job scheduling systems. The Grid Security Infrastructure (GSI) provides mutual authentication of both users and remote resources using GSI (Grid-wide) PKI-based identities. GRAM provides a simple authorization mechanism based on GSI identities and a mechanism to map GSI identities to local user accounts.
GRAM reduces the number of mechanisms required for using remote resources (such as remote compute systems). Local systems may use a wide variety of management mechanisms (schedulers, queuing systems, reservation systems, and control interfaces), but users and application developers need to learn how to use only one (*GRAM*) to request and use these resources. This capability is consistent with the "hourglass" role played by most of the Globus Toolkit's components: GRAM is the neck of the hourglass, with applications and higher-level services (such as resource brokers or metaschedulers) above it and local control and access mechanisms below it, as shown in the below figure. Both sides need work only with GRAM, so the number of interactions, APIs, and protocols that need to be used are greatly reduced.
We expect GRAM to continue evolving rapidly within the OGSI setting (GT3 GRAM), as its protocol is standardized, and as richer job description and resource provisioning capabilities are added.
GRAM does not provide scheduling or resource brokering capabilities. A wide variety of metaschedulers and resource brokers that leverage GRAM mechanisms have been developed by other projects for the GT2 GRAM. Due to its recent June/July release, GT3 GRAM may not yet have been integrated into the various metaschedulers and resource brokers. However, we expect these applications will be updated to use GT3 GRAM.
GRAM does not provide accounting and billing features. It is assumed that these features-if needed-are being supplied by local management mechanisms such as a queuing system or scheduler.
GT3 3.0 GRAM Docs
The Globus Resource Allocation Manager (GRAM) is the lowest level of Globus resource management architecture. GRAM allows you to run jobs remotely, using a set of WSDL/OGSI client interfaces for submitting, monitoring, and terminating a job. Job requests are written by the user in the Resource Specification Language (RSL) and processed by the ManagedJobService as part of the job request.
- Architecture Overview
- Fault Tolerance
- RSL Schema
- gram_rsl.xsd
- rsl.xsd
- Client
- GRAM Tests
- Sun Grid Engine Integration with GRAM
Globus Research Papers on Resource Management
