config

package
v0.28.9 Latest Latest
Warning

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

Go to latest
Published: Apr 15, 2024 License: Apache-2.0 Imports: 5 Imported by: 2

Documentation

Overview

Package config of the API.

Index

Constants

This section is empty.

Variables

View Source
var (

	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: schedconfig.GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects

Functions

This section is empty.

Types

type CacheInformerMode added in v0.28.8

type CacheInformerMode string

CacheInformerMode is a "string" type

const (
	CacheInformerShared    CacheInformerMode = "Shared"
	CacheInformerDedicated CacheInformerMode = "Dedicated"
)

type CacheResyncMethod added in v0.26.7

type CacheResyncMethod string

CacheResyncMethod is a "string" type.

const (
	CacheResyncAutodetect             CacheResyncMethod = "Autodetect"
	CacheResyncAll                    CacheResyncMethod = "All"
	CacheResyncOnlyExclusiveResources CacheResyncMethod = "OnlyExclusiveResources"
)

type CoschedulingArgs

type CoschedulingArgs struct {
	metav1.TypeMeta

	// PermitWaitingTimeSeconds is the waiting timeout in seconds.
	PermitWaitingTimeSeconds int64
	// PodGroupBackoffSeconds is the backoff time in seconds before a pod group can be scheduled again.
	PodGroupBackoffSeconds int64
}

CoschedulingArgs defines the parameters for Coscheduling plugin.

func (*CoschedulingArgs) DeepCopy

func (in *CoschedulingArgs) DeepCopy() *CoschedulingArgs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CoschedulingArgs.

func (*CoschedulingArgs) DeepCopyInto

func (in *CoschedulingArgs) DeepCopyInto(out *CoschedulingArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*CoschedulingArgs) DeepCopyObject

func (in *CoschedulingArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ForeignPodsDetectMode added in v0.26.7

type ForeignPodsDetectMode string

ForeignPodsDetectMode is a "string" type.

const (
	ForeignPodsDetectNone                   ForeignPodsDetectMode = "None"
	ForeignPodsDetectAll                    ForeignPodsDetectMode = "All"
	ForeignPodsDetectOnlyExclusiveResources ForeignPodsDetectMode = "OnlyExclusiveResources"
)

type LoadVariationRiskBalancingArgs

type LoadVariationRiskBalancingArgs struct {
	metav1.TypeMeta

	// Common parameters for trimaran plugins
	TrimaranSpec
	// Multiplier of standard deviation in risk value
	SafeVarianceMargin float64
	// Root power of standard deviation in risk value
	SafeVarianceSensitivity float64
}

LoadVariationRiskBalancingArgs holds arguments used to configure LoadVariationRiskBalancing plugin.

func (*LoadVariationRiskBalancingArgs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadVariationRiskBalancingArgs.

func (*LoadVariationRiskBalancingArgs) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LoadVariationRiskBalancingArgs) DeepCopyObject

func (in *LoadVariationRiskBalancingArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LowRiskOverCommitmentArgs added in v0.26.7

type LowRiskOverCommitmentArgs struct {
	metav1.TypeMeta

	// Common parameters for trimaran plugins
	TrimaranSpec
	// The number of windows over which usage data metrics are smoothed
	SmoothingWindowSize int64
	// Resources fractional weight of risk due to limits specification [0,1]
	RiskLimitWeights map[v1.ResourceName]float64
}

LowRiskOverCommitmentArgs holds arguments used to configure LowRiskOverCommitment plugin.

func (*LowRiskOverCommitmentArgs) DeepCopy added in v0.26.7

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LowRiskOverCommitmentArgs.

func (*LowRiskOverCommitmentArgs) DeepCopyInto added in v0.26.7

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LowRiskOverCommitmentArgs) DeepCopyObject added in v0.26.7

func (in *LowRiskOverCommitmentArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type MetricProviderSpec

type MetricProviderSpec struct {
	// Types of the metric provider
	Type MetricProviderType
	// The address of the metric provider
	Address string
	// The authentication token of the metric provider
	Token string
	// Whether to enable the InsureSkipVerify options for https requests on Metric Providers.
	InsecureSkipVerify bool
}

Denote the spec of the metric provider

func (*MetricProviderSpec) DeepCopy

func (in *MetricProviderSpec) DeepCopy() *MetricProviderSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricProviderSpec.

func (*MetricProviderSpec) DeepCopyInto

func (in *MetricProviderSpec) DeepCopyInto(out *MetricProviderSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetricProviderType

type MetricProviderType string

MetricProviderType is a "string" type.

const (
	KubernetesMetricsServer MetricProviderType = "KubernetesMetricsServer"
	Prometheus              MetricProviderType = "Prometheus"
	SignalFx                MetricProviderType = "SignalFx"
)

type ModeType

type ModeType string

ModeType is a "string" type.

const (
	// Least is the string "Least".
	Least ModeType = "Least"
	// Most is the string "Most".
	Most ModeType = "Most"
)

type NetworkOverheadArgs added in v0.24.9

type NetworkOverheadArgs struct {
	metav1.TypeMeta

	// Namespaces to be considered by NetworkMinCost plugin
	Namespaces []string

	// Preferred weights (Default: UserDefined)
	WeightsName string

	// The NetworkTopology CRD name
	NetworkTopologyName string
}

func (*NetworkOverheadArgs) DeepCopy added in v0.24.9

func (in *NetworkOverheadArgs) DeepCopy() *NetworkOverheadArgs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkOverheadArgs.

func (*NetworkOverheadArgs) DeepCopyInto added in v0.24.9

func (in *NetworkOverheadArgs) DeepCopyInto(out *NetworkOverheadArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkOverheadArgs) DeepCopyObject added in v0.24.9

func (in *NetworkOverheadArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeResourceTopologyCache added in v0.26.7

type NodeResourceTopologyCache struct {
	// ForeignPodsDetect sets how foreign pods should be handled.
	// Foreign pods are pods detected running on nodes managed by a NodeResourceTopologyMatch-enabled
	// scheduler, but not scheduled by this scheduler instance, likely because this is running as
	// secondary scheduler. To make sure the cache is consistent, foreign pods need to be handled.
	// Has no effect if caching is disabled (CacheResyncPeriod is zero) or
	// if DiscardReservedNodes is enabled. If unspecified, default is "All".
	ForeignPodsDetect *ForeignPodsDetectMode
	// ResyncMethod sets how the resync behaves to compute the expected node state.
	// "All" consider all pods to compute the node state. "OnlyExclusiveResources" consider
	// only pods regardless of their QoS which have exclusive resources assigned to their
	// containers (CPUs, devices...).
	// Has no effect if caching is disabled (CacheResyncPeriod is zero) or if DiscardReservedNodes
	// is enabled. "Autodetect" is the default, reads hint from NRT objects. Fallback is "All".
	ResyncMethod *CacheResyncMethod
	// InformerMode controls the channel the cache uses to get updates about pods.
	// "Shared" uses the default settings; "Dedicated" creates a specific subscription which is
	// guaranteed to best suit the cache needs, at cost of one extra connection.
	// If unspecified, default is "Dedicated"
	InformerMode *CacheInformerMode
}

NodeResourceTopologyCache define configuration details for the NodeResourceTopology cache.

func (*NodeResourceTopologyCache) DeepCopy added in v0.26.7

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeResourceTopologyCache.

func (*NodeResourceTopologyCache) DeepCopyInto added in v0.26.7

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeResourceTopologyMatchArgs

type NodeResourceTopologyMatchArgs struct {
	metav1.TypeMeta

	// ScoringStrategy a scoring model that determine how the plugin will score the nodes.
	ScoringStrategy ScoringStrategy
	// If > 0, enables the caching facilities of the reserve plugin - which must be enabled
	CacheResyncPeriodSeconds int64
	// if set to true, exclude node from scheduling if there are any reserved pods for given node
	// this option takes precedence over CacheResyncPeriodSeconds
	// if DiscardReservedNodes is enabled, CacheResyncPeriodSeconds option is noop
	DiscardReservedNodes bool
	// Cache enables to fine tune the caching behavior
	Cache *NodeResourceTopologyCache
}

NodeResourceTopologyMatchArgs holds arguments used to configure the NodeResourceTopologyMatch plugin

func (*NodeResourceTopologyMatchArgs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeResourceTopologyMatchArgs.

func (*NodeResourceTopologyMatchArgs) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeResourceTopologyMatchArgs) DeepCopyObject

func (in *NodeResourceTopologyMatchArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeResourcesAllocatableArgs

type NodeResourcesAllocatableArgs struct {
	metav1.TypeMeta `json:",inline"`

	// Resources to be considered when scoring.
	// Allowed weights start from 1.
	// An example resource set might include "cpu" (millicores) and "memory" (bytes)
	// with weights of 1<<20 and 1 respectfully. That would mean 1 MiB has equivalent
	// weight as 1 millicore.
	Resources []schedconfig.ResourceSpec `json:"resources,omitempty"`

	// Whether to prioritize nodes with least or most allocatable resources.
	Mode ModeType `json:"mode,omitempty"`
}

NodeResourcesAllocatableArgs holds arguments used to configure NodeResourcesAllocatable plugin.

func (*NodeResourcesAllocatableArgs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeResourcesAllocatableArgs.

func (*NodeResourcesAllocatableArgs) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeResourcesAllocatableArgs) DeepCopyObject

func (in *NodeResourcesAllocatableArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PreemptionTolerationArgs

type PreemptionTolerationArgs schedconfig.DefaultPreemptionArgs

PreemptionTolerationArgs reuses DefaultPluginArgs.

func (*PreemptionTolerationArgs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PreemptionTolerationArgs.

func (*PreemptionTolerationArgs) DeepCopyInto

func (in *PreemptionTolerationArgs) DeepCopyInto(out *PreemptionTolerationArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PreemptionTolerationArgs) DeepCopyObject

func (in *PreemptionTolerationArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ScoringStrategy

type ScoringStrategy struct {
	// Type selects which strategy to run.
	Type ScoringStrategyType

	// Resources a list of pairs <resource, weight> to be considered while scoring
	// allowed weights start from 1.
	Resources []schedconfig.ResourceSpec
}

ScoringStrategy define ScoringStrategyType for node resource topology plugin

func (*ScoringStrategy) DeepCopy

func (in *ScoringStrategy) DeepCopy() *ScoringStrategy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScoringStrategy.

func (*ScoringStrategy) DeepCopyInto

func (in *ScoringStrategy) DeepCopyInto(out *ScoringStrategy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ScoringStrategyType

type ScoringStrategyType string

ScoringStrategyType is a "string" type.

const (
	// MostAllocated strategy favors node with the least amount of available resource
	MostAllocated ScoringStrategyType = "MostAllocated"
	// BalancedAllocation strategy favors nodes with balanced resource usage rate
	BalancedAllocation ScoringStrategyType = "BalancedAllocation"
	// LeastAllocated strategy favors node with the most amount of available resource
	LeastAllocated ScoringStrategyType = "LeastAllocated"
	// LeastNUMANodes strategy favors nodes which requires least amount of NUMA nodes to satisfy resource requests for given pod
	LeastNUMANodes ScoringStrategyType = "LeastNUMANodes"
)

type SySchedArgs added in v0.28.8

type SySchedArgs struct {
	metav1.TypeMeta

	// CR namespace of the default profile for all system calls
	DefaultProfileNamespace string

	// CR name of the default profile for all system calls
	DefaultProfileName string
}

func (*SySchedArgs) DeepCopy added in v0.28.8

func (in *SySchedArgs) DeepCopy() *SySchedArgs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SySchedArgs.

func (*SySchedArgs) DeepCopyInto added in v0.28.8

func (in *SySchedArgs) DeepCopyInto(out *SySchedArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SySchedArgs) DeepCopyObject added in v0.28.8

func (in *SySchedArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetLoadPackingArgs

type TargetLoadPackingArgs struct {
	metav1.TypeMeta

	// Common parameters for trimaran plugins
	TrimaranSpec
	// Default requests to use for best effort QoS
	DefaultRequests v1.ResourceList
	// Default requests multiplier for busrtable QoS
	DefaultRequestsMultiplier string
	// Node target CPU Utilization for bin packing
	TargetUtilization int64
}

TargetLoadPackingArgs holds arguments used to configure TargetLoadPacking plugin.

func (*TargetLoadPackingArgs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetLoadPackingArgs.

func (*TargetLoadPackingArgs) DeepCopyInto

func (in *TargetLoadPackingArgs) DeepCopyInto(out *TargetLoadPackingArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetLoadPackingArgs) DeepCopyObject

func (in *TargetLoadPackingArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TopologicalSortArgs added in v0.24.9

type TopologicalSortArgs struct {
	metav1.TypeMeta

	// Namespaces to be considered by TopologySort plugin
	Namespaces []string
}

func (*TopologicalSortArgs) DeepCopy added in v0.24.9

func (in *TopologicalSortArgs) DeepCopy() *TopologicalSortArgs

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TopologicalSortArgs.

func (*TopologicalSortArgs) DeepCopyInto added in v0.24.9

func (in *TopologicalSortArgs) DeepCopyInto(out *TopologicalSortArgs)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TopologicalSortArgs) DeepCopyObject added in v0.24.9

func (in *TopologicalSortArgs) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TrimaranSpec added in v0.24.9

type TrimaranSpec struct {
	// Metric Provider to use when using load watcher as a library
	MetricProvider MetricProviderSpec
	// Address of load watcher service
	WatcherAddress string
}

TrimaranSpec holds common parameters for trimaran plugins

func (*TrimaranSpec) DeepCopy added in v0.24.9

func (in *TrimaranSpec) DeepCopy() *TrimaranSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrimaranSpec.

func (*TrimaranSpec) DeepCopyInto added in v0.24.9

func (in *TrimaranSpec) DeepCopyInto(out *TrimaranSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Directories

Path Synopsis
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
Package v1beta3 is the v1beta3 version of the API.
Package v1beta3 is the v1beta3 version of the API.

Jump to

Keyboard shortcuts

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