220 likes | 363 Views
“A Distributed Resource Management Architecture that supports Advance Reservation and Co-Allocation”. Ian Foster, Carl Kesselman, Craig Lee, Bob Lindell, Klara Nahrstedt & Alain Roy. Abstract. Network Based Applications Primary Requirement : End-to-End QoS Issues pertaining to Resources.
E N D
“A Distributed Resource Management Architecture that supports Advance Reservation and Co-Allocation” Ian Foster, Carl Kesselman, Craig Lee, Bob Lindell, Klara Nahrstedt & Alain Roy
Abstract Network Based Applications • Primary Requirement : End-to-End QoS • Issues pertaining to Resources. • Dynamic Discovery • Reservation (Advance or Immediate) • Heterogeneous Resources • Independently Controlled and Administered • How GARA addresses these issues. • A prototype implementation and results.
Mechanisms to Achieve End-to-End QoS • Configuration of Resources • Resource Discovery • Resource Selection • Resource Reservation • Advance Reservation (e.g. Airline Ticket) • Immediate Reservation (e.g RSVP) • Resource Allocation Absence of Reservation : Over provisioning or Degraded Service
Practical Difficulties • Deployed Systems lack support for Advanced Reservation • Complex Collections of Resources • Varying types of resources. • Resources present in Different Administrative Domains.
GARA (A Brief Overview) • Treats both reservations and computational elements as entities. • Supports different resource types uniformly. • Defines a layered Architecture that allows strategies to be encapsulated in co-allocation and co-reservation agents. • Agent Code – Application Specific/Generic, Linked/Brokers, Centralized/Distributed implementation
Globus Resource Management Architecture Provides dedicated access to collection of computers in heterogeneous distributed systems. Three Main Components • Information Service • Various types of Co-Allocation Agents • Local Resource Managers
Information Service • Uses LDAP concepts. • Implements a hierarchical Namespace • Uniform Representation of Resources • Standard Access methods • A Resource Entry • Type • Architecture • Structure (e.g. network connectivity) • Current State (current load, availability…)
The Co-allocation Agent • Accepts computation description from application. • Uses Information service, heuristics, and application specific knowledge to generate resource requirements, discover the resources and allocate them. • Co-allocation strategies – robust startup across multiple resources in case of failure. • Globus Toolkit’s DUROC uses upcalls to indicate failure of individual allocation events..
Globus Resource Allocation Manager • Accepts an allocation request from agent. • Authenticates the request using GSI. • Interfaces to local schedulers to allocate that resource, create a ‘job’. • Returns a ‘job handle’. • Application can use the job handle to monitor and control the state of the computation.
The Globus Resource Management Architecture Application Resource & Job Spec. Job Handles Information Service Co-allocation Agent Resource Discovery Create Job Calls GRAM GRAM GRAM Resource Resource Resource
Issues pertaining to Resources. • Dynamic Discovery • Reservation (Advance or Immediate) • Heterogeneous Resources • Independently Controlled and Administered
Globus Architecture for Reservation and Allocation (GARA) • Introduces the generic Resource Object • Network flows • Memory blocks • Disk blocks • Processes… • Introduces reservation. • Other Architectural Changes follow…
Resource Objects • Re-formulate computation-specific allocation functions in terms of general resource objects. • Different application components can thus be manipulated in common ways. • Create object • Object handle. • Upcalls for adaptive sytems.
Reservation • Create object • Reservation • Allocation • Advantages of Splitting Reservation from Allocation. • Reserve high-demand resources. • Cheaper than allocation as no object needs to be created. • ‘Create Reservation’ and then ‘Create Object’
GARA Application Object handles Resource Spec. Resource Handles. Information Service Co-reservation Agent Co-Allocation Agent Resource Discovery Create Reservation Calls Create Object Calls GRAM GRAM GRAM Resource Resource Resource
Co-reservation/Allocation agents • Build a bridge between the application and available resources. • Construct sets of resources that • Match applications QoS requirements. • Conform to local policies of providers. • An agent can • Be a Library linked with application / Global ‘Broker’. • Have centralized or distributed functionality. • Proceed autonomously or interactively.
GARA Client Side API • CreateReservation • CreateObject • CancelReservation • CancelObject • RegisterCallBack • ModifyReservation
GARA Implementation • Layered Structure • GARA external interface (GEI) authentication and dispatch of incoming requests, registration and propagation of upcalls to processes… • Local resource allocation manager (LRAM) provides basic object and reservation services. Depends on the nature of local resource management services (e.g scheduler)
The LRAM • Structure of the LRAM depends heavily upon nature of local resource management service. • Three scenarios : • Reservation Support provided. • LRAM has total control over resource. • No total control over resource. • Slot Table. • Slot Manager.
Results • Cost of creating and then canceling an object is slightly heavier than that of creating and canceling a reservation. • Therefore the GARA scheme will be more efficient. • Remote access time is dominated by authentication. • Therefore, by having an agent to negotiate on user’s behalf can be beneficial as repeated remote authentication operations are avoided.
Conclusion • GARA solves the problem of achieving end-to-end QoS guarantees across heterogeneous collections of shared resources. • Uses ‘Reservations’and ‘Resource objects’. • Uniform representations and operations. • ‘Information Service’reveals site specific policies. • Co-reservation & co-allocation agents discover, reserve and allocate resources. • Cost of GARA mechanisms are not large when compared to underlying resource management operations.
Abbreviations • GARA – Globus Architecture for Reservation and Allocation • DUROC – Dynamically updateable resource on-line co-allocator. • GRAM – Globus Resource Allocation Manager • GRAM – Globus Reservation & Allocation Manager.