Skip to content

KubeKey Environment Validation

KubeKey Environment Validation is an automated pre-flight check performed by the kk (KubeKey) binary before proceeding with a Kubernetes or KubeSphere installation^[99.k8s-all-in-one__README.md].

Validation Process

When the user initiates a cluster creation (e.g., using ./kk create cluster), KubeKey automatically performs a "simple check" of the target environment^[99.k8s-all-in-one__README.md]. This validation verifies the presence of specific system dependencies and utilities required for the installation to succeed^[99.k8s-all-in-one__README.md].

The tool validates the status of the following components^[99.k8s-all-in-one__README.md]: * System Utilities: sudo, curl, openssl * Network Dependencies: ebtables, socat, ipset, conntrack * File System Support: nfs client, glusterfs client * Optional Services: docker, ceph client

Output and Confirmation

The validation results are displayed in a formatted table within the terminal output^[99.k8s-all-in-one__README.md]. For each detected component, the table indicates whether it is present (typically marked with a y)1. The output also includes the timestamp of the check and the target machine's name^[99.k8s-all-in-one__README.md].

After displaying the validation table, the installation process pauses and prompts the user to confirm whether they wish to continue^[99.k8s-all-in-one__README.md]. This provides an opportunity to review the environment status and ensure all requirements are met before downloading installation files^[99.k8s-all-in-one__README.md].

Manual Prerequisites

While the automated check handles runtime dependencies, the source material indicates that certain core networking packages must be installed manually on the system prior to running the KubeKey script^[99.k8s-all-in-one__README.md]. Specifically, packages such as ebtables, socat, ipset, and conntrack should be pre-installed using a package manager like yum^[99.k8s-all-in-one__README.md].

Sources

^[99.k8s-all-in-one__README.md]


  1. Inferred from the table row showing "y" for installed items like curl and openssl