03 Hardware and Network - seadogger-tech/seadogger-homelab GitHub Wiki
Hardware & Network
This page captures the practical hardware and network plan that the Ansible playbooks assume, without repeating the full setup guides.
Network Plan (what Ansible expects)
- Nodes use
.localhostnames for provisioning:- Control plane:
yoda.local(e.g., 192.168.1.95) - Workers:
anakin.local,obiwan.local,rey.local(static DHCP reservations)
- Control plane:
- Application hosts use
*.seadogger-homelaband resolve to the Traefik VIP via Pi-hole DNS overrides. - Configure your subnet once in
ansible/config.yml:ipv4_subnet_prefix,ipv4_gateway,dns4_servers
- MetalLB pool and VIPs: see 07-Networking-and-Ingress for the authoritative address ranges and service VIP table.
- Pi-hole host overrides: see
core/deployments/pihole/pihole-values.yamlfor theaddress=/.../192.168.1.241entries pointing at Traefik.
Hardware Summary
- Raspberry Pi 5 nodes (1 control plane + 3 workers)
- PoE switch (recommended) to power PoE HATs and simplify wiring
- NVMe storage on each node (workers sized for Rook‑Ceph data)
- Hard‑wired Ethernet (Wi‑Fi disabled for k3s stability)
Node Configuration (example)
- K3s: v1.32.6+k3s1
- OS: Debian GNU/Linux 12 (bookworm)
- Kernel: 6.6.51+rpt-rpi-2712
Bill of Materials (BoM)
| Item | Quantity | Cost per Unit | Total Cost |
|---|---|---|---|
| Raspberry Pi 5 8GB | 4 | $80 | $320 |
| Raspberry Pi Rack | 1 | $53 | $53 |
| GPIO Header with shorter standoff | 1 | $10 | $10 |
| Raspberry Pi 5 POE HAT with PCIe | 4 | $37 | $148 |
| Crucial P3 4TB NVMe SSD | 3 | $225 | $675 |
| Crucial P3 500GB NVMe SSD | 1 | $38 | $38 |
| Nylon Standoff Kit | 1 | $13 | $13 |
| 64GB sdCard | 1 | $25 | $25 |
| Total (excludes PoE switch) | - | - | $1282 |
Physical reference
![]()
![]()
Next
- Bootstrap and cold‑start flow: 04-Bootstrap-and-Cold-Start
- VIPs and ingress hostnames: 07-Networking-and-Ingress
