package node

import "k8s.io/cloud-provider/controllers/node"

Index

Variables

var UpdateNodeSpecBackoff = wait.Backoff{
	Steps:    20,
	Duration: 50 * time.Millisecond,
	Jitter:   1.0,
}

Types

type CloudNodeController

type CloudNodeController struct {
	// contains filtered or unexported fields
}

CloudNodeController is the controller implementation for Node resources

func NewCloudNodeController

func NewCloudNodeController(
	nodeInformer coreinformers.NodeInformer,
	kubeClient clientset.Interface,
	cloud cloudprovider.Interface,
	nodeStatusUpdateFrequency time.Duration,
	workerCount int32) (*CloudNodeController, error)

NewCloudNodeController creates a CloudNodeController object

func (*CloudNodeController) Run

func (cnc *CloudNodeController) Run(stopCh <-chan struct{}, controllerManagerMetrics *controllersmetrics.ControllerManagerMetrics)

Run will sync informer caches and starting workers. This controller updates newly registered nodes with information from the cloud provider. This call is blocking so should be called via a goroutine

func (*CloudNodeController) RunWithContext

func (cnc *CloudNodeController) RunWithContext(ctx context.Context, controllerManagerMetrics *controllersmetrics.ControllerManagerMetrics)

RunWithContext will sync informer caches and starting workers. This controller updates newly registered nodes with information from the cloud provider. This call is blocking so should be called via a goroutine

func (*CloudNodeController) UpdateNodeStatus

func (cnc *CloudNodeController) UpdateNodeStatus(ctx context.Context) error

UpdateNodeStatus updates the node status, such as node addresses

Source Files

metrics.go node_controller.go

Directories

PathSynopsis
controllers/node/config
controllers/node/config/v1alpha1
Version
v0.32.2 (latest)
Published
Feb 13, 2025
Platform
linux/amd64
Imports
30 packages
Last checked
2 months ago

Tools for package owners.