CSF4 Meta-Scheduler Name: Zhaohui Ding, Xiaohui Wei College of Computer Science & Technology Jilin University
2 Agenda Meta-Scheduler & CSF4 Introduction CSF4 Architecture CSF4 Functionalities Future Work Demo and Practice
3 What is Meta-Scheduler Resource Allocation & Management Heterogeneous Heterogeneous Distributed Distributed Dynamic Dynamic Local Scheduler VS Meta-scheduler
4 Local Scheduler VS Meta-Scheduler Local Scheduler Meta Scheduler Administrative scope Cluster, Single Domain Grid, Multiple Domains, Virtual Organizations Hardware & Software (OS) HomogeneousHeterogeneousOS-independent Data management LAN file system (NFS, FTP, scp) Global file system (Gridftp, Gfarm) Certificates management Not supported Supported Resource Management Protocol Specified, Private Protocols for different local scheduler Standard, Open, General- Purpose Protocols (GRAM) Scheduling mode Centralized Centralized / Distributed
5 Meta-Scheduler VS Local Scheduler Local Scheduler LSF (Load Sharing Facility) LSF (Load Sharing Facility) PBS (Portable Batch System) PBS (Portable Batch System) SGE (Sun Grid Engine) SGE (Sun Grid Engine) Condor Condor IBM Loadleveler IBM LoadlevelerMeta-Scheduler CSF CSF Maui (Silver) Maui (Silver) Gridway Gridway Nimrod-G Nimrod-G Condor-G Condor-G
6 What is CSF4 What is CSF Meta-Scheduler Full Name: Community Scheduler Framework Full Name: Community Scheduler Framework CSF4 contains a group of grid services host in GT4 CSF4 contains a group of grid services host in GT4 CSF4 is a full WSRF compliant meta-scheduler. CSF4 is a full WSRF compliant meta-scheduler. Open Source project and can be accessed at Open Source project and can be accessed at Developed by Jilin University, China Developed by Jilin University, China CSF4 has been added to Globus Toolkit 4 as an Execution Component CSF4 has been added to Globus Toolkit 4 as an Execution Component
7 CSF4 in Globus Toolkit 4
8 Meta-Scheduler VS Local Scheduler A typical deployment for Meta-Scheduler and Local Schedulers
9 What CSF4 Can Do? Basic Functionalities Submit jobs to Grid without Specifying Cluster Submit jobs to Grid without Specifying Cluster Monitor and Control Jobs Monitor and Control Jobs Provide Queuing Service Provide Queuing Service Schedule jobs and resource by custom-built polices Schedule jobs and resource by custom-built polices CSF4 Portlet (A Web browser based User Interface) CSF4 Portlet (A Web browser based User Interface)
10 What CSF4 Can Do? (cont.) Advanced Functionalities Multiple Domains Resource Information Sharing Multiple Domains Resource Information Sharing Automatic user credentials delegation Automatic user credentials delegation Automatic data-staging Automatic data-staging Extensible scheduling policies Extensible scheduling policies Supporting grid parallel jobs (MPICH-G2) Supporting grid parallel jobs (MPICH-G2)
11 CSF4 – Architecture
12 CSF4 – Architecture User view
13 CSF4 – Architecture ( cont. ) Resource View NOTE: One RM Gram is for one cluster only Localclusters
14 CSF4 – Functionalities Local Scheduler Supported LSF LSF PBS PBS SGE SGE Condor Condor Infrastructure Supported Globus Toolkit 4 Globus Toolkit 4 Globus Toolkit 2 Globus Toolkit 2
15 CSF4 – Functionalities Scheduling Plug-in Framework Designed For Queuing Service Provide A set of policies CustomizableExtensible
16 Existent Scheduling Policies FCFS (First Come First Serve) round-robin Default policy Default policyThrottle Restrict the number of jobs in a scheduling cycle Restrict the number of jobs in a scheduling cycle Array Job Plug-in Design for life science applications (such as AutoDock, BLAST) Design for life science applications (such as AutoDock, BLAST) MPICH-G2 Plug-in By using VJM, the plug-in guarantee the synchronized resource allocation can be successful By using VJM, the plug-in guarantee the synchronized resource allocation can be successful Data intensive applications plug-in (under-developing)
17 Schedule plug-in & scheduling policies Each policy is implemented inside a scheduling plugin module Each policy is implemented inside a scheduling plugin module A queue can load multiple plugin modules A queue can load multiple plugin modules
18 Array Job AutoDock and Blast-like applications A large number of sub-jobs. A large number of sub-jobs. Execute same binary Execute same binary Different input/output files Different input/output files
19 Array Job (cont.) Advantages Submit job only once Submit job only once Save submission time and memory storage Save submission time and memory storage
20 Resource Information Sharing A MDS information provider for CSF4 Multiple CSF4 can share the resource information
21 CSF4 – Functionalities (cont.) Deploy Multiple CSF4 in a Grid Community Deploy Multiple CSF4 in a Grid Community
22 Automatic user credential delegation GT4 Delegation Service GT4 Delegation Service Full/Limited Delegation Full/Limited Delegation User Credential Delegation
23 Automatic user credential delegation
24 Data Staging Manual Data Staging Which clusters I can use? Which clusters I can use? Which clusters my jobs will running on? Which clusters my jobs will running on? Where is the output data? Where is the output data? When will the job finish, so that I can stage- out the output data? When will the job finish, so that I can stage- out the output data?
25 Automatic Data Staging Stage-in and Stage-out without Meta-Scheduler
26 Automatic Data Staging With CSF4 Automatic Data Staging
27 CSF4 – User interface ( cont.) Command line interface - Services available for grid users: JobService JobService csf-job-create, csf-job-start, csf-job-submit, csf-job-status, csf-job-stop, csf-job-resume, csf-job-list, csf-resource-list, csf-mpi-run ReservationService ReservationService csf-rsv-create, csf-rsv-status, csf-rsv-cancel csf-job-submit, … QueuingService QueuingService csf-queue-create, csf-queue-conf, csf-queue-data
28 CSF4 Portlet Web Browser based Interface Friendly interface
29 View Available Clusters
30 Submit a job
31 View Jobs history
32 View Job output
33 How to get CSF4? Homepage: Release Version (Recommended) : = = = = Developing Version (CVS, the newest but not stable) Globus Toolkit 4 Package : In “contrib” directory In “contrib” directory
34 Future Work Plug-in Framework Improvement More scheduling policies More scheduling policies Optimize for Parallel Job Optimize for Data intensive job Workflow supported Workflow supported
35 Practices View Credential Info Query Available Resource Submit A Simple Job Submit An Array Job Query Jobs History View Job Output
36 Thank you