v1alpha1

package
v0.4.2 Latest Latest
Warning

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

Go to latest
Published: Jan 22, 2022 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the redhatcop v1alpha1 API group +kubebuilder:object:generate=true +groupName=redhatcop.redhat.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "redhatcop.redhat.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type NodeScalingWatermark

type NodeScalingWatermark struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NodeScalingWatermarkSpec   `json:"spec,omitempty"`
	Status NodeScalingWatermarkStatus `json:"status,omitempty"`
}

NodeScalingWatermark is the Schema for the nodescalingwatermarks API

func (*NodeScalingWatermark) DeepCopy

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

func (*NodeScalingWatermark) DeepCopyInto

func (in *NodeScalingWatermark) DeepCopyInto(out *NodeScalingWatermark)

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

func (*NodeScalingWatermark) DeepCopyObject

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

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

func (*NodeScalingWatermark) GetEnforcingReconcileStatus

func (m *NodeScalingWatermark) GetEnforcingReconcileStatus() apis.EnforcingReconcileStatus

func (*NodeScalingWatermark) SetEnforcingReconcileStatus

func (m *NodeScalingWatermark) SetEnforcingReconcileStatus(reconcileStatus apis.EnforcingReconcileStatus)

type NodeScalingWatermarkList

type NodeScalingWatermarkList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []NodeScalingWatermark `json:"items"`
}

NodeScalingWatermarkList contains a list of NodeScalingWatermark

func (*NodeScalingWatermarkList) DeepCopy

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

func (*NodeScalingWatermarkList) DeepCopyInto

func (in *NodeScalingWatermarkList) DeepCopyInto(out *NodeScalingWatermarkList)

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

func (*NodeScalingWatermarkList) DeepCopyObject

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

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

type NodeScalingWatermarkSpec

type NodeScalingWatermarkSpec struct {

	// WatermarkPercentage: percentage of aggregated capacity of the selectd nodes after which the cluster should start scaling
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Maximum=100
	// +kubebuilder:validation:Minimum=1
	WatermarkPercentage int `json:"watermarkPercentage"`

	// NodeSelector for the nodes for which the watermark will be calculated. These nodes should be controlled by an autoscaler.
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:={node-role.kubernetes.io/worker:""}
	NodeSelector map[string]string `json:"nodeSelector"`

	// +kubebuilder:validation:Optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`

	// PausePodSize is size of the pause pods used to mark the watermark, smaller pods will distributed better but consume slightly more resources. Tuning may be required to find the optimal size.
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:={memory: "200Mi",cpu: "200m"}
	PausePodSize corev1.ResourceList `json:"pausePodSize"`

	// +kubebuilder:validation:Optional
	// +kubebuilder:default:="k8s.gcr.io/pause"
	PausePodImage string `json:"pausePodImage"`

	// PriorityClassName is the priorityClassName assigned to the pause pods, if not set it will be default to proactive-node-autoscaling-pods
	// +kubebuilder:validation:Optional
	// +kubebuilder:default:=proactive-node-autoscaling-pods
	PriorityClassName string `json:"priorityClassName"`
}

NodeScalingWatermarkSpec defines the desired state of NodeScalingWatermark

func (*NodeScalingWatermarkSpec) DeepCopy

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

func (*NodeScalingWatermarkSpec) DeepCopyInto

func (in *NodeScalingWatermarkSpec) DeepCopyInto(out *NodeScalingWatermarkSpec)

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

type NodeScalingWatermarkStatus

type NodeScalingWatermarkStatus struct {

	// Conditions this is the general status of the main reconciler
	// +kubebuilder:validation:Optional
	apis.EnforcingReconcileStatus `json:",inline,omitempty"`
}

NodeScalingWatermarkStatus defines the observed state of NodeScalingWatermark

func (*NodeScalingWatermarkStatus) DeepCopy

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

func (*NodeScalingWatermarkStatus) DeepCopyInto

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