Homelab as Code — Build Your Personal Cloud from Scratch

🧱 Phần 1 — Foundation (Virtualization & Automation)

[Intro] Homelab as Code — Mục tiêu, công cụ và mindset DevOps cá nhân → Giới thiệu mục tiêu series, tại sao lại tự build, tổng quan techstack (Proxmox, Docker, K8s, Terraform, Ansible, Jenkins).

Setup Proxmox — Virtualization cho DevOps Engineer → Cài Proxmox trên VM/GCP, cấu hình bridge network, SSH, repo no-subscription.

Tạo VM tự động bằng Terraform + Proxmox Provider → Học cách mô tả VM bằng code, tạo template cloud-init, automation provisioning.

Quản lý cấu hình bằng Ansible — cài OS, Docker, và công cụ hệ thống → Setup Ansible, viết playbook để cài Docker, k8s dependencies, monitoring tools.

🐳 Phần 2 — Containerization & CI/CD Basics

Docker Deep Dive — Từ image đến Compose và private registry → Giải thích container concept, build image, deploy multi-container app.

Mini Orchestration với Docker Swarm — Hiểu scaling và rolling update → Làm cluster mini, deploy stack, rollback, mạng overlay.

Build CI/CD Pipeline cơ bản với Jenkins + GitHub → Tự động build & push image, trigger deploy qua webhook.

☸️ Phần 3 — Kubernetes & Observability

Triển khai Kubernetes Cluster (k3s/kubeadm) trên lab → Setup 3 node, cài Ingress Controller, expose app.

Deploy Redis, Kafka, và ứng dụng thực tế trên Kubernetes → Helm chart, StatefulSet, Service, ConfigMap, Secret.

Quan sát hệ thống với Prometheus, Loki và Grafana → Collect metric, visualize, logging & alert.

🏗️ Phần 4 — Infrastructure as Code & GitOps

Terraform + Ansible + Helm — “One Command to Build It All” → Tích hợp IaC stack: Terraform (infra), Ansible (config), Helm (app deploy).

GitOps với ArgoCD — Khi CI/CD trở nên tự động hoàn toàn → GitOps pipeline, sync tự động, rollback dễ dàng.

🧠 Bonus

Lessons Learned — Những sai lầm và bài học từ homelab đầu tiên → Chia sẻ thực tế, cost, tips khi chạy trên cloud/local.

Tổng kết & roadmap tiếp theo — từ homelab tới production → Định hướng mở rộng: multi-node, HA, load balancing, monitoring nâng cao.

0 items under this folder.