Supported Operating Systems
This page lists the operating systems Tarook supports for each node type. Operating systems not listed here are not officially supported.
Tarook distinguishes between the following support levels:
- Supported
Tested and maintained by the Tarook project. Suitable for production clusters.
- Known to work
Known to work and accepted for bug reports, but not covered by automated testing. Fixes are provided on a best-effort basis.
- Experimental
Can be used, but may not be fully supported, yet. Known issues and breaking changes are possible. Not recommended for production clusters.
- Deprecated
Support will be discontinued in a future release. See the Deprecation Policy.
CPU Architecture
Tarook only supports the x86_64 (amd64) architecture, for both gateway nodes and Kubernetes nodes. Other architectures, such as arm64 (aarch64), are not supported.
Gateway Nodes
Gateway nodes are individual machines running in front of the cluster when using OpenStack as undercloud. They act as frontend nodes, see Architecture Overview.
Operating system |
Release |
Support level |
|---|---|---|
Debian |
12 (Bookworm) |
Known to work |
Debian |
13 (Trixie) |
Supported |
Kubernetes Nodes
This applies to both control plane and worker nodes (including GPU workers).
Operating system |
Release |
Support level |
|---|---|---|
Ubuntu |
22.04 LTS (Jammy Jellyfish) |
Deprecated [1] |
Ubuntu |
24.04 LTS (Noble Numbat) |
Supported |
Ubuntu |
26.04 LTS (Resolute Raccoon) |
Supported |
Debian |
13 (Trixie) |
Experimental [2] |
Important
Recent kubeadm versions have a
known issue (#909)
on operating systems that use systemd-resolved,
which affects all operating systems listed above.
Set resolvConf for kubelet to /run/systemd/resolve/resolv.conf
explicitly.
The recommended place is
yk8s.kubernetes.kubelet.defaultOptions:
yk8s.kubernetes.kubelet.defaultOptions = {
resolvConf = "/run/systemd/resolve/resolv.conf";
};
To set it only for some nodes, use yk8s.kubernetes.kubelet.masterOptions, yk8s.kubernetes.kubelet.workerOptions or yk8s.kubernetes.kubelet.nodeOptions instead.