Revise README for improved clarity and detail

Updated the README to enhance clarity and detail about the HomeLab environment, including sections on architecture, purpose, and future plans.
This commit is contained in:
Chase Dumphord
2026-04-02 17:37:45 -05:00
committed by GitHub
parent df1ed58fa0
commit 600f656164
+116 -77
View File
@@ -1,16 +1,63 @@
# Ced's HomeLab
# 🧠 Ceds HomeLab (Enterprise Infrastructure & Monitoring Lab)
Ced's HomeLab is my personal minidatacenter: a segmented, cloud-connected environment built for learning, experimentation, and portfolio work. It includes:
A production-style homelab designed to simulate real-world infrastructure, system monitoring, and service delivery.
- Proxmox virtualization
- TrueNAS ZFS storage
- A 12-node Raspberry Pi K3s cluster
- Nginx Proxy Manager + Cloudflare Tunnel
- Home Assistant + IoT integration
- Media stack (Arr suite + Jellyfin)
- Observability (Grafana, Prometheus, Uptime Kuma)
This environment functions as a **personal datacenter**, combining virtualization, Kubernetes orchestration, observability, and secure external access.
This repo is the **documentation and configuration hub** for the entire environment.
---
## 🚀 What This Lab Demonstrates
- Infrastructure design (Proxmox + virtualized services)
- Kubernetes orchestration (12-node K3s cluster)
- Network segmentation (VLAN architecture)
- Monitoring & observability (Grafana, Prometheus, Uptime Kuma)
- Secure service exposure (Cloudflare Tunnels + reverse proxy)
- Real-world system integration (data, services, automation)
---
## 🏗️ Architecture Overview
This lab is built around three core layers:
### 🖥️ Infrastructure Layer
- Proxmox VE hypervisor
- Virtual Machines + LXC containers
- TrueNAS storage backend (ZFS, NFS, SMB)
### ☸️ Orchestration Layer
- 12-node K3s Kubernetes cluster
- Workload segmentation (ingress, data, monitoring)
- MetalLB + NGINX ingress
### 🌐 Access & Networking Layer
- VLAN segmented network (UDR)
- Nginx Proxy Manager
- Cloudflare Tunnel (zero port-forwarding)
---
## 🎯 Purpose
This lab is designed to:
- Simulate production-style environments
- Build hands-on infrastructure experience
- Develop monitoring and system visibility skills
- Serve as a real-world engineering portfolio project
---
## 📸 Key System Views
Screenshots and dashboard views will be added as the lab documentation expands.
- Grafana dashboards (Ceds NOC)
- Proxmox cluster view
- K3s node status
- Dashy homepage
- Service monitoring panels
---
@@ -18,12 +65,12 @@ This repo is the **documentation and configuration hub** for the entire environm
The lab runs behind a UniFi Dream Router (UDR) with VLAN segmentation:
| Network | Subnet | Purpose |
|--------------|----------------|---------------------------------|
| Main | 10.10.10.0/24 | Daily-use devices |
| MyHomeIOT | 10.10.20.0/24 | IoT devices, TVs, consoles |
| HomeLab | 10.10.30.0/24 | Servers, services, K3s, storage |
| Guest | 10.10.99.0/24 | Guest Wi-Fi |
| Network | Subnet | Purpose |
|--------|--------|--------|
| Main | 10.10.10.0/24 | Daily-use devices |
| MyHomeIOT | 10.10.20.0/24 | IoT devices, TVs, consoles |
| HomeLab | 10.10.30.0/24 | Servers, services, K3s, storage |
| Guest | 10.10.99.0/24 | Guest Wi-Fi |
The HomeLab VLAN (10.10.30.0/24) hosts all core infrastructure.
@@ -31,123 +78,115 @@ The HomeLab VLAN (10.10.30.0/24) hosts all core infrastructure.
## 🧱 Core Components
### Proxmox VE
### 🖥️ Proxmox VE
- Main hypervisor for VMs and LXCs
- Future expansion to a Proxmox cluster (+5 nodes)
- Uses TrueNAS for shared storage (NFS / iSCSI)
See: [`proxmox/`](proxmox/)
📁 See: `proxmox/`
---
### TrueNAS (ZFS Storage)
### 💾 TrueNAS (ZFS Storage)
- Manages ZFS pools and datasets
- NFS exports for Proxmox VM storage
- SMB / media dataset for Jellyfin & Arr stack
See: [`truenas/`](truenas/)
📁 See: `truenas/`
---
### K3s Raspberry Pi Cluster
### ☸️ K3s Raspberry Pi Cluster
A 12-node K3s cluster built on Raspberry Pi hardware for orchestrating containerized workloads across the lab.
A 12-node K3s cluster (Raspberry Pis) for running:
Current and planned uses include:
- Containerized apps
- Containerized applications
- Ingress-based routing
- GitOps and helm-based workloads (future)
- Monitoring workloads
- Future GitOps and Helm-based deployments
K3s is part of the HomeLab but documented in detail in its own repo:
- https://github.com/ced4568/ced-k3s-homelab
This repo may reference that cluster and contain high-level config patterns.
📌 Full cluster repo:
https://github.com/ced4568/ced-k3s-homelab
---
### Reverse Proxy & Cloudflare Tunnel
- Nginx Proxy Manager (NPM) on the HomeLab VLAN
### 🌐 Reverse Proxy & Cloudflare Tunnel
- Nginx Proxy Manager (NPM)
- Cloudflare Tunnel (no port forwarding)
- Wildcard DNS: `*.cedshomelab.com`
External access flow:
```text
**Traffic Flow:**
Internet → Cloudflare Edge → Tunnel → NPM → Internal Services
```
Docs: [`docs/Add_New_Service_Guide.md`](docs/Add_New_Service_Guide.md)
📁 Docs: `docs/Add_New_Service_Guide.md`
---
### Home Automation
### 🏠 Home Automation
- Home Assistant (Proxmox VM)
- IoT isolated on MyHomeIOT VLAN
- Secure access via Cloudflare + NPM
- `trusted_proxies` configured
- Home Assistant (HA) in Proxmox
- IoT devices isolated on MyHomeIOT VLAN
- HA exposed via Cloudflare + NPM
- `trusted_proxies` configured for NPM
Config snippets: [`home-assistant/configuration-snippets/`](home-assistant/configuration-snippets/)
📁 Config: `home-assistant/`
---
### Observability
### 📊 Observability (Ceds NOC)
- Prometheus scrapes metrics from:
- Proxmox
- K3s
- TrueNAS (future)
- Home Assistant / MQTT (future)
- Grafana dashboards, including a **Ced's NOC** view
The lab includes an observability stack built around:
- Prometheus for metrics collection
- Grafana for dashboards and visualization
- Uptime Kuma for service-level monitoring
Notes and dashboards: [`monitoring/`](monitoring/)
Current and planned monitoring coverage includes:
- Proxmox performance
- K3s cluster health
- Service uptime
- Infrastructure visibility improvements over time
📁 See: `monitoring/`
---
## 🧭 Documentation
- **How to add a new service via NPM + Cloudflare**
[`docs/Add_New_Service_Guide.md`](docs/Add_New_Service_Guide.md)
- **Architecture diagrams (Mermaid)**
[`docs/Ced_Homelab_Diagrams.md`](docs/Ced_Homelab_Diagrams.md)
- **Roadmap / future ideas**
[`docs/roadmap.md`](docs/roadmap.md)
- Add new service: `docs/Add_New_Service_Guide.md`
- Architecture diagrams: `docs/Ced_Homelab_Diagrams.md`
- Roadmap: `docs/roadmap.md`
---
## 🚀 Future Plans
- Full Proxmox cluster
- Cloudflare Zero Trust on critical services
- GitOps for K3s deployments (in ced-k3s-homelab)
- Cloudflare Zero Trust integration
- GitOps for K3s deployments
- Internal container registry
- K3s-specific wildcard routing (`*.apps.cedshomelab.com`)
- More detailed monitoring + alerting
- Visual portfolio site on:
- `chasedumphord.com` or
- `cedshome.com`
- Advanced monitoring + alerting
- Portfolio site:
- chasedumphord.com
- cedshome.com
---
## ⚠️ Secrets & Security
## ⚠️ Security Practices
This repo **never** stores:
This repo never stores:
- API tokens
- Private keys
- Passwords
- Secret YAML files
- Sensitive configs
Any real config with secrets should be kept locally only, or represented here as `*.example` files.
All secrets are handled locally or via `.example` files.
---
## Author
## 👤 Author
**Ced (Chase Dumphord)**
Cybersecurity / GRC / SOC • Full-Stack Dev • Homelab builder
**Chase Dumphord**
Digital Systems Engineer | Infrastructure | Data Systems | Automation
LinkedIn: https://www.linkedin.com/in/toochase-dumphord/
GitHub: https://github.com/ced4568