À propos du projet

tux2lab transforme un poste de travail Linux en un datacenter virtuel automatisé pour un usage homelab. Il provisionne des machines virtuelles KVM via démarrage PXE et images golden, gère l'intégralité du cycle de vie des VM (déploiement, redimensionnement, snapshot, destruction), et exécute tous les services réseau du labo—DNS (BIND), DHCP (Kea), PXE/TFTP (iPXE), NTP (chrony), HTTP/HTTPS (nginx), RA IPv6 et NFS—dans un unique conteneur Podman minimal (~60 Mo basé sur Alpine). Le projet est entièrement orchestré avec des scripts Bash (JBOBS), sans frameworks ni langages externes. Il prend en charge les distributions de la famille Red Hat (AlmaLinux, Rocky, Oracle Linux, CentOS Stream, RHEL), de la famille Debian (Ubuntu, Debian), SUSE (openSUSE Leap) et Azure Linux. Les principales fonctionnalités incluent : - Construction automatisée d'images golden pour un déploiement quasi instantané des VM - Réseautage double pile (IPv4 + IPv6 ULA) avec configuration par VM - Gestion DNS dynamique via dnsbinder - Gestion d'équilibreur de charge TCP via nginx stream (lbmanager) - CLI complète : `tux2lab vm install`, `resize`, `snapshot`, `console`, et plus - Script de configuration de l'hôte qui installe QEMU/KVM, libvirt, Podman et configure le pont `labbr0` - État persistant stocké dans `/tux2lab-data/` sous le conteneur Exigences minimales : 2 Gio de RAM, 2 vCPU, 30 Gio de disque par VM invitée ; hôte KVM sous RHEL, Ubuntu ou openSUSE avec virtualisation matérielle. Les cas d'usage incluent l'exécution de clusters Kubernetes hautement disponibles et d'autres expérimentations d'infrastructure. Le projet est sous licence GPL v3.0.