𝔩𝔢𝔩𝕠𝔭𝔢𝔷
Theme
Connect With Me on LinkedIn Buy Me a Coffee

Homelab

Talos Kubernetes Homelab Series

Building a Kubernetes Homelab with Talos Linux, Flux GitOps, and Intel Arc GPU Transcoding

Overview

This series documents my journey rebuilding my home infrastructure from scratch using modern tools and practices. If you're looking to build a homelab with Kubernetes, GPU-accelerated media streaming, and secure remote access, this guide is for you.

Tip:See v1.0.0 for the complete repository. Each article links to its corresponding milestone tag.

Before You Begin

Prerequisites

Before starting, you should have:

  • Linux/Unix experience: Comfortable with command line
  • Kubernetes basics: Understanding of pods, services, deployments
  • Networking fundamentals: IP addresses, subnets, DNS
  • Git familiarity: Version control basics

You don't need to be an expert, but you should be willing to learn and troubleshoot.

What We're Setting Up

A complete home lab infrastructure featuring:

  • Kubernetes Cluster: 3-node cluster running Talos Linux1 (immutable, secure, API-driven)
  • Media Server: Plex with Intel Arc GPU hardware transcoding
  • VPN Access: Tailscale2 mesh network for secure remote access
  • Game Servers: Minecraft & Factorio accessible via playit.gg tunnels
  • Infrastructure as Code: Everything version-controlled and reproducible

Why This Approach

Infrastructure as Code First: Every configuration is in Git. If something breaks, you can rebuild from scratch in hours, not days.

Security by Default: Talos Linux has no SSH access and minimal attack surface. Tailscale provides zero-trust networking.

GPU Acceleration: Intel Arc 140T enables multiple simultaneous Plex streams with hardware transcoding.

Distributed Storage: Longhorn3 provides replicated block storage across nodes - volumes follow workloads automatically.

GitOps with Flux: One bootstrap command, then all changes via Git. Flux4 pulls and applies HelmReleases automatically. Need to rebuild the cluster? Just bootstrap Flux again - everything else comes from Git.

Journey Documentation: This isn't prescriptive - it's documentation of my actual journey. Questions are explored, alternatives are considered, and decisions are explained with context. You'll see what worked, what didn't, and why.

What's Not In Scope

This series doesn't cover:

  • NAS storage for bulk media (UNAS Pro or similar)
  • Public exposure via self-hosted tunnels (frp, Cloudflare Tunnel)

If exposing services publicly, implement network hardening (VLAN segmentation) first.

Follow the Series

Follow these articles in order to build your own home lab:

Phase 1: Physical Setup (requires being on-site)

  1. GEEKOM Mini PC Cluster Hardware - Hardware specifications
  2. UniFi Flat Network Setup - Network topology and UniFi configuration
  3. Talos Linux USB Installation - Install Talos on nodes (boot from USB)
  4. SOPS and Age GitOps Secrets - Set up Git repository and SOPS encryption
  5. Talhelper Cluster Bootstrap - Generate configs, bootstrap cluster

Phase 2: Remote Management (last steps on-site)

  1. Flux CD Kubernetes GitOps - GitOps (push to deploy)
  2. Tailscale Kubernetes Subnet Router - Full kubectl access ← Work remotely after this!

Phase 3: Infrastructure (can be done remotely)

  1. MetalLB, Longhorn, and Ingress-NGINX - MetalLB, Ingress-NGINX, Longhorn
  2. Intel Arc Kubernetes DRA - Intel Arc GPU passthrough

Phase 4: Applications (can be done remotely)

  1. Plex Intel GPU Transcoding - Plex with GPU transcoding (hostPath)
  2. Factorio Kubernetes Server - Factorio dedicated server
  3. Minecraft Paper Server - Minecraft server (Paper)

Appendix: Reference & Troubleshooting

Getting Help

If you get stuck:

  1. Consult official docs (Talos, Kubernetes, Flux, Tailscale)
  2. Leave a comment on the article - I'll try to help
  3. Ask in community forums (r/homelab, r/kubernetes, Talos Slack)

What's Next?

Ready to begin? Start with the hardware overview.

See: GEEKOM Mini PC Cluster Hardware

Resources

Footnotes

  1. Sidero Labs, "Talos Linux," talos.dev. Accessed: Dec. 16, 2025. [Online]. Available: https://www.talos.dev/

  2. Tailscale, "Tailscale," tailscale.com. Accessed: Dec. 16, 2025. [Online]. Available: https://tailscale.com/

  3. Longhorn, "Longhorn - Cloud native distributed block storage for Kubernetes," longhorn.io. Accessed: Dec. 16, 2025. [Online]. Available: https://longhorn.io/

  4. Flux CD, "Flux - the GitOps family of projects," fluxcd.io. Accessed: Dec. 16, 2025. [Online]. Available: https://fluxcd.io/