kubeletdnatcontroller

package
v2.24.5 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2024 License: Apache-2.0 Imports: 21 Imported by: 0

Documentation

Overview

Package kubeletdnatcontroller contains the kubeletdnat controller which:

  • Is needed for all controlplane components running in the seed that need to reach nodes
  • Is not needed if reaching the pods is sufficient
  • Must be used in conjunction with the openvpn client
  • Creates NAT rules for both the public and private node IP that tunnels access to them via the VPN
  • Its counterpart runs within the openvpn client pod in the usercluster, is part of the openvpn addon and written in bash

Index

Constants

View Source
const (
	ControllerName = "kkp-kubeletdnat-controller"
)

Variables

This section is empty.

Functions

func Add

func Add(
	mgr manager.Manager,
	nodeTranslationChainName string,
	nodeAccessNetwork net.IP,
	log *zap.SugaredLogger,
	vpnInterface string,
) error

NewController creates a new controller for the specified data.

Types

type Reconciler

type Reconciler struct {
	ctrlruntimeclient.Client
	// contains filtered or unexported fields
}

Reconciler updates iptable rules to match node addresses. Every node address gets a translation to the respective node-access (vpn) address.

func (*Reconciler) Reconcile

func (r *Reconciler) Reconcile(ctx context.Context, request reconcile.Request) (reconcile.Result, error)

Jump to

Keyboard shortcuts

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