This is the manual for clusterctl v0.1.0. The latest release is v0.4.0: read its manual.
Environment

Environment

Variables

VariableEffect
CLUSTERCTL_CONFIGReplaces the configuration search path. A PATH-style list of files and directories, most general first.
CLUSTERCTL_CONTEXTSelects the context, as --context does.
CLUSTERCTL_NODESThe node set commands act on when -n is not given.
CLUSTERCTL_FANOUTfanout.max
CLUSTERCTL_CONNECT_TIMEOUTssh.connectTimeout
CLUSTERCTL_COMMAND_TIMEOUTfanout.commandTimeout
CLUSTERCTL_KNOWN_HOSTSssh.knownHostsFile
CLUSTERCTL_SSH_BINARYThe ssh client to run
CLUSTERCTL_SCP_BINARYThe scp client to run
CLUSTERCTL_SSHUTTLE_BINARYThe sshuttle to run
CLUSTERCTL_PAGERworkstation.pager
CLUSTERCTL_BROWSERworkstation.browser

A password is never one of these. BMC_PASSWORD is read only because a credential in the configuration says fromEnv: BMC_PASSWORD.

NO_COLOR and XDG_* are honoured in the usual way.

Where files live

PathHolds
/etc/clusterctl, $XDG_CONFIG_HOME/clusterctlThe configuration, searched in that order
$XDG_STATE_HOME/clusterctlThe generated ssh_config, multiplexing sockets, service processor certificate pins, tunnel process id files
$XDG_CACHE_HOME/clusterctlFetched copies of remote files, resolved group listings

$XDG_CONFIG_HOME defaults to ~/.config, $XDG_STATE_HOME to ~/.local/state, $XDG_CACHE_HOME to ~/.cache.

Both the state and cache directories are created with mode 0700, and nothing in either is authoritative: deleting them costs one round trip.

What clusterctl runs

On your workstation: ssh, scp, and sshuttle where tunnels are used.

On an infrastructure host, depending on the roles a site configures: ipmipower or ipmitool, fping, the Slurm clients and getent, ibportstate and ibqueryerrors, git, tcpdump.

On the nodes: whatever a command was asked to run, plus ibstat, mlxconfig and mst for the adapter commands and the configuration management client for cinc run.

clusterctl doctor --remote checks all of it.