Talos Linux¶
Talos Linux is an immutable, minimal OS designed specifically for Kubernetes. Version 1.12.4 is deployed.
Configuration¶
Talos configuration is managed through talhelper and Jinja2 templates.
File Locations¶
| Path | Purpose |
|---|---|
templates/config/talos/talconfig.yaml.j2 |
Main Talos config template |
talos/patches/global/ |
Patches applied to all nodes |
talos/patches/controller/ |
Controller-specific patches |
talos/patches/worker/ |
Worker-specific patches |
talos/patches/vm-node/ |
KubeVirt VM node patches |
talos/patches/${hostname}/ |
Per-node patches |
talos/clusterconfig/ |
Generated configs (gitignored) |
Patch System¶
Talos uses a layered patch system. Patches are applied in order:
- Global patches (all nodes)
- Role-specific patches (controller or worker)
- VM-node patches (KubeVirt nodes)
- Per-hostname patches
Common Operations¶
Generate Config¶
Apply Config to a Node¶
Mode options: auto, no-reboot, reboot, staged
Upgrade Talos Version¶
Tip
Update talosVersion in talenv.yaml before upgrading.
Upgrade Kubernetes Version¶
Reset Cluster¶
Danger
This destroys the entire cluster. Repeated resets may trigger rate limits from DockerHub or Let's Encrypt.
Adding a New Node¶
- Boot the new node with Talos in maintenance mode
-
Get disk and MAC address info:
-
Add the node to
talconfig.yaml -
Generate and apply:
The node joins automatically and begins accepting workloads.