yunikorn

package
v1.2.2 Latest Latest
Warning

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

Go to latest
Published: Sep 29, 2024 License: Apache-2.0, BSD-2-Clause, MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SchedulerName                       string = "yunikorn"
	YuniKornPodApplicationIDLabelName   string = "applicationId"
	YuniKornPodQueueLabelName           string = "queue"
	RayClusterApplicationIDLabelName    string = "yunikorn.apache.org/app-id"
	RayClusterQueueLabelName            string = "yunikorn.apache.org/queue"
	YuniKornTaskGroupNameAnnotationName string = "yunikorn.apache.org/task-group-name"
	YuniKornTaskGroupsAnnotationName    string = "yunikorn.apache.org/task-groups"
)

Variables

This section is empty.

Functions

func GetPluginName

func GetPluginName() string

Types

type TaskGroup added in v1.2.2

type TaskGroup struct {
	MinResource               map[string]resource.Quantity      `json:"minResource"`
	NodeSelector              map[string]string                 `json:"nodeSelector,omitempty"`
	Affinity                  *corev1.Affinity                  `json:"affinity,omitempty"`
	Name                      string                            `json:"name"`
	TopologySpreadConstraints []corev1.TopologySpreadConstraint `json:"topologySpreadConstraints,omitempty"`
	Tolerations               []corev1.Toleration               `json:"tolerations,omitempty"`
	MinMember                 int32                             `json:"minMember"`
}

TaskGroup is the struct for yunikorn to consider a pod belongs to a gang group the original schema is defined here: https://github.com/apache/yunikorn-k8shim/blob/master/pkg/cache/amprotocol.go

type TaskGroups added in v1.2.2

type TaskGroups struct {
	Groups []TaskGroup `json:"groups"`
}

TaskGroups is a list of task Groups recognized as gang Groups

type YuniKornScheduler

type YuniKornScheduler struct {
	// contains filtered or unexported fields
}

func (*YuniKornScheduler) AddMetadataToPod

func (y *YuniKornScheduler) AddMetadataToPod(app *rayv1.RayCluster, groupName string, pod *corev1.Pod)

AddMetadataToPod adds essential labels and annotations to the Ray pods the yunikorn scheduler needs these labels and annotations in order to do the scheduling properly

func (*YuniKornScheduler) DoBatchSchedulingOnSubmission

func (y *YuniKornScheduler) DoBatchSchedulingOnSubmission(_ context.Context, _ *rayv1.RayCluster) error

func (*YuniKornScheduler) Name

func (y *YuniKornScheduler) Name() string

type YuniKornSchedulerFactory

type YuniKornSchedulerFactory struct{}

func (*YuniKornSchedulerFactory) AddToScheme

func (yf *YuniKornSchedulerFactory) AddToScheme(_ *runtime.Scheme)

func (*YuniKornSchedulerFactory) ConfigureReconciler

func (yf *YuniKornSchedulerFactory) ConfigureReconciler(b *builder.Builder) *builder.Builder

func (*YuniKornSchedulerFactory) New

Jump to

Keyboard shortcuts

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