package preflight
import "k8s.io/kubernetes/cmd/kubeadm/app/preflight"
Index ¶
- func GetKubeletVersion(execer utilsexec.Interface) (*version.Version, error)
- func RunChecks(checks []Checker, ww io.Writer, ignorePreflightErrors sets.Set[string]) error
- func RunInitNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string], isSecondaryControlPlane bool, downloadCerts bool) error
- func RunJoinNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.JoinConfiguration, ignorePreflightErrors sets.Set[string]) error
- func RunPullImagesCheck(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string]) error
- func RunRootCheckOnly(ignorePreflightErrors sets.Set[string]) error
- func RunUpgradeChecks(ignorePreflightErrors sets.Set[string]) error
- type Checker
- func InitNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string], isSecondaryControlPlane bool, downloadCerts bool) ([]Checker, error)
- func JoinNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.JoinConfiguration, ignorePreflightErrors sets.Set[string]) ([]Checker, error)
- type ContainerRuntimeCheck
- func (crc ContainerRuntimeCheck) Check() (warnings, errorList []error)
- func (ContainerRuntimeCheck) Name() string
- type DirAvailableCheck
- func (dac DirAvailableCheck) Check() (warnings, errorList []error)
- func (dac DirAvailableCheck) Name() string
- type Error
- type ExternalEtcdVersionCheck
- func (evc ExternalEtcdVersionCheck) Check() (warnings, errorList []error)
- func (ExternalEtcdVersionCheck) Name() string
- type FileAvailableCheck
- func (fac FileAvailableCheck) Check() (warnings, errorList []error)
- func (fac FileAvailableCheck) Name() string
- type FileContentCheck
- func (fcc FileContentCheck) Check() (warnings, errorList []error)
- func (fcc FileContentCheck) Name() string
- type FileExistingCheck
- func (fac FileExistingCheck) Check() (warnings, errorList []error)
- func (fac FileExistingCheck) Name() string
- type FirewalldCheck
- type HTTPProxyCIDRCheck
- func (subnet HTTPProxyCIDRCheck) Check() (warnings, errorList []error)
- func (HTTPProxyCIDRCheck) Name() string
- type HTTPProxyCheck
- func (hst HTTPProxyCheck) Check() (warnings, errorList []error)
- func (hst HTTPProxyCheck) Name() string
- type HostnameCheck
- type ImagePullCheck
- type InPathCheck
- type IsPrivilegedUserCheck
- func (ipuc IsPrivilegedUserCheck) Check() (warnings, errorList []error)
- func (IsPrivilegedUserCheck) Name() string
- type KubeletVersionCheck
- func (kubever KubeletVersionCheck) Check() (warnings, errorList []error)
- func (KubeletVersionCheck) Name() string
- type KubernetesVersionCheck
- func (kubever KubernetesVersionCheck) Check() (warnings, errorList []error)
- func (KubernetesVersionCheck) Name() string
- type MemCheck
- type NumCPUCheck
- type PortOpenCheck
- func (poc PortOpenCheck) Check() (warnings, errorList []error)
- func (poc PortOpenCheck) Name() string
- type ServiceCheck
- type SwapCheck
- type SystemVerificationCheck
Functions ¶
func GetKubeletVersion ¶
GetKubeletVersion is helper function that returns version of kubelet available in $PATH
func RunChecks ¶
RunChecks runs each check, displays its warnings/errors, and once all are processed will exit if any errors occurred.
func RunInitNodeChecks ¶
func RunInitNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string], isSecondaryControlPlane bool, downloadCerts bool) error
RunInitNodeChecks executes all individual, applicable to control-plane node checks. The boolean flag 'isSecondaryControlPlane' controls whether we are running checks in a --join-control-plane scenario. The boolean flag 'downloadCerts' controls whether we should skip checks on certificates because we are downloading them. If the flag is set to true we should skip checks already executed by RunJoinNodeChecks.
func RunJoinNodeChecks ¶
func RunJoinNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.JoinConfiguration, ignorePreflightErrors sets.Set[string]) error
RunJoinNodeChecks executes all individual, applicable to node checks.
func RunPullImagesCheck ¶
func RunPullImagesCheck(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string]) error
RunPullImagesCheck will pull images kubeadm needs if they are not found on the system
func RunRootCheckOnly ¶
RunRootCheckOnly initializes checks slice of structs and call RunChecks
func RunUpgradeChecks ¶
RunUpgradeChecks initializes checks slice of structs and call RunChecks
Types ¶
type Checker ¶
Checker validates the state of the system to ensure kubeadm will be successful as often as possible.
func InitNodeChecks ¶
func InitNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.InitConfiguration, ignorePreflightErrors sets.Set[string], isSecondaryControlPlane bool, downloadCerts bool) ([]Checker, error)
InitNodeChecks returns checks specific to "kubeadm init"
func JoinNodeChecks ¶
func JoinNodeChecks(execer utilsexec.Interface, cfg *kubeadmapi.JoinConfiguration, ignorePreflightErrors sets.Set[string]) ([]Checker, error)
JoinNodeChecks returns checks specific to "kubeadm join"
type ContainerRuntimeCheck ¶
type ContainerRuntimeCheck struct {
// contains filtered or unexported fields
}
ContainerRuntimeCheck verifies the container runtime.
func (ContainerRuntimeCheck) Check ¶
func (crc ContainerRuntimeCheck) Check() (warnings, errorList []error)
Check validates the container runtime
func (ContainerRuntimeCheck) Name ¶
func (ContainerRuntimeCheck) Name() string
Name returns label for RuntimeCheck.
type DirAvailableCheck ¶
DirAvailableCheck checks if the given directory either does not exist, or is empty.
func (DirAvailableCheck) Check ¶
func (dac DirAvailableCheck) Check() (warnings, errorList []error)
Check validates if a directory does not exist or empty.
func (DirAvailableCheck) Name ¶
func (dac DirAvailableCheck) Name() string
Name returns label for individual DirAvailableChecks. If not known, will return based on path.
type Error ¶
type Error struct { Msg string }
Error defines struct for communicating error messages generated by preflight checks
func (*Error) Error ¶
Error implements the standard error interface
func (*Error) Preflight ¶
Preflight identifies this error as a preflight error
type ExternalEtcdVersionCheck ¶
type ExternalEtcdVersionCheck struct { Etcd kubeadmapi.Etcd }
ExternalEtcdVersionCheck checks if version of external etcd meets the demand of kubeadm
func (ExternalEtcdVersionCheck) Check ¶
func (evc ExternalEtcdVersionCheck) Check() (warnings, errorList []error)
Check validates external etcd version TODO: Use the official etcd Golang client for this instead?
func (ExternalEtcdVersionCheck) Name ¶
func (ExternalEtcdVersionCheck) Name() string
Name will return ExternalEtcdVersion as name for ExternalEtcdVersionCheck
type FileAvailableCheck ¶
FileAvailableCheck checks that the given file does not already exist.
func (FileAvailableCheck) Check ¶
func (fac FileAvailableCheck) Check() (warnings, errorList []error)
Check validates if the given file does not already exist.
func (FileAvailableCheck) Name ¶
func (fac FileAvailableCheck) Name() string
Name returns label for individual FileAvailableChecks. If not known, will return based on path.
type FileContentCheck ¶
FileContentCheck checks that the given file contains the string Content.
func (FileContentCheck) Check ¶
func (fcc FileContentCheck) Check() (warnings, errorList []error)
Check validates if the given file contains the given content.
func (FileContentCheck) Name ¶
func (fcc FileContentCheck) Name() string
Name returns label for individual FileContentChecks. If not known, will return based on path.
type FileExistingCheck ¶
FileExistingCheck checks that the given file does not already exist.
func (FileExistingCheck) Check ¶
func (fac FileExistingCheck) Check() (warnings, errorList []error)
Check validates if the given file already exists.
func (FileExistingCheck) Name ¶
func (fac FileExistingCheck) Name() string
Name returns label for individual FileExistingChecks. If not known, will return based on path.
type FirewalldCheck ¶
type FirewalldCheck struct {
// contains filtered or unexported fields
}
FirewalldCheck checks if firewalld is enabled or active. If it is, warn the user that there may be problems if no actions are taken.
func (FirewalldCheck) Check ¶
func (fc FirewalldCheck) Check() (warnings, errorList []error)
Check validates if the firewall is enabled and active.
func (FirewalldCheck) Name ¶
func (FirewalldCheck) Name() string
Name returns label for FirewalldCheck.
type HTTPProxyCIDRCheck ¶
HTTPProxyCIDRCheck checks if https connection to specific subnet is going to be done directly or over proxy. If proxy detected, it will return warning. Similar to HTTPProxyCheck above, but operates with subnets and uses API machinery transport defaults to simulate kube-apiserver accessing cluster services and pods.
func (HTTPProxyCIDRCheck) Check ¶
func (subnet HTTPProxyCIDRCheck) Check() (warnings, errorList []error)
Check validates http connectivity to first IP address in the CIDR. If it is not directly connected and goes via proxy it will produce warning.
func (HTTPProxyCIDRCheck) Name ¶
func (HTTPProxyCIDRCheck) Name() string
Name will return HTTPProxyCIDR as name for HTTPProxyCIDRCheck
type HTTPProxyCheck ¶
HTTPProxyCheck checks if https connection to specific host is going to be done directly or over proxy. If proxy detected, it will return warning.
func (HTTPProxyCheck) Check ¶
func (hst HTTPProxyCheck) Check() (warnings, errorList []error)
Check validates http connectivity type, direct or via proxy.
func (HTTPProxyCheck) Name ¶
func (hst HTTPProxyCheck) Name() string
Name returns HTTPProxy as name for HTTPProxyCheck
type HostnameCheck ¶
type HostnameCheck struct {
// contains filtered or unexported fields
}
HostnameCheck checks if hostname match dns subdomain regex. If hostname doesn't match this regex, kubelet will not launch static pods like kube-apiserver/kube-controller-manager and so on.
func (HostnameCheck) Check ¶
func (hc HostnameCheck) Check() (warnings, errorList []error)
Check validates if hostname match dns subdomain regex. Check hostname length and format
func (HostnameCheck) Name ¶
func (HostnameCheck) Name() string
Name will return Hostname as name for HostnameCheck
type ImagePullCheck ¶
type ImagePullCheck struct {
// contains filtered or unexported fields
}
ImagePullCheck will pull container images used by kubeadm
func (ImagePullCheck) Check ¶
func (ipc ImagePullCheck) Check() (warnings, errorList []error)
Check pulls images required by kubeadm. This is a mutating check
func (ImagePullCheck) Name ¶
func (ImagePullCheck) Name() string
Name returns the label for ImagePullCheck
type InPathCheck ¶
type InPathCheck struct {
// contains filtered or unexported fields
}
InPathCheck checks if the given executable is present in $PATH
func (InPathCheck) Check ¶
func (ipc InPathCheck) Check() (warnings, errs []error)
Check validates if the given executable is present in the path.
func (InPathCheck) Name ¶
func (ipc InPathCheck) Name() string
Name returns label for individual InPathCheck. If not known, will return based on path.
type IsPrivilegedUserCheck ¶
type IsPrivilegedUserCheck struct{}
IsPrivilegedUserCheck verifies user is privileged (linux - root, windows - Administrator)
func (IsPrivilegedUserCheck) Check ¶
func (ipuc IsPrivilegedUserCheck) Check() (warnings, errorList []error)
Check validates if an user has elevated (root) privileges.
func (IsPrivilegedUserCheck) Name ¶
func (IsPrivilegedUserCheck) Name() string
Name returns name for IsPrivilegedUserCheck
type KubeletVersionCheck ¶
type KubeletVersionCheck struct { KubernetesVersion string // contains filtered or unexported fields }
KubeletVersionCheck validates installed kubelet version
func (KubeletVersionCheck) Check ¶
func (kubever KubeletVersionCheck) Check() (warnings, errorList []error)
Check validates kubelet version. It should be not less than minimal supported version
func (KubeletVersionCheck) Name ¶
func (KubeletVersionCheck) Name() string
Name will return KubeletVersion as name for KubeletVersionCheck
type KubernetesVersionCheck ¶
KubernetesVersionCheck validates Kubernetes and kubeadm versions
func (KubernetesVersionCheck) Check ¶
func (kubever KubernetesVersionCheck) Check() (warnings, errorList []error)
Check validates Kubernetes and kubeadm versions
func (KubernetesVersionCheck) Name ¶
func (KubernetesVersionCheck) Name() string
Name will return KubernetesVersion as name for KubernetesVersionCheck
type MemCheck ¶
type MemCheck struct { Mem uint64 }
MemCheck checks if the number of megabytes of memory is not less than required
func (MemCheck) Check ¶
Check number of memory required by kubeadm
func (MemCheck) Name ¶
Name returns the label for memory
type NumCPUCheck ¶
type NumCPUCheck struct { NumCPU int }
NumCPUCheck checks if current number of CPUs is not less than required
func (NumCPUCheck) Check ¶
func (ncc NumCPUCheck) Check() (warnings, errorList []error)
Check number of CPUs required by kubeadm
func (NumCPUCheck) Name ¶
func (NumCPUCheck) Name() string
Name returns the label for NumCPUCheck
type PortOpenCheck ¶
type PortOpenCheck struct {
// contains filtered or unexported fields
}
PortOpenCheck ensures the given port is available for use.
func (PortOpenCheck) Check ¶
func (poc PortOpenCheck) Check() (warnings, errorList []error)
Check validates if the particular port is available.
func (PortOpenCheck) Name ¶
func (poc PortOpenCheck) Name() string
Name returns name for PortOpenCheck. If not known, will return "PortXXXX" based on port number
type ServiceCheck ¶
ServiceCheck verifies that the given service is enabled and active. If we do not detect a supported init system however, all checks are skipped and a warning is returned.
func (ServiceCheck) Check ¶
func (sc ServiceCheck) Check() (warnings, errorList []error)
Check validates if the service is enabled and active.
func (ServiceCheck) Name ¶
func (sc ServiceCheck) Name() string
Name returns label for ServiceCheck. If not provided, will return based on the service parameter
type SwapCheck ¶
type SwapCheck struct{}
SwapCheck warns if swap is enabled
func (SwapCheck) Check ¶
Check validates whether swap is enabled or not
func (SwapCheck) Name ¶
Name will return Swap as name for SwapCheck
type SystemVerificationCheck ¶
type SystemVerificationCheck struct{}
SystemVerificationCheck defines struct used for running the system verification node check in test/e2e_node/system
func (SystemVerificationCheck) Check ¶
func (sysver SystemVerificationCheck) Check() (warnings, errorList []error)
Check runs all individual checks
func (SystemVerificationCheck) Name ¶
func (SystemVerificationCheck) Name() string
Name will return SystemVerification as name for SystemVerificationCheck
Source Files ¶
checks.go checks_linux.go checks_unix.go utils.go
- Version
- v1.33.0 (latest)
- Published
- Apr 23, 2025
- Platform
- linux/amd64
- Imports
- 33 packages
- Last checked
- 5 hours ago –
Tools for package owners.