polaris-slo-cloud / polaris-scheduler

SLO-aware Kubernetes scheduler for the Edge and Cloud

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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:

  1. Traffic Hazard Detection
  2. 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.

DOI

About

SLO-aware Kubernetes scheduler for the Edge and Cloud

License:Apache License 2.0


Languages

Language:Go 71.6%Language:Shell 23.1%Language:Makefile 2.9%Language:Dockerfile 1.3%Language:Python 1.1%