Transcript

Grid Scheduling through Service-Level Agreement

Karl CzajkowskiThe Globus Project

http://www.globus.org/

2

Overview

Introduction to Grid Environments The Resource Management Problem

– Cross-domain applications

– Resource owner goals vs. application goals An Open Architecture to Manage Resources

– Service-Level Agreement (SLA)

– GRAM and Managed Services Related and Ongoing Work

3

Grid Resource Environment

Distributed users and resources Variable resource status Variable grouping and connectivity Decentralized scheduling/policy

RR

RR

R

R

?

?

R

RR

R

R R

R

R R?

?R

R

R

R R

dispersed users

VO-A VO-B

network

4

Social/Policy Conflicts

Application Goals– Users: deadlines and availability goals

– Applications: need coordinated resources Localized Resource Owner Goals

– Policies towards users

– Optimization goals Community Goals Emerge As:

– An aggregate user/application?

– A virtual resource? Both!

5

Data-Intensive Example

Concurrent resource requirements– Large scale storage, computing, network, graphics

Datapath involves autonomous domains

Reduction

TCP/IP

RenderingSorting Transport

... ... ... ...

Receive Buffer

Parallel I/O

6

Early Co-Allocation in Grids

SF-Express (1997-8)– Real-time simulation

– 12+ supercomputers, 1400 processors Required advance reservation

– Brokered by telephone!

– Globus DUROC software to sync startup

– Over 45 minutes to recover from failure In use today in MPICH-G2 (MPI library)

7

Traditional Scheduling

Closed-System Model– Presumption of global owner/authority

– Sandboxed applications with no interactions

– “Toss job over the fence and wait” Utilization as Primary Metric

– Deep batch queues allow tighter packing

– No incentives for matching user schedule Sub-cultures Counter Site Policies

– Users learn tricks for “gaming” their site

8

An Open Negotiation Model

Resources in a Global Context– Advertisement and negotiation

– Normalized remote client interface

– Resource maintains autonomy Users or Agents Bridge Resources

– Drive task submission and provisioning

– Coordinate acts across domains Community-based Mediation

– Coordination for collective interest

9

Community Scheduling Example

Individual users– Require service

– Have application goals

Community schedulers– Broker service

– Aggregate scheduling

Individual resources– Provide service

– Have policy autonomy

– Serve above clients

R2 R3 R4 R5 R6R1

S1 S2

J1 J2 J3 J4 J5 J6 J7

T/BSLA

RSLA

10

Negotiation Phases Discovery

– “What resources are relevant to interest?”– Finds service providers

Monitoring– “What’s happening to them now?”– Compare service providers

Service-Level Agreement– “Will they provide what I need?”– The core Resource Management problem– Process can iterate due to adaptation

11

Service-Level Agreement

Three kinds of SLA– Task submission (do something)

– Resource reservation (pre-agreement)

– Lazy task/resource Binding (apply resv.) Simple protocol for negotiating SLAs

– Basic 2-party negotiation> Support for basic offer/accept pattern

> Optional counter-offer patterns

> Variable commitment phase for stricter promises

– Client may maintain multiple 2-party SLAs

12

Many Types of Service

Must support service heterogeneity– Resources

> Hardware: disks, CPU, memory, networks, display…

> Logical: accounts, services…

> Capabilities: space, throughput…

– Tasks> Data: stored file, data read/write

> Compute: execution, suspended/swapped job

SLAs bear embedded term languages– Isolate domain-specific details

13

Domain Extension: File Transfer

Single goal– Reliable deadline transfer

Specialized scheduler– Brokers basic services

– Synthesizes new service> Fault-handling logic

Distributed resources– Storage space

– Storage bandwidth

– Network bandwidth

R1 R3R2

J1

S1

J3J2

T/BSLA

RSLA

14

Technical Challenges

Complex Security Requirements Global Scalability

– Similar ideals to Internet

– Interoperable infrastructure

– Policy-configurable for social needs Permanence or “Evolve in Place”

– Cannot take World off-line for service

– Over time: upgrade, extend, adapt

– Accept heterogeneity

15

GRAM2 GRAM2 GRAM2

Job CPU Disk

Application

Domain-specific SLA

Incremental SLAs

Information Service

Localresourcemanagers

SLAimplementation

Planner

Concrete SLA

Coordinator

Monitor& Discover

GRAM Architecture

16

WS-Agreement

New standardization effort Generalizes GRAM ideas

– Service-oriented architecture

– Resource becomes Service Provider

– Tasks become Negotiated Services

– SLAs presented as Agreement services Still supports extensible domain terms

17

WS-Agreement Entities

Policy

Agreement

Ops:setTerminationTime(limits)findServiceData(query)...

SDEs:

status query

(negotiate)

Consumer

Terms Related

Application Service

StatusAgrmts.

(monitor)

(invoke)

Agreement Provider

Application Service Provider

?InitiatorAgreement

18

WS-Agreement Adds Management

Policy

Consumer 1 Application Service Provider 1

Appl. Service 1

(invoke)

Agreement Provider 1

(negotiate)

(monitor)

Initiator 1Agreement AgreementFactory

Agreement 1

S.T. R.A.

Agreement 2

S.T. R.A.

19

Virtualized Providers

Policy

AgreementFactory

AgreementFactory

Policy

Policy

Agreement 3

S.T. R.A.

Consumer 1

Agreement 1

S.T. R.A.

Agreement 2

S.T. R.A.

Application Service Provider 1

Agreement Provider 1

Application Service Provider 2

Agreement Provider 2

Appl. Service 1

Appl. Service 2

(negotiate)

(monitor)(d

epen

ds o

n)(composes)

(invoke)

(manage)

Initiator 1Agreement

(Consumer 2)

(Agreement Initiator 2)

20

Agreement-based Jobs

Agreement represents “queue entry”– Commitment with job parameters etc.

Agreement Provider– i.e. Job scheduler/Queuing system

– Management interface to service provider Service Provider

– i.e. scheduled resource (compute nodes) Service is the Job computation

21

Advance Reservation for Jobs Schedule-based commitment of service

– Requires schedule based SLA terms Optional Pre-Agreement (RSLA)

– Agreement to facilitate future Job Agreement

– Characterizes virtual resource needed for Job

– May not need full job terms Job Agreement almost as usual

– May exploit Pre-Agreement> Reference existing promise of resource schedule

– May get schedule commitment in one shot> Directly include schedule terms

> (Can think of as atomic advance reserve/claim)

22

Need for Complex Description 128 physical nodes

– Physical topology> Interconnect

> RAM, disk size

– Subject of RSLA

Single MPI job– Subject of TSLA

– May reference RSLAs

Quality requirements– Real-time parameters

> CPU, disk performance

– Subject of BSLA

net prog

mpi

128 node

ratio

2 cpu

size

ram

size rate

disk

23

MDS Resource Models (History)

OS info

OS info

CPUsdev group=

cpu 0dev=

CPU info CPU info

cpu 1dev=

diskdev group= netdev group=

eth0dev=/scratch1dev=VMdev=dev=RAM

software=OS

hn=hostname

dev group=memory

CPU info RAM info

VM infoCPU info NET info

DISK info

NET infoDISK info

NET infoDISK infoVM infoRAM info

VM info

RAM info

CPU info

CPU info

provider

aggregation

logical resource

24

Future Models

Service behavioral descriptions– Unified service term model

– Capture user/application requirements

– Capture provider capabilities Core meta-language

– Facilitates planner/decision designs

– Extends with domain concepts

– Extensible negotiability mark-up> Capture range of negotiability for variable terms

> Capture importance of terms (required/optional)

> Capture cost of options (fees/penalties)

25

SLA Types in Depth Resource SLA (RSLA), i.e. reservation

– A promise of resource availability> Client must utilize promise in subsequent SLAs

Task SLA (TSLA), i.e. execution– A promise to perform a task

> Complex task requirements

> May reference an RSLA (implicit binding)

Binding SLA (BSLA), i.e. claim– Binds a resource capability to a TSLA

> May reference an RSLA (otherwise obtain implicitly)

> May be created lazily to provision the task

26

Resource Lifecycle S0: Start with no SLAs S1: Create SLAs

– TSLA or RSLA

S2: Bind task/resource– Explicit BSLA

– Implicit provider schedule

S3: Active task– Resource consumption

Backtrack to S0– On task completion

– On expiration

– On failure

S0

S1

S2

S3

RSLA TSLA

setdeathagree

async

BSLA

active

27

Incremental Negotiation

RSLA: reserve resources for future use

SLAsUser goal Resource state

RSLA TSLA

BSLA

RSLA

BSLA

Resources change state due to SLAs and scheduler decisions

TSLA: submit task to scheduler BSLA: bind reservation to task

28

Linking SLAs for Complex Case

Dependent SLAs nest intrinsically– BSLA2 defined in terms of RSLA2 and TSLA4

Chained SLAs simplify negotiation– Optionally link destruction/reclamation

TSLA1

RSLA1

BSLA1

TSLA2

TSLA3

Sta

ge o

ut

Sta

ge in

time

BSLA2

RSLA2

TSLA4

Net

30 GB for /scratch/tmpuser1/foo/* files

Complex job

50 GB in /scratch filesystem

account tmpuser1

29

Related Work

Academic Contemporaries– Condor Matchmaking

– Economy-based Scheduling

– Work-flow Planning Commercial Scheduler Examples

– Many examples for traditional sites> Several generalized for “the enterprise”

– Platform Computing> LSF scaled to lots of jobs

> MultiCluster for site-to-site resource sharing

– IBM eWLM> Goal-based provisioning of transactional flows

30

Condor Matchmaking

At heart: a scheduling algorithm Heuristics for pairing job with resource

– Match symmetric “Classified Ads”

– Great for bulk/commodity matching Closed system view

– Subsumes resource through “lease”

– Sandboxed job environment

– Favor vertical integration over generality

– Tuned high-throughput system

32

Future Work

SLA interaction with policy– SLA negotiation subject to policy

> One SLA affects another, e.g. RSLA subdivision

> One client “more important” than another

– SLA implemented by low-level policies> Domain-specific SLA maps to resource SLAs

> Resource SLAs map to resource control mechanisms

Resource characterization– Advertisement of resources: options, cost

– Interoperable capability languages

33

Conclusion

Generic SLA management– Compositional for complex scenarios

– Extensible for unique requirements

– Requires work on Grid service modeling> To describe jobs, resource requirements, etc.

Enhancement to proven architectures– Encompasses GRAM+GARA

Evolution of the Globus Toolkit RM– GRAM evolving since 1997

– WS-Agreement standard in progress


Top Related