controller

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2023 License: Apache-2.0 Imports: 4 Imported by: 11

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CNCLifecycleConfig

type CNCLifecycleConfig struct{}

type CNRLifecycleConfig

type CNRLifecycleConfig struct{}

type ControllersConfiguration

type ControllersConfiguration struct {
	*VPAConfig
	*KCCConfig
	*SPDConfig
	*LifeCycleConfig
}

func NewControllersConfiguration

func NewControllersConfiguration() *ControllersConfiguration

type GenericControllerConfiguration

type GenericControllerConfiguration struct {
	// Controllers is the list of controllers to enable or disable
	// '*' means "all enabled by default controllers"
	// 'foo' means "enable 'foo'"
	// '-foo' means "disable 'foo'"
	// first item for a particular name wins
	Controllers []string

	// leaderElection defines the configuration of leader election client.
	LeaderElection componentbaseconfig.LeaderElectionConfiguration

	// A selector to restrict the list of returned objects by their labels. this selector is
	// used in informer factory.
	LabelSelector string

	// since many centralized components need a dynamic mechanism to
	// list-watch or get GYR from APIServer (such as autoscaling and
	// service-profiling), we use DynamicGVResources to define those GVRs
	DynamicGVResources []string
}

func NewGenericControllerConfiguration

func NewGenericControllerConfiguration() *GenericControllerConfiguration

type HealthzConfig added in v0.2.0

type HealthzConfig struct {
	DryRun        bool
	NodeSelector  labels.Selector
	AgentSelector map[string]labels.Selector

	// config for checking logic
	CheckWindow           time.Duration
	UnhealthyPeriods      time.Duration
	AgentUnhealthyPeriods map[string]time.Duration

	// config for handling logic
	HandlePeriod  time.Duration
	AgentHandlers map[string]string

	// config for disrupting logic
	TaintQPS                 float32
	EvictQPS                 float32
	DisruptionTaintThreshold float32
	DisruptionEvictThreshold float32
}

type KCCConfig

type KCCConfig struct {
	// ValidAPIGroupSet indicates the api-groups that kcc allows.
	ValidAPIGroupSet sets.String
}

func NewKCCConfig

func NewKCCConfig() *KCCConfig

type LifeCycleConfig

type LifeCycleConfig struct {
	EnableHealthz bool

	*CNRLifecycleConfig
	*CNCLifecycleConfig
	*HealthzConfig
}

func NewLifeCycleConfig

func NewLifeCycleConfig() *LifeCycleConfig

type ResourceRecommendConfig

type ResourceRecommendConfig struct {
	// time interval of resync VPA
	VPAReSyncPeriod time.Duration
}

type SPDConfig

type SPDConfig struct {
	// ReSyncPeriod controls the resync period to generate spd
	ReSyncPeriod time.Duration

	// SPDWorkloadGVResources define those SPD concerned GVRs
	SPDWorkloadGVResources []string

	// SPDPodLabelIndexerKeys are used
	SPDPodLabelIndexerKeys []string
}

func NewSPDConfig

func NewSPDConfig() *SPDConfig

type VPAConfig

type VPAConfig struct {
	// VPAWorkloadGVResources define those VPA concerned GVRs
	VPAWorkloadGVResources []string
	// SPDPodLabelIndexerKeys are used
	VPAPodLabelIndexerKeys []string
	// number of workers to sync VPA and VPARec
	VPASyncWorkers    int
	VPARecSyncWorkers int

	*VPARecommendationConfig
	*ResourceRecommendConfig
}

func NewVPAConfig

func NewVPAConfig() *VPAConfig

type VPARecommendationConfig

type VPARecommendationConfig struct {
}

Jump to

Keyboard shortcuts

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