qos

package
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2022 License: Apache-2.0 Imports: 5 Imported by: 0

README

Overview

This folder holds some sample plugin implementations based on QoS (Quality of Service) class of Pods.

Maturity Level

  • 💡 Sample (for demonstrating and inspiring purpose)
  • 👶 Alpha (used in companies for pilot projects)
  • 👦 Beta (used in companies and developed actively)
  • 👨 Stable (used in companies for production workloads)

QOS QueueSort Plugin

Sorts pods by .spec.priority and breaks ties by the quality of service class. Specifically, this plugin enqueue the Pods with the following order:

  • Guaranteed (requests == limits)
  • Burstable (requests < limits)
  • BestEffort (requests and limits not set)

Documentation

Index

Constants

View Source
const Name = "QOSSort"

Name is the name of the plugin used in the plugin registry and configurations.

Variables

This section is empty.

Functions

func New

New initializes a new plugin and returns it.

Types

type Sort

type Sort struct{}

Sort is a plugin that implements QoS class based sorting.

func (*Sort) Less

func (*Sort) Less(pInfo1, pInfo2 *framework.QueuedPodInfo) bool

Less is the function used by the activeQ heap algorithm to sort pods. It sorts pods based on their priorities. When the priorities are equal, it uses the Pod QoS classes to break the tie.

func (*Sort) Name

func (pl *Sort) Name() string

Name returns name of the plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL