resource selection services for a single job execution soonwook hwang national institute of...
DESCRIPTION
What are the OGSA-EMS Problems? According to the OGSA Architecture v1.0 documents –Finding execution candidate locations (CSG) What are the locations at which a job can execution? –Selecting execution location (EPS) Once where a job can execute is known, where should it actually run? –Preparing for execution (the focus of ACS and CDDLM-WG) Deployment and configuration of binaries and libraries, staging data –Initiating and managing the execution (the focus of BES- WG)TRANSCRIPT
Resource Selection Services for a Single Job Execution
Soonwook HwangNational Institute of Informatics/NAREGI
OGSA F2F RSS SessionSunnyvale, CA, US
Aug 15, 2005
ProvisioningDeploymentConfiguration
Information Services
ServiceContainer
Data Container
Accounting Services
Execution Planning Services
Candidate Set Generator (Work -Resource mapping)
Job Manager
Reservation
RSS Services to be defined
What are the services OGSA-RSS wants to define?
What are the OGSA-EMS Problems?
• According to the OGSA Architecture v1.0 documents– Finding execution candidate locations (CSG)
• What are the locations at which a job can execution?– Selecting execution location (EPS)
• Once where a job can execute is known, where should it actually run?
– Preparing for execution (the focus of ACS and CDDLM-WG)• Deployment and configuration of binaries and libraries,
staging data– Initiating and managing the execution (the focus of BES-
WG)
RSS Problems: Essential, but Challenging
• Defining the interfaces and protocols of the OGSA Resource Selection Services (RSS) is an integral part of the OGSA-EMS architecture, but seems to be very challenging – Interactions with many other OGSA EMS components
• Job Manger (JM), Information Service (IS), Service Container (SC) , Reservation Service (RS) , etc
– Various job types• Single, atomic job• A set of jobs w/o dependency
– e.g., embarrassingly-parallel applications• A set of jobs w/ dependency
– e.g., workflows
Let’s focus on a simple case to identify some interactions between RSS and other EMS Services
• Focusing on resource selection services for the execution of a single, atomic job – A single job that exactly fits into the JSDL v1.0
spec– Not considering complex jobs such as workflows
and embarrassingly parallel applications• JSDL v1.0 specification
– Job identification requirements– Resource requirements– Data requirements
Resource Selection Scenarios
1. JM sends to EPS a JSDL document with a job’s resource requirements written in it
2. EPS hands off the JSDL document to CSG3. CSG creates a candidate set of resources,
returning it to EPS– CSG looks up the Information Service to find resources
that match the job’s resource requirements4. EPS selects the best one among the candidate
resources – EPS perhaps uses some selection policy to select the
best one5. JM submit the JSDL document to the se
Interactions between RSS and other EMS Services
EPS
CSG
Info ServiceService Container
Job Manager
User submits job as abstract JSDLdocument along with selection policy
CSG mightinteract withSC directly
SC publishes information about resource attributes
• Concretized JSDLConcretized JSDL
• Candidate EPRsCandidate EPRs
• Concrete JSDLConcrete JSDL
• EPR to the SCEPR to the SC
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
①①
②②
③③
④④
⑤⑤ ⑥⑥
⑦⑦
Concrete Concrete JSDLJSDL
Abstract Abstract JSDLJSDL
Abstract and Concrete JSDL
• Abstract JSDL– a JSDL document where some of elements
necessary for initiating the execution of a job have yet to be filled
• E.g., a JSDL document with no hostname specified in it
• Concrete JSDL– a self-sufficient JSDL document for job
execution
Job Manager (JM)
• Responsible for managing and controlling of jobs during their entire lifetime
• Submits jobs described in a JSDL document to a Service Container which the EPR returned from EPS points to– uses the protocol and interfaces defined in the
OGSA BES specification
Information Service (IS)
• A placeholder to keep attributes metadata about resources
• Service Containers publish their resource attributes along with their own EPRs to IS– Static information
• Architecture, OS version, Hostname, etc – Dynamic information
• CPU load, Queue length, etc
Candidate Set Generator (CSG)
• Performs a simple, dumb matchmaking with the IS to identify a list of container services that have resource capabilities that meet the job’s resource requirements
• Concretizes the abstract input JSDL document using resource information retrieved from the IS– e.g., might fill in the “CandidateHost” element
• Passes EPRs to candidate hosts and the more concretized JSDL document back to EPS
• Discussion– Should CSG be dumb or intelligent?
• E.g., Should selection policy be reflected in CSG as well when CSG locating candidate resources?
Execution Planning Service (EPS)
• Select the best one among the candidate resources sent from CSG
• If needed (?), may want to interact with the IS to get additional resource information that could be used to more concretize the JSDL document returned from CSG
• Uses the selection policy which is given as input to select the best one
• Discussion– Is it a good idea to allow EPS to interact with IS as well?– What kinds of selection policies should be considered?– Where should selection policy be put, EPS, or CSG, or both?
Selection Policy
• Some user preference or priority to be allowed to put on each of resource requirements specified in the JSDL document– e.g., Condor ClassAD
• Some objective function – e.g., minimum execution time, lowest cost, reservation, etc
• Application-specific selection algorithm• Discussion
– Is working on the Condor ClassAD-like user preference mechanism within this OGSA-RSS-WG as an example of selection policy worth trouble to do?
Reservation Service (RS)
• Will probably reside on local resources, directly interacting with local schedulers (e.g., maui, PBSPro) to get and manage reservations on locally reservable resources
• Will probably provide a common interface– “MakeReservation” – “CancelReservation”
• Maybe some advanced service container could act as the RS by providing such a common reservation interface
Reservation as Selection Policy
EPS
CSG
Info ServiceService Container
Job Manager
User submits job as abstract JSDLdocument along with selection policy
SC publishes information about resource attributes
• Concretized JSDLConcretized JSDL
• Candidate EPRsCandidate EPRs
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
①①
②②
③③
④④
⑤⑤ ⑥⑥
⑦⑦
RS
• Concrete JSDLConcrete JSDL
• EPR to the SCEPR to the SC(w/ Reservation)
Make Reservation from 21:00 Make Reservation from 21:00 – 23:00 August 15, 2005– 23:00 August 15, 2005
Concrete Concrete JSDLJSDL
Abstract Abstract JSDLJSDL
EPS makes reservations
EPS
CSG
Info ServiceService Container
Job Manager
User submits job as abstract JSDLdocument along with selection policy
SC publishes information about resource attributes
• Concretized JSDLConcretized JSDL
• Candidate EPRsCandidate EPRs
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
①①
②②
③③
④④
⑤⑤ ⑥⑥
⑦⑦
RS
EPS mak
es re
serva
tion(s
)
• Concrete JSDLConcrete JSDL
• EPR to the SCEPR to the SC(w/ Reservation)
Make Reservation from 21:00 Make Reservation from 21:00 – 23:00 August 15, 2005– 23:00 August 15, 2005
Concrete Concrete JSDLJSDL
Abstract Abstract JSDLJSDL
CSG makes reservations
EPS
CSG
Info ServiceService Container
Job Manager
User submits job as abstract JSDLdocument along with selection policy
• Concretized JSDLConcretized JSDL
• Candidate EPRsCandidate EPRs
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
①①
②②
③③
④④
⑤⑤ ⑥⑥
⑦⑦
RS
CSG makes reservations
• Concrete JSDLConcrete JSDL
• EPR to the SCEPR to the SC(w/ Reservation)
(w/ Reservation)
Make Reservation from 21:00 Make Reservation from 21:00 – 23:00 August 15, 2005– 23:00 August 15, 2005
Concrete Concrete JSDLJSDL
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
EPS confi
rms r
eserv
ation
(s)
Make Reservation Make Reservation from 21:00 – 23:00 from 21:00 – 23:00 August 15, 2005August 15, 2005
Discussions on Reservation Service
• Which one should interact with the RS, EPS, or CSG, or perhaps JM?– How about some kind of a global RS that
interacts with the local RS to make reservation on behalf of either ESP or CSG?
• How does the RS have an effect on the design of EPS and CSG?
Summery of Discussion Topics
• Should CSG perform a simple matchmaking or have some intelligence in locating available resources?
• Is it a good idea to allow EPS to interact with IS as well e.g., to have it concretize the input JSDL document? Is there any use case for this?
• What kinds of selection policy should be considered?• Where should selection policy be put, only EPS, or CSG as well? • Is working on the Condor ClassAD-like user preference mechanism as
an example of selection policy worth trouble to do? • Which one should interact with the local RS, EPS or CSG?• Is it a good idea to regard Reservation as a selection policy?• How about some global reservation service? Do we need it? How
does it affect the interface design of EPS and CSG?• In General, how the RS affect on the design of EPS and CSG?• Any other important issues to discuss together?
Thank you
What is the Architecture
EPS
CSG
Info ServiceService Container
Job Manager Reservation Service
User submits jobas JSDL document
CSG gets potentialatomic reservationsfrom reservationservice
CSG retrieves service info(info model not important)
Job Manager asksEPS where to run
EPS asks CSG forcandidate executionplans (concretized JSDL)
EPS commits thereservation(s) to be used
CSG mightinspectservice
containersdirectly
Service container publishes information about itself
JM makes reservations
EPS
CSG
Info ServiceService Container
Job Manager
User submits job as abstract JSDLdocument along with selection policy
SC publishes information about resource attributes
Abstract Abstract
JSDLJSDL
• Concretized JSDLConcretized JSDL
• Candidate EPRsCandidate EPRs Concrete Concrete
JSDLJSDL
• Abstract JSDLAbstract JSDL
• Selection PolicySelection Policy
①①
②②
③③
④④
⑤⑤
⑦⑦
RS
JM m
akes reservations
• Concrete JSDLConcrete JSDL
• EPS to the SCEPS to the SC
⑥⑥