Mon homelab

Je suis naturellement curieux, et lorsque quelque chose m'intéresse, j'aime creuser le sujet et comprendre son fonctionnement. Dans mon rôle de développeur, j'ai envie que le code que j'écris puisse être en production facilement et rapidement. C'est pourquoi j'ai été attiré par les Plateformes d'Hébergement Automatisées (PAAS) comme Heroku, Clever Cloud ou Vercel, j'ai aussi eu une phase serverless avec AWS Lambda.

La mise en œuvre de ces systèmes est relativement simple du point de vue du développeur: quelques clics dans une interface, un git push et hop ! La nouvelle version de votre application est en ligne. Cependant, pour comprendre comment fonctionne réellement un tel système, ce n'est pas la meme chose.

Alors pourquoi avoir un homelab ? J'aurais pu me contenter d'expérimenter avec des VMs dans le cloud, mais non, j'ai eu besoin de concret. Je suis donc passé sur eBay et j'ai acheté un serveur d'occasion, ce qui date un peu car c'était pendant le confinement...

Le matériel

Au niveau matériel, j'ai :

  • Un serveur HP Proliant DL380e Gen 8, avec 2 processeurs Xeon E5-2420L v2 de 6 cores/12 threads chacun et 64 Go de RAM (128 Go aujourd'hui car les choses ont dérapé...).
  • Un mini PC.
  • Un vieux NAS Synology 5 baies.

Au niveau réseau, j'utilise la gamme Omada de TP-Link :

  • Un combo switch/routeur/contrôleur.
  • 2 switchs POE SFP, un pour l'étage/bureau et un pour l'atelier.
  • 3 points d'accès Wi-Fi POE, un pour le RdC, un pour l'étage et un pour l'extérieur.
  • Un switch Netgear que j'avais dans la vieille maison.

Tout est installé confortablement dans un rack 19'' de 15 unités.

Les logiciels

Je héberge pas mal de services, principalement dans des VMs. J'utilise Proxmox, avec 2 nœuds, l'un sur le serveur HP et l'autre sur le mini-PC.

L'OS que j'utilise sur les VMs est NixOS.

Les applications

  • Dev :
    • Gitea
    • Woodpecker
    • Penpot
    • Plane
  • BDD :
    • Postgres / PGAdmin
    • MySQL
    • Qdrant
    • NoCodb
    • Metabase
  • Workflow :
    • N8N
  • IA :
    • Ollama
    • OpenWeb UI
    • Fooocus
  • Blog :
    • Ghost
  • VPN :
    • Headscale

Pour les applications d'IA, j'ai installé une petite carte GPU NVIDIA Tesla P4 dans le serveur HP. Les performances sont loin d'être folles, mais ça fait le job pour l'instant. Je guette toujours sur eBay si je trouve un serveur capable d'accueillir de plus gros GPU.

À suivre

Je vais revenir en détail sur les applications que j'utilise et pourquoi je les utilise dans des articles à venir.