Skip to content

mkectl check hosts

mkectl check hosts#

Run read-only pre-flight checks against the hosts in an MKE 4 config

Synopsis#

Run read-only pre-flight checks against every host in an MKE 4 config, without provisioning anything or mutating config or cluster state.

For each host, connects over SSH and validates: - supported OS (Ubuntu/RHEL/Rocky per MKE 4's support matrix) - available storage - CPU cores - total memory - cgroup v2 (required by k0s 1.35+)

Connectivity is best-effort: a host that fails to connect is reported as a failed row rather than aborting the whole run, so one bad host in a large batch does not hide results for the rest. Results are grouped by check, each one listing every host's outcome under it (printed to stdout, or written to the output directory's preChecks.txt when --output is set), the same way check mke3 and upgrade report their pre-run checks.

The command exits non-zero if any host failed to connect or failed any check, so it can be used as a go/no-go gate in a CI/CD pipeline before a maintenance window, or to validate a batch of new hosts before a large node add.

mkectl check hosts [flags]

Options#

      --concurrency int   Maximum number of nodes to configure in parallel, set to 0 for unlimited (default 30)
  -h, --help              help for hosts

Options inherited from parent commands#

  -d, --data-dir string                                             Path to use for storing kubernetes provider data. Applies to all nodes in the cluster. If desiring to reuse docker data dir, please use a path under it instead of the exact path. Defaults to /var/lib/k0s (default "/var/lib/k0s")
  -f, --file string                                                 path to the config file. Not needed for restore where config is loaded from the backup (default "mke4.yaml")
      --force                                                       Bypass user confirmations
      --kubeconfig string                                           path to the kubeconfig file of the existing or restored cluster. DO NOT USE when creating a new cluster (default "/home/runner/.mke/mke.kubeconf")
  -l, --logLevel string                                             specify a log level (info, warn, debug, trace, error) (default "info")
      --no-color                                                    when provided, disables colored output
      --no-pretty-print                                             when provided, disables pretty print output formatting
  -o, --output string[="/home/runner/.local/state/mke/mke-check"]   Path to create the upgrade output files (summary, configs, checks). If not provided, they will be printed to standard output.
      --version version[=true]                                      --version, --version=raw prints version information and quits; --version=vX.Y.Z... sets the reported version