Skip to main content

Lightweight Kubernetes K3s

Lightweight Kubernetes (K3s) is a highly available, certified Kubernetes distribution designed for production workloads in unattended, resource-constrained, remote locations or inside IoT appliances. See the K3s docs for K3s' features.

To use K3s with default deployment options, add the following to your vcluster.yaml config file:

controlPlane:
distro:
k3s:
enabled: true

Compatiblity matrix

Compatibility matrix showing which host K8s version (left column) is supported by which vCluster K3s distro versions.

v1.29.0-k3s1v1.28.5-k3s1v1.27.9-k3s1v1.26.12-k3s1
1.29🆗🆗🆗
1.28🆗🆗🆗
1.27🆗🆗🆗
1.26🆗🆗🆗

Legend:

⚠️ : known issue

: recommended

🆗 : likely compatible

Config reference

k3s required object pro

K3S holds K3s relevant configuration.

enabled required boolean pro

Enabled specifies if the K3s distro should be enabled. Only one distro can be enabled at the same time.

token required string pro

Token is the K3s token to use. If empty, vCluster will choose one.

env required object[] pro

Env are extra environment variables to use for the main container and NOT the init container.

resources required object pro

Resources for the distro init container

securityContext required object pro

Security options can be used for the distro init container

image required object pro

Image is the distro image

registry required string pro

Registry is the registry of the container image, e.g. my-registry.com or ghcr.io. This setting can be globally overridden via the controlPlane.advanced.defaultImageRegistry option. Empty means docker hub.

repository required string pro

Repository is the repository of the container image, e.g. my-repo/my-image

tag required string pro

Tag is the tag of the container image, e.g. latest

imagePullPolicy required string pro

ImagePullPolicy is the pull policy for the distro image

command required string[] pro

Command is the command to start the distro binary. This will override the existing command.

extraArgs required string[] pro

ExtraArgs are additional arguments to pass to the distro binary.