constants

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 19, 2021 License: LGPL-3.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// KubernetesDir is the directory Kubernetes owns for storing various configuration files
	KubernetesDir         = "/etc/kubernetes/"
	KubeletPodManifestDir = KubernetesDir + "manifests/"

	SchedulerPolicyConfigFile = KubernetesDir + "scheduler-policy-config.json"
	AuditWebhookConfigFile    = KubernetesDir + "audit-api-client-config.yaml"
	AuditPolicyConfigFile     = KubernetesDir + "audit-policy.yaml"

	EtcdPodManifestFile                  = KubeletPodManifestDir + "etcd.yaml"
	KubeAPIServerPodManifestFile         = KubeletPodManifestDir + "kube-apiserver.yaml"
	KubeControllerManagerPodManifestFile = KubeletPodManifestDir + "kube-controller-manager.yaml"
	KubeSchedulerPodManifestFile         = KubeletPodManifestDir + "kube-scheduler.yaml"

	DstTmpDir  = "/tmp/k8s/"
	DstBinDir  = "/usr/local/bin/"
	CNIBinDir  = "/opt/cni/bin/"
	CNIDataDir = "/var/lib/cni/"
	CNIConfDIr = "/etc/cni"

	CertificatesDir = KubernetesDir + "pki/"
	EtcdDataDir     = "/var/lib/etcd"

	TokenFile = KubernetesDir + "known_tokens.csv"

	KubectlConfigFile    = "/root/.kube/config"
	CACertAndKeyBaseName = "ca"

	// CACertName defines certificate name
	CACertName = CertificatesDir + "ca.crt"
	// CAKeyName defines certificate name
	CAKeyName = CertificatesDir + "ca.key"
	// APIServerCertName defines API's server certificate name
	APIServerCertName = CertificatesDir + "apiserver.crt"
	// APIServerKeyName defines API's server key name
	APIServerKeyName = CertificatesDir + "apiserver.key"
	// KubeletClientCurrent defines kubelet rotate certificates
	KubeletClientCurrent = "/var/lib/kubelet/pki/kubelet-client-current.pem"
	// EtcdCACertName defines etcd's CA certificate name
	EtcdCACertName = CertificatesDir + "etcd/ca.crt"
	// EtcdCAKeyName defines etcd's CA key name
	EtcdCAKeyName = CertificatesDir + "etcd/ca.key"
	// EtcdListenClientPort defines the port etcd listen on for client traffic
	EtcdListenClientPort = 2379
	// EtcdListenPeerPort defines the port etcd listen on for peer traffic
	EtcdListenPeerPort = 2380
	// APIServerEtcdClientCertName defines apiserver's etcd client certificate name
	APIServerEtcdClientCertName = CertificatesDir + "apiserver-etcd-client.crt"
	// APIServerEtcdClientKeyName defines apiserver's etcd client key name
	APIServerEtcdClientKeyName = CertificatesDir + "apiserver-etcd-client.key"

	KubeadmConfigFileName = KubernetesDir + "kubeadm-config.yaml"

	// KubeletKubeConfigFileName defines the file name for the kubeconfig that the control-plane kubelet will use for talking
	// to the API server
	KubeletKubeConfigFileName    = KubernetesDir + "kubelet.conf"
	KubeletRunDirectory          = "/var/lib/kubelet/"
	DefaultSystemdUnitFilePath   = "/usr/lib/systemd/system/"
	KubeletSystemdUnitFilePath   = DefaultSystemdUnitFilePath + "kubelet.service"
	KubeletServiceRunConfig      = DefaultSystemdUnitFilePath + "kubelet.service.d/10-kubeadm.conf"
	KubeletConfigurationFileName = KubeletRunDirectory + "config.yaml"
	KubeletEnvFileName           = KubeletRunDirectory + "kubeadm-flags.env"
	KubeletEnvFileVariableName   = "KUBELET_KUBEADM_ARGS"

	// LabelNodeRoleMaster specifies that a node is a control-plane
	// This is a duplicate definition of the constant in pkg/controller/service/service_controller.go
	LabelNodeRoleMaster = "node-role.kubernetes.io/master"

	DNSIPIndex = 10

	// RenewCertsTimeThreshold control how long time left to renew certs
	RenewCertsTimeThreshold = 30 * 24 * time.Hour

	FlannelDirFile    = KubernetesDir + "flannel.yaml"
	CustomDir         = "/opt/k8s/"
	SystemInitFile    = CustomDir + "init.sh"
	SystemInitCniFile = CustomDir + "initCni.sh"
	CniHostLocalFile  = CNIConfDIr + "/net.d/10-host-local.conf"
	CniLoopBack       = CNIConfDIr + "/net.d/99-loopback.conf"

	ProviderDir  = "provider/baremetal/"
	ManifestsDir = ProviderDir + "manifests/"
)
View Source
const (
	// DefaultDockerCRISocket defines the default Docker CRI socket
	DefaultDockerCRISocket = "/var/run/dockershim.sock"

	// PauseVersion indicates the default pause image version for kubeadm
	PauseVersion = "3.2"

	// CoreDNSConfigMap specifies in what ConfigMap in the kube-system namespace the CoreDNS config should be stored
	CoreDNSConfigMap = "coredns"

	// CoreDNSDeploymentName specifies the name of the Deployment for CoreDNS add-on
	CoreDNSDeploymentName = "coredns"

	// CoreDNSImageName specifies the name of the image for CoreDNS add-on
	CoreDNSImageName = "coredns"

	// CoreDNSVersion is the version of CoreDNS to be deployed if it is used
	CoreDNSVersion = "1.6.7"

	KubeProxyImageName = "kube-proxy"

	// KubeProxyConfigMap specifies in what ConfigMap in the kube-system namespace the kube-proxy configuration should be stored
	KubeProxyConfigMap = "kube-proxy"

	// KubeProxyConfigMapKey specifies in what ConfigMap key the component config of kube-proxy should be stored
	KubeProxyConfigMapKey = "config.conf"

	// NodeBootstrapTokenAuthGroup specifies which group a Node Bootstrap Token should be authenticated in
	NodeBootstrapTokenAuthGroup = "system:bootstrappers:kubeadm:default-node-token"

	KubernetesAllImageName = "kubernetes"
)
View Source
const (
	FinalizersCluster = "finalizers.k8s.io/cluster"
	FinalizersMachine = "finalizers.k8s.io/machine"
)
View Source
const (
	ComponentNameCrd = "crds"
	CreatedByLabel   = "k8s.io/created-by"
	CreatedBy        = "operator"

	KubeApiServer         = "kube-apiserver"
	KubeKubeScheduler     = "kube-scheduler"
	KubeControllerManager = "kube-controller-manager"
	KubeApiServerCerts    = "kube-apiserver-certs"
	KubeApiServerConfig   = "kube-apiserver-config"
	KubeApiServerAudit    = "kube-apiserver-audit"
	KubeMasterManifests   = "kube-master-manifests"
)
View Source
const (
	ClusterAnnoApplySep      = "k8s.io/apply.step"
	ClusterPhaseRestore      = "k8s.io/step.restore"
	ClusterApiSvcType        = "k8s.io/apiserver.type"
	ClusterApiSvcVip         = "k8s.io/apiserver.vip"
	ClusterAnnoLocalDebugDir = "k8s.io/local.dir"
)
View Source
const (
	// ProxyStatusPort is the default port for the proxy metrics server.
	// May be overridden by a flag at startup.
	ProxyStatusPort = 10249
	// KubeletPort is the default port for the kubelet server on each host machine.
	// May be overridden by a flag at startup.
	KubeletPort = 10250
	// InsecureSchedulerPort is the default port for the scheduler status server.
	// May be overridden by a flag at startup.
	// Deprecated: use the secure KubeSchedulerPort instead.
	InsecureSchedulerPort = 10251
	// InsecureKubeControllerManagerPort is the default port for the controller manager status server.
	// May be overridden by a flag at startup.
	// Deprecated: use the secure KubeControllerManagerPort instead.
	InsecureKubeControllerManagerPort = 10252
	// InsecureCloudControllerManagerPort is the default port for the cloud controller manager server.
	// This value may be overridden by a flag at startup.
	// Deprecated: use the secure CloudControllerManagerPort instead.
	InsecureCloudControllerManagerPort = 10253
	// KubeletReadOnlyPort exposes basic read-only services from the kubelet.
	// May be overridden by a flag at startup.
	// This is necessary for heapster to collect monitoring stats from the kubelet
	// until heapster can transition to using the SSL endpoint.
	// TODO(roberthbailey): Remove this once we have a better solution for heapster.
	KubeletReadOnlyPort = 10255
	// ProxyHealthzPort is the default port for the proxy healthz server.
	// May be overridden by a flag at startup.
	ProxyHealthzPort = 10256
	// KubeControllerManagerPort is the default port for the controller manager status server.
	// May be overridden by a flag at startup.
	KubeControllerManagerPort = 10257
	// CloudControllerManagerPort is the default port for the cloud controller manager server.
	// This value may be overridden by a flag at startup.
	CloudControllerManagerPort = 10258

	// KubeSchedulerPort is the default port for the scheduler status server.
	// May be overridden by a flag at startup.
	KubeSchedulerPort = 10259
)

Variables

View Source
var (
	OSs                = []string{"linux"}
	K8sVersions        = []string{"v1.18.14", "v1.19.6"}
	CNIPluginsVersions = []string{"v0.8.6"}
	ContainerdVersions = []string{"1.4.3"}
)
View Source
var CtrlLabels = map[string]string{
	"createBy": "controller",
}
View Source
var KubeApiServerLabels = map[string]string{
	"component": KubeApiServer,
}
View Source
var KubeControllerManagerLabels = map[string]string{
	"component": KubeControllerManager,
}
View Source
var KubeKubeSchedulerLabels = map[string]string{
	"component": KubeKubeScheduler,
}

Functions

func ContainsString

func ContainsString(slice []string, s string) bool

func GetAnnotationKey

func GetAnnotationKey(annotation map[string]string, key string) string

func GetGenericImage

func GetGenericImage(prefix, image, tag string) string

GetGenericImage generates and returns a platform agnostic image (backed by manifest list)

func GetKubeImage

func GetKubeImage(prefix, image, tag string) string

GetKubeImage base centes images all kube

func RemoveString

func RemoveString(slice []string, s string) (result []string)

Types

This section is empty.

Jump to

Keyboard shortcuts

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