Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:defaulter-gen=TypeMeta +groupName=kit.k8s.sh
Index ¶
- Constants
- Variables
- type Component
- type ControlPlane
- func (c *ControlPlane) ClusterName() string
- func (in *ControlPlane) DeepCopy() *ControlPlane
- func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
- func (in *ControlPlane) DeepCopyObject() runtime.Object
- func (c *ControlPlane) GetConditions() apis.Conditions
- func (c *ControlPlane) SetConditions(conditions apis.Conditions)
- func (c *ControlPlane) SetDefaults(ctx context.Context)
- func (c *ControlPlane) StatusConditions() apis.ConditionManager
- func (c *ControlPlane) Validate(ctx context.Context) (errs *apis.FieldError)
- type ControlPlaneList
- type ControlPlaneSpec
- func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec
- func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)
- func (s ControlPlaneSpec) SetEtcdDefaults() ControlPlaneSpec
- func (s ControlPlaneSpec) SetMasterDefaults() ControlPlaneSpec
- func (s ControlPlaneSpec) SetVersionDefaults() ControlPlaneSpec
- type ControlPlaneStatus
- type Etcd
- type MasterSpec
Constants ¶
const ( // Active is a condition implemented by all resources. It indicates that the // controller is able to take actions: it's correctly configured, can make // necessary API calls, and isn't disabled. Active apis.ConditionType = "Active" )
Variables ¶
var ( // APIVersion is the current API version used to register these objects APIVersion = "v1alpha1" ControlPlaneKind = "ControlPlane" // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "kit.k8s.sh", Version: APIVersion} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme is required by pkg/client/... AddToScheme = SchemeBuilder.AddToScheme Resources = map[schema.GroupVersionKind]resourcesemantics.GenericCRD{ SchemeGroupVersion.WithKind(ControlPlaneKind): &ControlPlane{}, } )
Functions ¶
This section is empty.
Types ¶
type Component ¶
type Component struct { Replicas int `json:"replicas,omitempty"` Spec *v1.PodSpec `json:"spec,omitempty"` }
Component provides a generic way to pass in args and images to master and etcd components. If a user wants to change the QPS they need to provide the following flag with the desired value -`kube-api-qps:100` in the args.
func (*Component) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Component.
func (*Component) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlane ¶
type ControlPlane struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ControlPlaneSpec `json:"spec,omitempty"` Status ControlPlaneStatus `json:"status,omitempty"` }
ControlPlane is the Schema for the ControlPlanes API +kubebuilder:object:root=true +kubebuilder:resource:shortName=cp +kubebuilder:subresource:status
func (*ControlPlane) ClusterName ¶
func (c *ControlPlane) ClusterName() string
func (*ControlPlane) DeepCopy ¶
func (in *ControlPlane) DeepCopy() *ControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlane.
func (*ControlPlane) DeepCopyInto ¶
func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlane) DeepCopyObject ¶
func (in *ControlPlane) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ControlPlane) GetConditions ¶
func (c *ControlPlane) GetConditions() apis.Conditions
func (*ControlPlane) SetConditions ¶
func (c *ControlPlane) SetConditions(conditions apis.Conditions)
func (*ControlPlane) SetDefaults ¶
func (c *ControlPlane) SetDefaults(ctx context.Context)
SetDefaults for the ControlPlane, this gets called by the kit-webhook pod Nothing is set here to default as we don't want to change the controlPlane CRD instance object in Kubernetes. All the defaults are set while reconciling over ControlPlane object in the controllers.
func (*ControlPlane) StatusConditions ¶
func (c *ControlPlane) StatusConditions() apis.ConditionManager
func (*ControlPlane) Validate ¶
func (c *ControlPlane) Validate(ctx context.Context) (errs *apis.FieldError)
type ControlPlaneList ¶
type ControlPlaneList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ControlPlane `json:"items"` }
ControlPlaneList contains a list of ControlPlane +kubebuilder:object:root=true
func (*ControlPlaneList) DeepCopy ¶
func (in *ControlPlaneList) DeepCopy() *ControlPlaneList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneList.
func (*ControlPlaneList) DeepCopyInto ¶
func (in *ControlPlaneList) DeepCopyInto(out *ControlPlaneList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ControlPlaneList) DeepCopyObject ¶
func (in *ControlPlaneList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ControlPlaneSpec ¶
type ControlPlaneSpec struct { KubernetesVersion string `json:"kubernetesVersion,omitempty"` ColocateAPIServerWithEtcd bool `json:"colocateAPIServerWithEtcd,omitempty"` // TTL is the duration for which control plane resources are active, once expired resource will be automatically deleted by the operator TTL string `json:"ttl,omitempty"` Master MasterSpec `json:"master,omitempty"` Etcd Etcd `json:"etcd,omitempty"` }
ControlPlaneSpec specifies the shape of the cluster and how components like master and etcd are configured to run. By default, KIT uses all the default values and ControlPlaneSpec can be empty.
func (*ControlPlaneSpec) DeepCopy ¶
func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneSpec.
func (*ControlPlaneSpec) DeepCopyInto ¶
func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ControlPlaneSpec) SetEtcdDefaults ¶
func (s ControlPlaneSpec) SetEtcdDefaults() ControlPlaneSpec
SetEtcdDefaults for the etcd components
func (ControlPlaneSpec) SetMasterDefaults ¶
func (s ControlPlaneSpec) SetMasterDefaults() ControlPlaneSpec
SetMasterDefaults for the master components
func (ControlPlaneSpec) SetVersionDefaults ¶
func (s ControlPlaneSpec) SetVersionDefaults() ControlPlaneSpec
SetVersionDefaults for the controlPlane
type ControlPlaneStatus ¶
type ControlPlaneStatus struct { // Conditions is the set of conditions required for this ControlPlane to create // its objects, and indicates whether or not those conditions are met. // +optional Conditions apis.Conditions `json:"conditions,omitempty"` }
ControlPlaneStatus defines the observed state of the ControlPlane of a cluster
func (*ControlPlaneStatus) DeepCopy ¶
func (in *ControlPlaneStatus) DeepCopy() *ControlPlaneStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneStatus.
func (*ControlPlaneStatus) DeepCopyInto ¶
func (in *ControlPlaneStatus) DeepCopyInto(out *ControlPlaneStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Etcd ¶
type Etcd struct { Component `json:",inline"` PersistentVolumeClaimSpec *v1.PersistentVolumeClaimSpec `json:"persistentVolumeClaimSpec,omitempty"` }
func (*Etcd) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Etcd.
func (*Etcd) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MasterSpec ¶
type MasterSpec struct { KMSKeyID *string `json:"kmsKeyId,omitempty"` Scheduler *Component `json:"scheduler,omitempty"` ControllerManager *Component `json:"controllerManager,omitempty"` APIServer *Component `json:"apiServer,omitempty"` Authenticator *Component `json:"authenticator,omitempty"` }
MasterSpec provides a way for the user to configure master instances and custom flags for components running on master nodes like apiserver, KCM and scheduler.
func (*MasterSpec) DeepCopy ¶
func (in *MasterSpec) DeepCopy() *MasterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MasterSpec.
func (*MasterSpec) DeepCopyInto ¶
func (in *MasterSpec) DeepCopyInto(out *MasterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.