v1alpha1

package
v0.29.0 Latest Latest
Warning

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

Go to latest
Published: Dec 23, 2023 License: Apache-2.0 Imports: 7 Imported by: 2

Documentation

Index

Constants

View Source
const (
	GroupName    = "deschedulercomponentconfig"
	GroupVersion = "v1alpha1"
)

GroupName is the group name use in this package

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)

	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion}

SchemeGroupVersion is group version used to register these objects

Functions

func Convert_componentconfig_DeschedulerConfiguration_To_v1alpha1_DeschedulerConfiguration

func Convert_componentconfig_DeschedulerConfiguration_To_v1alpha1_DeschedulerConfiguration(in *componentconfig.DeschedulerConfiguration, out *DeschedulerConfiguration, s conversion.Scope) error

Convert_componentconfig_DeschedulerConfiguration_To_v1alpha1_DeschedulerConfiguration is an autogenerated conversion function.

func Convert_componentconfig_TracingConfiguration_To_v1alpha1_TracingConfiguration added in v0.28.0

func Convert_componentconfig_TracingConfiguration_To_v1alpha1_TracingConfiguration(in *componentconfig.TracingConfiguration, out *TracingConfiguration, s conversion.Scope) error

Convert_componentconfig_TracingConfiguration_To_v1alpha1_TracingConfiguration is an autogenerated conversion function.

func Convert_v1alpha1_DeschedulerConfiguration_To_componentconfig_DeschedulerConfiguration

func Convert_v1alpha1_DeschedulerConfiguration_To_componentconfig_DeschedulerConfiguration(in *DeschedulerConfiguration, out *componentconfig.DeschedulerConfiguration, s conversion.Scope) error

Convert_v1alpha1_DeschedulerConfiguration_To_componentconfig_DeschedulerConfiguration is an autogenerated conversion function.

func Convert_v1alpha1_TracingConfiguration_To_componentconfig_TracingConfiguration added in v0.28.0

func Convert_v1alpha1_TracingConfiguration_To_componentconfig_TracingConfiguration(in *TracingConfiguration, out *componentconfig.TracingConfiguration, s conversion.Scope) error

Convert_v1alpha1_TracingConfiguration_To_componentconfig_TracingConfiguration is an autogenerated conversion function.

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns a Group qualified GroupKind

func RegisterConversions

func RegisterConversions(s *runtime.Scheme) error

RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type DeschedulerConfiguration

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

	// Time interval for descheduler to run
	DeschedulingInterval time.Duration `json:"deschedulingInterval,omitempty"`

	// KubeconfigFile is path to kubeconfig file with authorization and master
	// location information.
	// Deprecated: Use clientConnection.kubeConfig instead.
	KubeconfigFile string `json:"kubeconfigFile"`

	// PolicyConfigFile is the filepath to the descheduler policy configuration.
	PolicyConfigFile string `json:"policyConfigFile,omitempty"`

	// Dry run
	DryRun bool `json:"dryRun,omitempty"`

	// Node selectors
	NodeSelector string `json:"nodeSelector,omitempty"`

	// MaxNoOfPodsToEvictPerNode restricts maximum of pods to be evicted per node.
	MaxNoOfPodsToEvictPerNode int `json:"maxNoOfPodsToEvictPerNode,omitempty"`

	// EvictLocalStoragePods allows pods using local storage to be evicted.
	EvictLocalStoragePods bool `json:"evictLocalStoragePods,omitempty"`

	// IgnorePVCPods sets whether PVC pods should be allowed to be evicted
	IgnorePVCPods bool `json:"ignorePvcPods,omitempty"`

	// Tracing is used to setup the required OTEL tracing configuration
	Tracing TracingConfiguration `json:"tracing,omitempty"`

	// LeaderElection starts Deployment using leader election loop
	LeaderElection componentbaseconfig.LeaderElectionConfiguration `json:"leaderElection,omitempty"`

	// ClientConnection specifies the kubeconfig file and client connection settings to use when communicating with the apiserver.
	// Refer to [ClientConnection](https://pkg.go.dev/k8s.io/kubernetes/pkg/apis/componentconfig#ClientConnectionConfiguration) for more information.
	ClientConnection componentbaseconfig.ClientConnectionConfiguration `json:"clientConnection,omitempty"`
}

func (*DeschedulerConfiguration) DeepCopy added in v0.4.0

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

func (*DeschedulerConfiguration) DeepCopyInto added in v0.4.0

func (in *DeschedulerConfiguration) DeepCopyInto(out *DeschedulerConfiguration)

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

func (*DeschedulerConfiguration) DeepCopyObject added in v0.4.0

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

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

type TracingConfiguration added in v0.28.0

type TracingConfiguration struct {
	// CollectorEndpoint is the address of the OpenTelemetry collector.
	// If not specified, tracing will be used NoopTraceProvider.
	CollectorEndpoint string `json:"collectorEndpoint"`
	// TransportCert is the path to the certificate file for the OpenTelemetry collector.
	// If not specified, provider will start in insecure mode.
	TransportCert string `json:"transportCert,omitempty"`
	// ServiceName is the name of the service to be used in the OpenTelemetry collector.
	// If not specified, the default value is "descheduler".
	ServiceName string `json:"serviceName,omitempty"`
	// ServiceNamespace is the namespace of the service to be used in the OpenTelemetry collector.
	// If not specified, tracing will be used default namespace.
	ServiceNamespace string `json:"serviceNamespace,omitempty"`
	// SampleRate is used to configure the sample rate of the OTEL trace collection. This value will
	// be used as the Base value with sample ratio. A value >= 1.0 will sample everything and < 0 will
	// not sample anything. Everything else is a percentage value.
	SampleRate float64 `json:"sampleRate"`
	// FallbackToNoOpProviderOnError can be set in case if you want your trace provider to fallback to
	// no op provider in case if the configured end point based provider can't be setup.
	FallbackToNoOpProviderOnError bool `json:"fallbackToNoOpProviderOnError"`
}

func (*TracingConfiguration) DeepCopy added in v0.28.0

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

func (*TracingConfiguration) DeepCopyInto added in v0.28.0

func (in *TracingConfiguration) DeepCopyInto(out *TracingConfiguration)

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

Jump to

Keyboard shortcuts

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