Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the controlplane v1beta1 API group +kubebuilder:object:generate=true +groupName=controlplane.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type KThreesControlPlane
- func (in *KThreesControlPlane) DeepCopy() *KThreesControlPlane
- func (in *KThreesControlPlane) DeepCopyInto(out *KThreesControlPlane)
- func (in *KThreesControlPlane) DeepCopyObject() runtime.Object
- func (in *KThreesControlPlane) GetConditions() clusterv1.Conditions
- func (in *KThreesControlPlane) SetConditions(conditions clusterv1.Conditions)
- type KThreesControlPlaneList
- type KThreesControlPlaneSpec
- type KThreesControlPlaneStatus
Constants ¶
const ( // CertificatesAvailableCondition documents that cluster certificates were generated as part of the // processing of a a KThreesControlPlane object. CertificatesAvailableCondition clusterv1.ConditionType = "CertificatesAvailable" // CertificatesGenerationFailedReason (Severity=Warning) documents a KThreesControlPlane controller detecting // an error while generating certificates; those kind of errors are usually temporary and the controller // automatically recover from them. CertificatesGenerationFailedReason = "CertificatesGenerationFailed" )
const ( // AvailableCondition documents that the first control plane instance has completed the server init operation // and so the control plane is available and an API server instance is ready for processing requests. AvailableCondition clusterv1.ConditionType = "Available" // WaitingForKthreesServerReason (Severity=Info) documents a KThreesControlPlane object waiting for the first // control plane instance to complete the k3s server operation. WaitingForKthreesServerReason = "WaitingForKthreesServer" )
const ( // MachinesSpecUpToDateCondition documents that the spec of the machines controlled by the KThreesControlPlane // is up to date. Whe this condition is false, the KThreesControlPlane is executing a rolling upgrade. MachinesSpecUpToDateCondition clusterv1.ConditionType = "MachinesSpecUpToDate" // RollingUpdateInProgressReason (Severity=Warning) documents a KThreesControlPlane object executing a // rolling upgrade for aligning the machines spec to the desired state. RollingUpdateInProgressReason = "RollingUpdateInProgress" )
const ( // ResizedCondition documents a KThreesControlPlane that is resizing the set of controlled machines. ResizedCondition clusterv1.ConditionType = "Resized" // ScalingUpReason (Severity=Info) documents a KThreesControlPlane that is increasing the number of replicas. ScalingUpReason = "ScalingUp" // ScalingDownReason (Severity=Info) documents a KThreesControlPlane that is decreasing the number of replicas. ScalingDownReason = "ScalingDown" )
const ( // ControlPlaneComponentsHealthyCondition reports the overall status of the k3s server. ControlPlaneComponentsHealthyCondition clusterv1.ConditionType = "ControlPlaneComponentsHealthy" // ControlPlaneComponentsUnhealthyReason (Severity=Error) documents a control plane component not healthy. ControlPlaneComponentsUnhealthyReason = "ControlPlaneComponentsUnhealthy" // ControlPlaneComponentsUnknownReason reports a control plane component in unknown status. ControlPlaneComponentsUnknownReason = "ControlPlaneComponentsUnknown" // ControlPlaneComponentsInspectionFailedReason documents a failure in inspecting the control plane component status. ControlPlaneComponentsInspectionFailedReason = "ControlPlaneComponentsInspectionFailed" // MachineAgentHealthyCondition reports a machine's k3s agent's operational status. MachineAgentHealthyCondition clusterv1.ConditionType = "AgentHealthy" // PodProvisioningReason (Severity=Info) documents a pod waiting to be provisioned i.e., Pod is in "Pending" phase. PodProvisioningReason = "PodProvisioning" // PodMissingReason (Severity=Error) documents a pod does not exist. PodMissingReason = "PodMissing" // PodFailedReason (Severity=Error) documents if a pod failed during provisioning i.e., e.g CrashLoopbackOff, ImagePullBackOff // or if all the containers in a pod have terminated. PodFailedReason = "PodFailed" // PodInspectionFailedReason documents a failure in inspecting the pod status. PodInspectionFailedReason = "PodInspectionFailed" )
const ( // EtcdClusterHealthyCondition documents the overall etcd cluster's health. EtcdClusterHealthyCondition clusterv1.ConditionType = "EtcdClusterHealthyCondition" // EtcdClusterInspectionFailedReason documents a failure in inspecting the etcd cluster status. EtcdClusterInspectionFailedReason = "EtcdClusterInspectionFailed" // EtcdClusterUnknownReason reports an etcd cluster in unknown status. EtcdClusterUnknownReason = "EtcdClusterUnknown" // EtcdClusterUnhealthyReason (Severity=Error) is set when the etcd cluster is unhealthy. EtcdClusterUnhealthyReason = "EtcdClusterUnhealthy" // MachineEtcdMemberHealthyCondition report the machine's etcd member's health status. // NOTE: This conditions exists only if a stacked etcd cluster is used. MachineEtcdMemberHealthyCondition clusterv1.ConditionType = "EtcdMemberHealthy" // EtcdMemberInspectionFailedReason documents a failure in inspecting the etcd member status. EtcdMemberInspectionFailedReason = "MemberInspectionFailed" // EtcdMemberUnhealthyReason (Severity=Error) documents a Machine's etcd member is unhealthy. EtcdMemberUnhealthyReason = "EtcdMemberUnhealthy" )
const ( KThreesControlPlaneFinalizer = "kthrees.controlplane.cluster.x-k8s.io" // KThreesServerConfigurationAnnotation is a machine annotation that stores the json-marshalled string of KCP ClusterConfiguration. // This annotation is used to detect any changes in ClusterConfiguration and trigger machine rollout in KCP. KThreesServerConfigurationAnnotation = "controlplane.cluster.x-k8s.io/kthrees-server-configuration" // SkipCoreDNSAnnotation annotation explicitly skips reconciling CoreDNS if set SkipCoreDNSAnnotation = "controlplane.cluster.x-k8s.io/skip-coredns" )
const ( // MachinesReady reports an aggregate of current status of the machines controlled by the KThreesControlPlane. MachinesReadyCondition clusterv1.ConditionType = "MachinesReady" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "controlplane.cluster.x-k8s.io", Version: "v1beta1"} // 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 KThreesControlPlane ¶
type KThreesControlPlane struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KThreesControlPlaneSpec `json:"spec,omitempty"` Status KThreesControlPlaneStatus `json:"status,omitempty"` }
KThreesControlPlane is the Schema for the kthreescontrolplanes API
func (*KThreesControlPlane) DeepCopy ¶
func (in *KThreesControlPlane) DeepCopy() *KThreesControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KThreesControlPlane.
func (*KThreesControlPlane) DeepCopyInto ¶
func (in *KThreesControlPlane) DeepCopyInto(out *KThreesControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KThreesControlPlane) DeepCopyObject ¶
func (in *KThreesControlPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*KThreesControlPlane) GetConditions ¶
func (in *KThreesControlPlane) GetConditions() clusterv1.Conditions
func (*KThreesControlPlane) SetConditions ¶
func (in *KThreesControlPlane) SetConditions(conditions clusterv1.Conditions)
type KThreesControlPlaneList ¶
type KThreesControlPlaneList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KThreesControlPlane `json:"items"` }
KThreesControlPlaneList contains a list of KThreesControlPlane
func (*KThreesControlPlaneList) DeepCopy ¶
func (in *KThreesControlPlaneList) DeepCopy() *KThreesControlPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KThreesControlPlaneList.
func (*KThreesControlPlaneList) DeepCopyInto ¶
func (in *KThreesControlPlaneList) DeepCopyInto(out *KThreesControlPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KThreesControlPlaneList) DeepCopyObject ¶
func (in *KThreesControlPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KThreesControlPlaneSpec ¶
type KThreesControlPlaneSpec struct { // Number of desired machines. Defaults to 1. When stacked etcd is used only // odd numbers are permitted, as per [etcd best practice](https://etcd.io/docs/v3.3.12/faq/#why-an-odd-number-of-cluster-members). // This is a pointer to distinguish between explicit zero and not specified. // +optional Replicas *int32 `json:"replicas,omitempty"` // Version defines the desired Kubernetes version. Version string `json:"version"` // InfrastructureTemplate is a required reference to a custom resource // offered by an infrastructure provider. InfrastructureTemplate corev1.ObjectReference `json:"infrastructureTemplate"` // KThreesConfigSpec is a KThreesConfigSpec // to use for initializing and joining machines to the control plane. // +optional KThreesConfigSpec cabp3v1.KThreesConfigSpec `json:"kthreesConfigSpec,omitempty"` // UpgradeAfter is a field to indicate an upgrade should be performed // after the specified time even if no changes have been made to the // KThreesControlPlane // +optional UpgradeAfter *metav1.Time `json:"upgradeAfter,omitempty"` // NodeDrainTimeout is the total amount of time that the controller will spend on draining a controlplane node // The default value is 0, meaning that the node can be drained without any time limitations. // NOTE: NodeDrainTimeout is different from `kubectl drain --timeout` // +optional NodeDrainTimeout *metav1.Duration `json:"nodeDrainTimeout,omitempty"` }
KThreesControlPlaneSpec defines the desired state of KThreesControlPlane
func (*KThreesControlPlaneSpec) DeepCopy ¶
func (in *KThreesControlPlaneSpec) DeepCopy() *KThreesControlPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KThreesControlPlaneSpec.
func (*KThreesControlPlaneSpec) DeepCopyInto ¶
func (in *KThreesControlPlaneSpec) DeepCopyInto(out *KThreesControlPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KThreesControlPlaneStatus ¶
type KThreesControlPlaneStatus struct { // Selector is the label selector in string format to avoid introspection // by clients, and is used to provide the CRD-based integration for the // scale subresource and additional integrations for things like kubectl // describe.. The string will be in the same format as the query-param syntax. // More info about label selectors: http://kubernetes.io/docs/user-guide/labels#label-selectors // +optional Selector string `json:"selector,omitempty"` // Total number of non-terminated machines targeted by this control plane // (their labels match the selector). // +optional Replicas int32 `json:"replicas,omitempty"` // Total number of non-terminated machines targeted by this control plane // that have the desired template spec. // +optional UpdatedReplicas int32 `json:"updatedReplicas,omitempty"` // Total number of fully running and ready control plane machines. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty"` // This is the total number of machines that are still required for // the deployment to have 100% available capacity. They may either // be machines that are running but not yet ready or machines // that still have not been created. // +optional UnavailableReplicas int32 `json:"unavailableReplicas,omitempty"` // Initialized denotes whether or not the k3s server is initialized. // +optional Initialized bool `json:"initialized"` // Ready denotes that the KThreesControlPlane API Server is ready to // receive requests. // +optional Ready bool `json:"ready"` // FailureReason indicates that there is a terminal problem reconciling the // state, and will be set to a token value suitable for // programmatic interpretation. // +optional FailureReason errors.KThreesControlPlaneStatusError `json:"failureReason,omitempty"` // ErrorMessage indicates that there is a terminal problem reconciling the // state, and will be set to a descriptive error message. // +optional FailureMessage *string `json:"failureMessage,omitempty"` // ObservedGeneration is the latest generation observed by the controller. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions defines current service state of the KThreesControlPlane. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
KThreesControlPlaneStatus defines the observed state of KThreesControlPlane
func (*KThreesControlPlaneStatus) DeepCopy ¶
func (in *KThreesControlPlaneStatus) DeepCopy() *KThreesControlPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KThreesControlPlaneStatus.
func (*KThreesControlPlaneStatus) DeepCopyInto ¶
func (in *KThreesControlPlaneStatus) DeepCopyInto(out *KThreesControlPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.