Show examples as

kctl CLI reference

kctl is the command-line interface for managing kcore clusters. Global flags: -s / --controller (controller address, repeatable for HA), -k / --insecure (skip TLS verification), -c / --config (path to config file), --node (node address for direct node commands).

You are browsing in YAML mode. This page lists CLI commands; for manifest kinds and fields see the YAML manifest reference.

create

SubcommandDescription
vmCreate a VM from CLI flags or -f YAML manifest
containerCreate a container on a node
networkCreate a network
clusterInitialise PKI and mTLS context for a new cluster

get

SubcommandAliases
vmsvm
containerscontainer
nodesnode
networksnetwork
storage-classesstorage-class
compliance-reportcompliance
conflicts
replication-status

describe

SubcommandAliases
vmvms
nodenodes
networknetworks
storage-classstorage-classes
ssh-keysshkey
compliance-reportcompliance

delete

SubcommandDescription
vmDelete a VM
networkDelete a network
imageDelete a stored image
containerDelete a container

start / stop

SubcommandDescription
vmStart or stop a VM
containerStart or stop a container

set

SubcommandDescription
vmSet desired state (running / stopped). Supports --target-node.

update

SubcommandDescription
vmResize CPU / memory of a VM. Supports --target-node.

node

SubcommandDescription
disksList disks on a node
nicsList network interfaces on a node
installInstall kcore on a bare-metal node
approveApprove a pending node join request
rejectReject a pending node join request
apply-nixApply NixOS configuration to a node
apply-diskoApply Disko disk layout to a node
upload-imageUpload a VM image to a node

ssh-key

SubcommandDescription
createRegister a new SSH public key
deleteRemove an SSH key
listList all SSH keys
getShow details for an SSH key

drain

SubcommandDescription
nodeLive-migrate all VMs off a node. Use --target-node to specify the destination node.

rotate

SubcommandDescription
certsRotate the controller TLS certificate
sub-caGenerate a new sub-CA

apply

Apply a NixOS configuration to the controller. Flags: -f (config file), --dry-run (preview without applying).

workload

SubcommandDescription
createCreate a workload. Use --kind container or --kind vm.
listList all workloads
getShow workload details
deleteDelete a workload
startStart a workload
stopStop a workload

security-group (alias: sg)

SubcommandDescription
createCreate a security group from -f YAML
applyApply / update a security group from -f YAML
listList all security groups
getShow security group details
deleteDelete a security group
attachAttach a security group to a VM or network
detachDetach a security group from a VM or network