polaris-scheduler
polaris-scheduler copied to clipboard
SLO-aware Kubernetes scheduler for the Edge and Cloud
Polaris Scheduler
Polaris Scheduler is an SLO-aware Kubernetes scheduler.
Note: The distributed, orchestrator-independent version of Polaris Scheduler (originally called polaris-scheduler v2) has been forked into a new project, called Vela Scheduler and this repository has been reset to the Polaris Scheduler v1 state.
Documentation
The documentation for the polaris-scheduler is available in the docs folder.
Repository Organization
| Directory | Contents |
|---|---|
deployment |
YAML files to perform an all-in-one deployment |
docs |
Documentation files (Work in progress) |
go/orchestration |
CRDs (ServiceGraph, node topology) |
go/scheduler |
polaris-scheduler |
Deployment
You must have a Kubernetes v1.21+ cluster available and configured in your KUBECONFIG file. To deploy the polaris-scheduler, open a terminal in the root folder of this repository and execute the following:
kubectl apply -f ./deployment
This deploys the following components:
- polaris-scheduler
- Service Graph CRD
- Node Topology CRDs
Experiments
This repository contains the following experiments for benchmarking Polaris Scheduler:
- Traffic Hazard Detection
- Traffic Monitoring and Hazard Detection
Acknowledgement
Polaris-scheduler is a fork of the rainbow-scheduler and corresponding CRDs from the orchestration repository of the RAINBOW project.