Documentation ¶
Index ¶
Constants ¶
View Source
const ( FinalizerDeleteInstance = "machine-delete-finalizer" FinalizerDeleteNode = "machine-node-delete-finalizer" ControllerName = "machine_controller" // AnnotationMachineUninitialized indicates that a machine is not yet // ready to be worked on by the machine-controller. The machine-controller // will ignore all machines that have this anotation with any value // Its value should consist of one or more initializers, separated by a comma AnnotationMachineUninitialized = "machine-controller.kubermatic.io/initializers" NodeOwnerLabelName = "machine-controller/owned-by" // AnnotationAutoscalerIdentifier is used by the cluster-autoscaler // cluster-api provider to match Nodes to Machines AnnotationAutoscalerIdentifier = "cluster.k8s.io/machine" )
Variables ¶
This section is empty.
Functions ¶
func Add ¶ added in v1.5.0
func Add( ctx context.Context, mgr manager.Manager, kubeClient kubernetes.Interface, numWorkers int, metrics *MetricsCollection, kubeconfigProvider KubeconfigProvider, providerData *cloudprovidertypes.ProviderData, joinClusterTimeout *time.Duration, externalCloudProvider bool, name string, bootstrapTokenServiceAccountName *types.NamespacedName, skipEvictionAfter time.Duration, nodeSettings NodeSettings) error
Types ¶
type KubeconfigProvider ¶
type KubeconfigProvider interface {
GetKubeconfig(context.Context) (*clientcmdapi.Config, error)
}
type MachineCollector ¶
type MachineCollector struct {
// contains filtered or unexported fields
}
func NewMachineCollector ¶
func NewMachineCollector(ctx context.Context, client ctrlruntimeclient.Client) *MachineCollector
func (MachineCollector) Collect ¶
func (mc MachineCollector) Collect(ch chan<- prometheus.Metric)
Collect implements the prometheus.Collector interface.
func (MachineCollector) Describe ¶
func (mc MachineCollector) Describe(ch chan<- *prometheus.Desc)
Describe implements the prometheus.Collector interface.
type MetricsCollection ¶
type MetricsCollection struct { Workers prometheus.Gauge Errors prometheus.Counter }
MetricsCollection is a struct of all metrics used in this controller.
func NewMachineControllerMetrics ¶
func NewMachineControllerMetrics() *MetricsCollection
NewMachineControllerMetrics creates new MachineControllerMetrics with default values initialized, so metrics always show up.
func (*MetricsCollection) MustRegister ¶ added in v1.21.0
func (mc *MetricsCollection) MustRegister(registerer prometheus.Registerer)
type NodeSettings ¶ added in v1.2.0
type NodeSettings struct { // Translates to --cluster-dns on the kubelet. ClusterDNSIPs []net.IP // If set, this proxy will be configured on all nodes. HTTPProxy string // If set this will be set as NO_PROXY on the node. NoProxy string // If set, those registries will be configured as insecure on the container runtime. InsecureRegistries []string // If set, these mirrors will be take for pulling all required images on the node. RegistryMirrors []string // Translates to --pod-infra-container-image on the kubelet. If not set, the kubelet will default it. PauseImage string // The hyperkube image to use. Currently only Container Linux and Flatcar Linux uses it. HyperkubeImage string // The kubelet repository to use. Currently only Flatcar Linux uses it. KubeletRepository string // Translates to feature gates on the kubelet. // Default: RotateKubeletServerCertificate=true KubeletFeatureGates map[string]bool }
type Reconciler ¶ added in v1.5.0
type Reconciler struct {
// contains filtered or unexported fields
}
Reconciler is the controller implementation for machine resources
func (*Reconciler) ReadinessChecks ¶ added in v1.5.0
func (r *Reconciler) ReadinessChecks(ctx context.Context) map[string]healthcheck.Check
Click to show internal directories.
Click to hide internal directories.