Home Lab with Refurbished Thin Clients

Refurbished thin clients powering a compact Kubernetes home lab

This document details the construction of a low-power, cost-effective Kubernetes home lab using refurbished thin clients. Aimed at technical audiences, it provides accurate hardware specifications, setup procedures, and performance insights for container orchestration learning and experimentation.

Key Advantages

  • Feasibility: Transforming three refurbished thin clients into a functional Kubernetes cluster using Proxmox and Talos Linux is technically viable and demonstrably successful.
  • Energy Efficiency: The system achieves a low idle power consumption of 28 Watts, minimizing operational costs.
  • Cost-Effectiveness: The total hardware and upgrade cost is approximately $412 (based on 2023 pricing), offering significant value for a Kubernetes learning environment.
  • Practicality: This setup serves as a practical home lab environment suitable for learning, testing, and deploying containerized applications. A successful NGINX deployment validates its functionality.

Hardware Overview and Justification

The home lab is built using a combination of Lenovo and HP thin clients, chosen for their compact form factor, energy efficiency, and upgradability.

  • Nodes:

    • 2 x Lenovo ThinkCentre M700 Tiny: (Core i3-6100T, 32GB RAM, 512GB M.2 SATA each) - $33 each
      • Justification: Cost-effective entry point with sufficient processing and memory for worker nodes. Supports Gen6 Intel Core and known for ~27-30W idle consumption.
    • 1 x HP EliteDesk 800 G3 DM: (i5-6500T, 64GB RAM, 1TB PCIe 4.0) - $43
      • Justification: Higher performance node for control plane or resource-intensive workloads. 1L form factor and energy-efficient design aligns with home lab requirements.
  • Upgrades:

    • 4 x 16GB DDR4 SODIMM (~$80 total)
    • 2 x 512GB M.2 SATA SSDs (~$50 total)
    • 2 x Lenovo DC plug to USB-C PD triggers (~$6 total)
    • 2 x 32GB DDR4 SODIMM (~$100 total)
    • 1 x 1TB PCIe 4.0 SSD (~$67 total)

Detailed Cost Breakdown (Approximate 2023 Pricing):

Component Quantity Unit Cost Total Cost
Lenovo ThinkCentre M700 Tiny 2 $33 $66
HP EliteDesk 800 G3 DM 1 $43 $43
16GB DDR4 SODIMM 4 ~$20 $80
512GB M.2 SATA SSD 2 $25 $50
Lenovo DC plug to USB-C 2 ~$3 $6
32GB DDR4 SODIMM 2 ~$50 $100
1TB PCIe 4.0 SSD 1 $67 $67
Total $412

Note: Prices are indicative from 2024 and may vary. Verify current pricing for accurate cost estimation.

USB PD Display port to HDMI Back view
USB PD Display port to HDMI RAM

Software Stack and Configuration

The setup leverages open-source software for virtualization and container orchestration:

  1. Proxmox VE: Installed as the hypervisor on each thin client.

    • Justification: Open-source, Debian-based, robust hypervisor simplifying VM management via a web interface. Supports a wide range of hardware and is suitable for home lab environments. (Proxmox VE)
    • Installation Process:
      1. Download Proxmox VE ISO.
      2. Boot each thin client from ISO.
      3. Follow installation wizard, configuring network settings to ensure all nodes are on the same subnet for cluster communication.
      4. Verify hardware compatibility.
  2. Talos Linux: Deployed as virtual machines within Proxmox to form the Kubernetes cluster.

    • Justification: Immutable, secure, and purpose-built for Kubernetes. Declarative configuration simplifies management and optimization for cluster operations. (Talos Linux)
    • VM Setup within Proxmox:
      1. Download Talos Linux ISO.
      2. Create VMs in Proxmox, allocating resources based on host capabilities. HP EliteDesk can host more resource-intensive VMs due to higher RAM capacity.
      3. Install Talos Linux within each VM.
  3. Kubernetes Cluster Configuration (Talos CLI):

    Visit the Talos Linux Getting Started Guide (https://www.talos.dev/v1.9/introduction/getting-started/) for a detailed walkthrough on setting up your Kubernetes cluster.

Performance and Efficiency

  • Power Consumption: Measured at 28 Watts idle, confirming energy efficiency and low operational cost.
  • Cost-Effectiveness: Total setup cost of ~$412 provides a highly affordable Kubernetes learning and testing platform.

Power Consumtion

Benefits of Talos Linux for Kubernetes Home Lab

  • Enhanced Security: Immutable OS design reduces attack surface and improves system integrity.
  • Simplified Management: Declarative configuration model streamlines cluster deployment and maintenance.
  • Optimized for Kubernetes: Designed specifically for container orchestration, maximizing resource utilization on limited hardware.

Potential Use Cases

  • Learning Kubernetes administration and container orchestration.
  • Testing Kubernetes deployments and configurations.
  • Running small-scale containerized applications for home services.
  • Setting up CI/CD pipelines for development projects.

Expansion and Troubleshooting

  • Expansion: Easily scalable by adding more thin client nodes. Explore other Kubernetes distributions or integrate monitoring and logging tools for advanced setups.
  • Troubleshooting:
    • Network Connectivity: Ensure all nodes are on the same subnet and can communicate for cluster formation.
    • Resource Allocation: Monitor VM resource usage and adjust RAM/CPU allocation as needed, especially for Kubernetes components.
    • Power Monitoring: Utilize tools like powertop (Linux) to further optimize power consumption if required.

Conclusion

This project demonstrates the viability of building a powerful, energy-efficient, and cost-effective Kubernetes home lab using refurbished thin clients. The combination of Proxmox and Talos Linux provides a robust platform for learning and experimenting with container orchestration, making it an accessible and valuable resource for technical enthusiasts.

Tobias Klingel
Tobias Klingel
Head of Information Security