Mi Homelab

Documentación detallada y actualizada de mi homelab.

Dominio: dap.gal

Pd: este es mi DRP.


Hardware

  • Red
  • Router: ISP
  • Switch: NETGEAR GS308E 8 Puertos Gestionado

  • Cómputo

  • Raspberry Pi 5

    • CPU: 4 cores
    • RAM: 8GB
    • EXP: M.2 HAT
    • SDA: 128GB SSD
    • S.O: RasPi OS Lite
  • 2x Lenovo ThinkCentre M920X Tiny

    • CPU: Core i3 3.6GHz
    • RAM: 16GB DDR4
    • SDA: 256GB SSD
    • S.O: ProxmoxVE
  • Failover -> Custom server:

    • CPU: Ryzen 5 5400G
    • RAM: 2x8GB 3200Mhz
    • SDA: M.2 SSD 256GB
    • SDB: SSD SATA1 1TB
    • SDC: SSD SATA2 1TB
  • Almacenamiento (NAS)

  • Comming soon...

Esquema

Baremetal

  • Router (192.168.1.1)
  • SwitcH (192.168.1.254)
  • rp5-01 (192.168.1.11)
  • srv-01 (192.168.1.21)
  • srv-02 (192.168.1.22)
  • nas-01 (192.168.1.31)

Virtual

rp5-01

Contenedor S.O. Soft IP
rp5-01-ct-dns Debian 12 Pi-Hole 192.168.1.50
rp5-01-ct-proxy Debian 12 Traefik 192.168.1.51
rp5-01-ct-qdev Debian 12 corosync-qnetd 192.168.1.52
rp5-01-ct-ssh Debian 12 Openssh 192.168.1.53
rp5-01-ct-stats Debian 12 Prometheus + Grafana 192.168.1.54
rp5-01-ct-vpn Debian 12 Wireguard 192.168.1.103

cls-01

cls01-srv01
Contenedor S.O. Soft IP
cls01-srv01-ct-home Debian 12 Homepage 192.168.1.100
cls01-srv01-ct-passwd Debian 12 Vaultwarden 192.168.1.101
cls01-srv01-ct-samba Debian 12 Samba 192.168.1.102
cls01-srv01-ct-photos Debian 12 Immich 192.168.1.103
cls01-srv01-ct-cloud Debian 12 Nextcloud 192.168.1.104
cls01-srv02
Contenedor S.O. Soft IP
cls01-srv02-ct-whost Debian 12 Nginx 192.168.1.151
cls01-srv02-ct-git Debian 12 Gitea 192.168.1.152
cls01-srv02-ct-pdf Debian 12 Stirling 192.168.1.153
cls01-srv02-ct-tv Debian 12 Jellyfin 192.168.1.154
cls01-srv02-ct-music Debian 12 Navidrome 192.168.1.154

Objetivo

Construir un home-datacentre de bajo consumo, con redundancia de datos y Alta Disponibilidad.

Para conseguir esto, el cluster se configura para que srv01 y srv02 repliquen sus datos, garantizando que son copias identicas, y si un nodo muere, el otro puede asumir toda la carga.

Nota: Para que la HA sea funcional, se necesita un tercer nodo en el cluster, formando un quorum entre 3 nodos. Para conseguir esto sin un tercer nodo, se crea en la rp5-01 un qdevice, que simula un tercer nodo en el cluster. Este indicará que en caso de que un nodo/contenedor muera, el otro nodo asuma la carga.


Canal de YouTube

Publicaré videos sobre este proyecto en mi canal de YouTube. Desde overviews del homelab hasta guías paso a paso para la instalación de cada servicio.

-> https://www.youtube.com/@davidalvarezp

Documentación

Raspberry Pi 5 (BM01-pi5)

  1. Configuración del host
  2. Configuración de LXC
  3. Contenedores base
  4. Contenedores de infraestructura
  5. Contenedores de servicios

Requisitos

  • Host físico/virtual 24/7
  • Conexión por Ethernet
  • Conocimientos básicos Linux

Filosofía

  • Sin cajas negras.
  • Todo Open-Source.
  • Solo Linux.