Title: CSF4 MetaScheduler
1CSF4 Meta-Scheduler
- Zhaohui Ding
- Zhaohui.ding_at_email.jlu.edu.cn
- College of Computer Science Technology
- Jilin University
2Agenda
- What is Meta-Scheduler
- What is CSF
- CSF4 Architecture
- Integrate CSF4 and Gfarm
- Demo Practice
- Future Work
3What is Meta-Scheduler
CSF4
GRAM
4Meta-Scheduler VS Local Scheduler
- Local Scheduler
- For Cluster Environment
- Same Hardware Architecture, OS
- Typically different Resource Management softwares
(RMs) like LSF, PBS, and Sun Grid Engine are
responsible for load balancing and resource
sharing within each local administrative domain. - Meta-Scheduler
- For Grid Environment
- Different Hardware, OS, Infrastructure, Local
Scheduler, Resource Manager - In a Grid-computing environment, there is a
common requirement for users to query, negotiate
access and manage resources existing within
different administrative domains at Grid level.
The meta-scheduler is designed to perform such
global wide policies.
5Meta-Scheduler and Local Scheduler in Grid
6CSF4 Summary
- What is CSF
- Community Scheduler Framework
- CSF4 is a group of grid services host in GT4
- CSF4 is the first GT4-WSRF compliant
Meta-Scheduler - Open Source project and can be accessed at
http//sourceforge.net/projects/gcsf - The development team of CSF4 is from Jilin
University, PRC - CSF4 has been added to Globus Toolkit 4 as an
Execution Component
7CSF4 in Globus Toolkit 4
8CSF4 Architecture
9CSF4 Functionalities
- Submit, control and monitor jobs at a grid level.
- Queue Service for jobs is provided
- Choose satisfied cluster for jobs automatically
- Create and manage advanced reservations for LSF
cluster.
10CSF4 FunctionalitiesResource Supported
- Infrastructure Supported
- WS GRAM (GT4 GRAM)
- Pre-WS GRAM (GT2 GRAM)
- Local Scheduler Supported
- LSF (support advanced reservation)
- PBS
- SGE
- Condor
11CSF4 Functionalities Scheduling Policy
Framework
- A scheduling policy framework is provided so that
site and user specific scheduling policies can be
implemented regardless of the underlying resource
manager. - User can configure scheduling policies for queue,
and even write a new scheduling policy as a
plug-in without modify the source codes of CSF4.
12Existent Scheduling Policies Plug-in
- FCFS plugin
- First Come First Serve
- Default policy
- always loaded by CSF
- Throttle plugin
- An optional plugin
- Constraint the number of jobs lunched in one
scheduling cycle
13Schedule plugin scheduling policies
- Scheduling polices are defined in a queue
- Each policy is implemented inside a scheduling
plugin module - A queue can load multiple plugin modules
14CSF4 Functionalities (cont.)Deploy CSF4 in a
Grid Community
- Multiple CSF4s Can Exchange Cluster Information
Each Other
15Deploy CSF4 in a Grid Community
16Integration of CSF4 Gfarm
A Scalable Grid Infrastructure For Data Intensive
Applications
17Integration of CSF4 Gfarm
gfsd
host1
host3
host2
host5
host4
- Regardless of where the data is locate
18How to get CSF4?
- Release Page (Recommended)
- http//sourceforge.net/project/showfiles.php?group
_id103105 - CVS
- http//sourceforge.net/cvs/?group_id103105
- Globus Toolkit 4 Package
- In contrib directory
19Installation
- Requried Software
- Globus Tookit 4
- gpt-build csf-4.0.1-src.tar.gz
- gpt-postinstall
20Configure Meta-Scheduler
- Edit GLOBUS_LOCATION/etc/metascheduler/metaschedu
ler-config.xml - Example
21Configure Resource
- Edit GLOBUS_LOCATION/etc/metascheduler/resourcema
nager-config.xml - Example
- ltclustergt
- ltnamegt sge-32 lt/namegt
- lttypegt GRAM lt/typegt
- lthostgt rocks-32.sdsc.edu/jobmanager-sge lt/hostgt
- ltportgt 2119 lt/portgt
- ltversiongt2.4lt/versiongt
- lt/clustergt
22Services started by GT4 container (cont.)
- globus_at_rocks-32 gt4 globus-start-container
- 1 https//198.202.88.328443/wsrf/services/Trig
gerFactoryService - 2 https//198.202.88.328443/wsrf/services/Dele
gationTestService - 9 https//198.202.88.328443/wsrf/services/met
ascheduler/QueuingService - .
- 16 https//198.202.88.328443/wsrf/services/met
ascheduler/ResourceManagerFactoryService -
- 23 https//198.202.88.328443/wsrf/services/met
ascheduler/ReservationService - 25 https//198.202.88.328443/wsrf/services/Ind
exFactoryService - 26 https//198.202.88.328443/wsrf/services/Rel
iableFileTransferService -
- 47 https//198.202.88.328443/wsrf/services/met
ascheduler/ResourceManagerLsfService -
- 49 https//198.202.88.328443/wsrf/services/met
ascheduler/JobService - 56 https//198.202.88.328443/wsrf/services/Man
agedJobFactoryService
23Demo Practice
- Before testing
- grid-proxy-init
- cp zding/practice/ .
- scp zding/practice/ USER_at_rocks-170
24Demo 1 Query Available Cluster
25Demo 2 Submit WS GRAM job
- csf-job-create rsl job.xml -name zding_job1
- csf-job-submit zding_job1
- content of job.xml
- ltjobgt
- ltexecutablegt/bin/echolt/executablegt
- ltdirectorygtGLOBUS_USER_HOMElt/directorygt
- ltargumentgtthis is a globusrun-ws
samplelt/argumentgt - ltstdoutgtstdoutlt/stdoutgt
- lt/jobgt
- csf-job-data zding_job1
- cat /stdout
26Demo 3Submit pre-ws gram job
- csf-job-create rsl job.rsl name zding_job2
- csf-job-submit zding_job2
- content of job.rsl
- (executable/bin/echo)
- (directory(HOME))
- (arguments"this is a globurun example")
- (stdoutstdout2)
- csf-job-data zding_job2
- cat stdout2
27Demo 4Submit job with CSF4 Gfarm
- Application MEME353
- csf-job-create rsl job3.rsl name zding_job3
- csf-job-submit zding_job3
- csf-job-data zding_job3
- gfarmfs lsfu /gfs/USER -o kernel_cache
- ls ltr /gfs/USER/USER
28Demo 5Submit multiple jobs to CSF4
- for i in 1 2 3 4 do echo i csf-job-create
-rsl job4.rsl -name jobi done - for i in 1 2 3 4 do echo i csf-job-submit
jobi done - for i in 1 2 3 4 do echo i csf-job-data
jobi done - qstat
29Future Work
- CSF4 Portlet
- Base on GridSphere
- CSF4 Opal Integration
- Opal Wrapping Scientific Applications as Web
Services - Implement data-aware scheduling policy in CSF4
- Scheduling policy for data intensive application
- Improve the performance
- Workflow supported
30Thank you