Skip to content

A performance workbench for Kubernetes batch schedulers and queue managers

License

Notifications You must be signed in to change notification settings

astefanutti/kube-schedulers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kube Schedulers

This project provides a workbench to test the performance of the Kubernetes scheduler, and other batch schedulers or queue managers, such as Kueue. It particularly focuses on testing how their performance scale w.r.t. the number of Nodes and batch Jobs, but also w.r.t. the Jobs parallelism, i.e. the number of Pods per Job.

The workbench includes these core components:

It also includes the following components as part of the SUT (System Under Test):

The performance are observed via the Prometheus metrics exposed by each component, and are made accessible via the dashboard_scheduling.yaml Grafana dashboard, e.g.:

Setup

You can set the workbench up by running the following command:

$ make setup

Note this also creates a KinD cluster currently, though it should be possible to deploy the workbench on any existing Kubernetes cluster.

Test

You can run the test for each individual component by running the commands listed below.

Kubernetes Scheduler

$ make test-kube-scheduler

Coscheduling Plugin

$ make test-coscheduling

Kueue

$ make test-kueue

About

A performance workbench for Kubernetes batch schedulers and queue managers

Resources

License

Stars

Watchers

Forks