Skip to content

zaivi/homelab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

🏠 Homelab

This repository contains my personal Kubernetes-based homelab, designed to efficiently run and manage home services using limited hardware resources.

🎯 Goal: Build a lightweight, efficient, and scalable Kubernetes platform for home usage.


📚 Overview

This homelab focuses on:

  • ⚖️ Efficient resource usage (CPU, RAM, Storage)
  • 🧩 Running multiple services on minimal hardware
  • 🔁 Automation and self-healing workloads
  • 📊 Observability and monitoring
  • 🏠 Self-hosting everyday services

🧠 Design Principles

  • Lightweight first → optimized for low-power machines
  • Container-native → everything runs in Kubernetes
  • Declarative setup → GitOps-ready configs
  • Cost-efficient → no unnecessary resource waste
  • Highly observable → full monitoring stack

🏗️ Architecture

flowchart LR;
    zaivi((zaivi))
    zaivi_via_tailscale((zaivi))
    router{{router}}

    zaivi -- 192.168.1.110:30000 --> webserver
    zaivi -- 192.168.1.110:30001 --> clickhouse_monitoring
    zaivi -- 192.168.1.110:18789 --> openclaw_core
    zaivi -- 192.168.1.110:{8123, 9000} --> clickhouse_homelab
    zaivi -- 192.168.1.110:80 --> pihole

    zaivi_via_tailscale -- tailscale ip --> airflow[proxy-airflow] & clickhouse[proxy-clickhouse] & openclaw[proxy-openclaw]

    router -- 192.168.1.110:53 --> pihole

    subgraph "microk8s"
        subgraph ns_airflow
            direction TB
            postgres[(postgres)]
            webserver <-.-> postgres <-.-> scheduler -. redis .-> worker
            postgres <-.-> worker
            postgres <-.-> triggerer
        end

        subgraph ns_clickhouse
            direction BT
            clickhouse_operator --> clickhouse_operator
            clickhouse_operator -. provisioning .-> clickhouse_homelab
            clickhouse_homelab[(clickhouse_homelab)]
            clickhouse_monitoring --> clickhouse_homelab
        end

        subgraph ns_openclaw
            direction TB
            openclaw_core[Gateway]
            openclaw_agent[OpenClaw Agent]
            openclaw_memory[Memory Search]
            openclaw_executor[Tool Executor]
            openclaw_prompt[Prompt Builder]
            openclaw_tools[Tools & Capabilities]

            openclaw_core --> openclaw_agent
            openclaw_agent --> openclaw_memory
            openclaw_agent --> openclaw_executor
            openclaw_agent --> openclaw_prompt
            openclaw_agent --> openclaw_tools
        end

        subgraph ns_pihole
            direction TB
            pihole
        end

        subgraph ns_tailscale
            direction TB
            tailscale_operator
            tailscale_operator -.-> airflow[proxy-airflow]
            tailscale_operator -.-> clickhouse[proxy-clickhouse]
            tailscale_operator -.-> openclaw[proxy-openclaw]
            tailscale_operator -.-> etc[...]
        end

        subgraph ns_kubeseal
            sealed_secret_controller
        end
    end;
Loading

About

This repository contains my personal Kubernetes-based homelab, designed to efficiently run and manage home services using limited hardware resources.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors