Upload
dominic-jennings
View
214
Download
0
Embed Size (px)
Citation preview
HPCHPCLL
High-Performance Computing Lab
Overview: Job Submission in EDG & Globus
November 2002
Wei Xing
HPCHPCLL
HPCHPCLL
High-Performance Computing Lab
Outline
1. Job Submission User Interface Architecture
2. Job Status
3. Job Submission Procedure
4. Interaction with RB, CE, LB
5. Job Submission in Globus
6. Pro-prototype of GB Portal Design
HPCHPCLL
HPCHPCLL
High-Performance Computing Lab
EDG: Job Submission User Interface Architecture (1)
● Motivation
Providing basic access functionality to WMS (Workload Management System) services.
● 4 interacting components of WMS
– the User Interface (UI), – the Resource Broker (RB), – the Job Submission Service (JSS), – and the Logging and Booking (LB) service.
HPCHPCLL
High-Performance Computing Lab
EDG: Job Submission User Interface Architecture (2)
UI
RB
L&B
JSSGlobus
GRAM
Here we are
list
dg-jobId
JSS-jobId
local Q
HPCHPCLL
High-Performance Computing Lab
Job submission: Job Status
● Job Status : During its lifetime, a job may go through following states, and triggered by 10 events.
User
Submitted Waiting Ready Scheduled
Cleared
Chkpt
Done
Aborted
Running
HPCHPCLL
High-Performance Computing Lab
A Job Submission Example
UIJDL
ResourceBroker
Job SubmissionService
StorageElement
ComputeComputeElementElement
Information Service
Job Status
ReplicaCatalogue
Job SubmitEvent
Input Sandbox
submitted
waiting
Ready
Brokerinfo
Scheduled
Input Sandbox
running
Output Sandbox
done
Job Status
Output Sandbox
cleared
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (UI)
● User client– Describe their jobs.– Submit their jobs.– Control the submitted jobs.– Monitor the status of the submitted jobs.– Get the output results.
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (UI)
● Job description with JDL. The general JDL format:
attribute = value;values can be of different types: numeric, string, booleans, timestamps etc.
➢ Some attributes are used to describe the tecnical characteristics of the job.
Executable = ''sim.exe'';StdInput = ''dataset.in''
➢ Others are used to specify requirements for a CE.Requirements = other.OpSys == ''RH 6.2'' && other Arch == ''INTEL'';
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (UI)
●Example of Hello World JDL file :
Executable = "/bin/echo";
Arguments = "Hello World !";
StdOutput = "Messagge.txt";
StdError = "stderr.log";
OutputSandbox = "Message.txt";
●User submission : dg-job-submit HelloWorld.jdl
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (UI)
● Job identifier (grid-wide unique identifier) among UI, RB, and LB.
<LBname>/<UIname>/<time>/<PID>/<RND>/<RBname>
http://evelyn.nas.nasa.gov:13196/ /**LB server name & port*/ firefox.esrlin.esa.it/ /** UI machine name */ 1234023967007/ /** 12340 UI machine time;
23967 UI process ID;
007 random number */
datagrid.esrin.esa.it /** RB hostname & port */
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (RB)
● Main task: Find the best suitable CE.– Direct job submission;
● UI contains a CEId● RB checks JDL syntax● Pass to JSS
– Job submission without data-access requirements;● Checks JDL syntax● RB starts the actual matchmaking algorithm to find the suitable Grid
resources matches the job requirements.● Pass to JSS
– Job submission with data-access requirements.● Checks JDL syntax● Interacts with RM services to find suitable CE & SE.● Pass to JSS
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (JSS)
● Job Submission Service (JSS) is responsible for the actual job management operations, in particular to manage the job submission and job removal requests, interacting with CE .– Job sumission:
● receives JDL sent to RB by UI.● builds a ''wrapper'' of the user job and assign a jss-
jobId to this wrapper job, insert it in a local quene. ● Performs the actual job submission to the chosen
remote CE.
HPCHPCLL
High-Performance Computing Lab
Job Submission Procedure (JSS)
● Job Removal– the RB requires the removal of a job;– the JSS receives a dg-jobId, finds the
correspondent jss-jobId;– inform the remote CE;– when it has been removed from CE, it is then
removed from the local quene. At last step, RB is notified.
HPCHPCLL
High-Performance Computing Lab
Interaction with RB, CE, LB
● JSS (server) listens the requests from RB (client) continously.
● JSS interact with CE to request submission/ removal of jobs, query the status of submitted jobs, be informed on the completion of jobs.
● JSS pushes some events to LB.– JobAcceptedEvent– JobRefusedEvent– ......
HPCHPCLL
High-Performance Computing Lab
Job Submission in Globus: GRAM & Globus
Grid SecurityInfrastructure
Job Manager
MDS client API callsto locate resources
Query current statusof resource
Create
RSL Library
Parse
RequestAllocate &
create processes
Process
Process
Process
Monitor &control
Client MDS: Grid Index Info Server
Gatekeeper
MDS: Grid Resource Info Server
Local Resource Manager
MDS client API callsto get resource info
GRAM client API statechange callbacks
HPCHPCLL
High-Performance Computing Lab
Pro-prototype of GB Portal Design
CG User
Portal Server
GB Request Servlet
GB Execute Servlet
Roaming AccessServernew GB request
history request
submitt job
cancel jobget GBparam
generateJDL
saveresult
generateHTML
GB XML Archives
Work Flow Diagram
JSS
HPCHPCLL
High-Performance Computing Lab
Use Case Diagram
HPCHPCLL
High-Performance Computing Lab
Class Definition & UML Diagram
● Waiting …. ---:)
HPCHPCLL
High-Performance Computing Lab
Thanks for Ur Patience
HPCHPCLL
High-Performance Computing Lab
● GASS/RSL Example● &(executable=https://quad:1234/~/myexe)
(stdin=https://quad:1234/~/myin) (stdout=/home/bester/output) (stderr=https://quad:1234/dev/stdout)
●