Deploy Kubernetes on Talos Linux for an immutable, API-managed operating system purpose-built for running Kubernetes clusters securely. This guide provides step-by-step instructions for setting up and managing this technology on your VPS-based Kubernetes infrastructure.
What is Talos Linux
Talos Linux is a modern OS designed specifically for Kubernetes. It is immutable (read-only root filesystem), minimal (no shell, no SSH), and managed entirely through an API. This eliminates configuration drift, reduces the attack surface, and simplifies cluster management.
Installation
# Install talosctl
curl -sL https://talos.dev/install | sh
# Generate cluster configuration
talosctl gen config my-cluster https://192.168.1.10:6443
# This creates:
# controlplane.yaml — configuration for control plane nodes
# worker.yaml — configuration for worker nodes
# talosconfig — client configuration
Creating a Cluster
# Boot nodes with Talos ISO and apply configuration
talosctl apply-config --insecure --nodes 192.168.1.10 --file controlplane.yaml
talosctl apply-config --insecure --nodes 192.168.1.11 --file worker.yaml
# Bootstrap the cluster
talosctl bootstrap --nodes 192.168.1.10
# Get kubeconfig
talosctl kubeconfig --nodes 192.168.1.10
# Verify
kubectl get nodes
Proxmox Integration
# Download Talos ISO for Proxmox
wget https://github.com/siderolabs/talos/releases/latest/download/metal-amd64.iso
# Create VMs in Proxmox with:
# - 2+ vCPU, 4GB+ RAM
# - Boot from Talos ISO
# - VirtIO network and disk
# After boot, apply config via talosctl
talosctl apply-config --insecure --nodes <VM_IP> --file controlplane.yaml
Upgrades
# Upgrade Talos OS (rolling, zero-downtime)
talosctl upgrade --nodes 192.168.1.10 \
--image ghcr.io/siderolabs/installer:v1.7.0
# Upgrade Kubernetes
talosctl upgrade-k8s --to 1.30.0
Summary
Talos Linux provides the most secure and maintainable foundation for Kubernetes clusters. Its API-driven, immutable design eliminates the need for SSH access and traditional OS management. For production Kubernetes on VPS or bare metal, Talos offers the smallest attack surface and simplest upgrade path of any Kubernetes distribution.