nodelocaldns

package
v1.127.3 Latest Latest
Warning

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

Go to latest
Published: Sep 23, 2025 License: Apache-2.0 Imports: 43 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

View Source
var TimeoutWaitForManagedResource = 2 * time.Minute

TimeoutWaitForManagedResource is the timeout used while waiting for the ManagedResources to become healthy or deleted.

Functions

func MarkNodesForCleanup added in v1.126.0

func MarkNodesForCleanup(ctx context.Context, shootClient client.Client, workers []gardencorev1beta1.Worker) error

MarkNodesForCleanup marks nodes for cleanup by adding a label to them if the node-local-dns DaemonSet exists.

func RunCleanup added in v1.126.0

func RunCleanup(ctx context.Context, shootClient client.Client, alpineImage string, logger logr.Logger) error

RunCleanup runs the cleanup DaemonSet for node-local-dns, waits for its completion, and removes the cleanup label from nodes.

Types

type Interface

type Interface interface {
	component.DeployWaiter
	SetClusterDNS([]string)
	SetDNSServers([]string)
	SetIPFamilies([]gardencorev1beta1.IPFamily)
	SetShootClientSet(kubernetes.Interface)
}

Interface contains functions for a NodeLocalDNS deployer.

func New

func New(
	client client.Client,
	namespace string,
	values Values,
) Interface

New creates a new instance of DeployWaiter for node-local-dns.

type Values

type Values struct {
	// Image is the container image used for node-local-dns.
	Image string
	// AlpineImage is the container image used for the cleanup DaemonSet.
	AlpineImage string
	// VPAEnabled marks whether VerticalPodAutoscaler is enabled for the shoot.
	VPAEnabled bool
	// Config is the node local configuration for the shoot spec
	Config *gardencorev1beta1.NodeLocalDNS
	// ClusterDNS are the ClusterIPs of kube-system/coredns Service
	ClusterDNS []string
	// DNSServer are the ClusterIPs of kube-system/coredns Service
	DNSServers []string
	// IPFamilies specifies the IP protocol versions to use for node local dns.
	IPFamilies []gardencorev1beta1.IPFamily
	// ShootClient is the client used to interact with the shoot cluster.
	ShootClient client.Client
	// Log is the logger used for logging.
	Log logr.Logger
	// Workers is the group of workers for which node-local-dns is deployed.
	Workers []gardencorev1beta1.Worker
	// KubeProxyConfig is the kube-proxy configuration for the shoot.
	KubeProxyConfig *gardencorev1beta1.KubeProxyConfig
}

Values is a set of configuration values for the node-local-dns component.

Directories

Path Synopsis
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL