kubeadm

package
v0.14.0 Latest Latest
Warning

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

Go to latest
Published: May 19, 2022 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package kubeadm contains kubeadm related constants and configuration

Index

Constants

View Source
const ConfigTemplateBetaV1 = `` /* 3724-byte string literal not displayed */

ConfigTemplateBetaV1 is the kubeadm config template for API version v1beta1

View Source
const ConfigTemplateBetaV2 = `` /* 4153-byte string literal not displayed */

ConfigTemplateBetaV2 is the kubeadm config template for API version v1beta2

View Source
const ConfigTemplateBetaV3 = `` /* 4153-byte string literal not displayed */

ConfigTemplateBetaV3 is the kubeadm config template for API version v1beta3

View Source
const ObjectName = "config"

ObjectName is the name every generated object will have I.E. `metadata:\nname: config`

View Source
const Token = "abcdef.0123456789abcdef"

Token defines a dummy, well known token for automating TLS bootstrap process

Variables

This section is empty.

Functions

func Config

func Config(data ConfigData) (config string, err error)

Config returns a kubeadm config generated from config data, in particular the kubernetes version

Types

type ConfigData

type ConfigData struct {
	ClusterName       string
	KubernetesVersion string
	// The ControlPlaneEndpoint, that is the address of the external loadbalancer
	// if defined or the bootstrap node
	ControlPlaneEndpoint string
	// The Local API Server port
	APIBindPort int
	// The API server external listen IP (which we will port forward)
	APIServerAddress string

	// this should really be used for the --provider-id flag
	// ideally cluster config should not depend on the node backend otherwise ...
	NodeProvider string

	// ControlPlane flag specifies the node belongs to the control plane
	ControlPlane bool
	// The IP address or comma separated list IP addresses of of the node
	NodeAddress string
	// The name for the node (not the address)
	NodeName string

	// The Token for TLS bootstrap
	Token string

	// KubeProxyMode defines the kube-proxy mode between iptables or ipvs
	KubeProxyMode string
	// The subnet used for pods
	PodSubnet string
	// The subnet used for services
	ServiceSubnet string

	// Kubernetes FeatureGates
	FeatureGates map[string]bool

	// Kubernetes API Server RuntimeConfig
	RuntimeConfig map[string]string

	// IPFamily of the cluster, it can be IPv4, IPv6 or DualStack
	IPFamily config.ClusterIPFamily

	// Labels are the labels, in the format "key1=val1,key2=val2", with which the respective node will be labeled
	NodeLabels string

	// DerivedConfigData is populated by Derive()
	// These auto-generated fields are available to Config templates,
	// but not meant to be set by hand
	DerivedConfigData

	// Provider is running with rootless mode, so kube-proxy needs to be configured
	// not to fail on sysctl error.
	RootlessProvider bool
}

ConfigData is supplied to the kubeadm config template, with values populated by the cluster package

func (*ConfigData) Derive

func (c *ConfigData) Derive()

Derive automatically derives DockerStableTag if not specified

type DerivedConfigData

type DerivedConfigData struct {
	// AdvertiseAddress is the first address in NodeAddress
	AdvertiseAddress string
	// DockerStableTag is automatically derived from KubernetesVersion
	DockerStableTag string
	// SortedFeatureGateKeys allows us to iterate FeatureGates deterministically
	SortedFeatureGateKeys []string
	// FeatureGatesString is of the form `Foo=true,Baz=false`
	FeatureGatesString string
	// RuntimeConfigString is of the form `Foo=true,Baz=false`
	RuntimeConfigString string
	// KubeadmFeatureGates contains Kubeadm only feature gates
	KubeadmFeatureGates map[string]bool
	// IPv4 values take precedence over IPv6 by default, if true set IPv6 default values
	IPv6 bool
	// kubelet cgroup driver, based on kubernetes version
	CgroupDriver string
}

DerivedConfigData fields are automatically derived by ConfigData.Derive if they are not specified / zero valued

Jump to

Keyboard shortcuts

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