这个项目能做什么

tux2lab 将 Linux 工作站转变为用于家庭实验室的自动化虚拟数据中心。它通过 PXE 启动和黄金镜像配置 KVM 虚拟机,管理完整的虚拟机生命周期(部署、调整大小、快照、销毁),并在单个最小的 Podman 容器(约 60 MB,基于 Alpine)中运行所有实验室网络服务——DNS (BIND)、DHCP (Kea)、PXE/TFTP (iPXE)、NTP (chrony)、HTTP/HTTPS (nginx)、IPv6 RA 和 NFS。 该项目完全使用 Bash 脚本(JBOBS)进行编排,不依赖框架或外部语言。它支持 Red Hat 系列(AlmaLinux、Rocky、Oracle Linux、CentOS Stream、RHEL)、Debian 系列(Ubuntu、Debian)、SUSE(openSUSE Leap)和 Azure Linux 发行版。 主要功能包括: - 自动化黄金镜像构建,实现近乎瞬时的虚拟机部署 - 双栈网络(IPv4 + IPv6 ULA),支持每虚拟机配置 - 通过 dnsbinder 进行动态 DNS 管理 - 通过 nginx stream 进行 TCP 负载均衡器管理(lbmanager) - 完整 CLI:`tux2lab vm install`、`resize`、`snapshot`、`console` 等 - 主机设置脚本,安装 QEMU/KVM、libvirt、Podman,并配置 `labbr0` 桥接 - 持久状态存储在容器内的 `/tux2lab-data/` 中 最低要求:每个客户虚拟机 2 GiB 内存、2 个 vCPU、30 GiB 磁盘;KVM 主机需基于 RHEL、Ubuntu 或 openSUSE,并支持硬件虚拟化。 用例包括运行高可用 Kubernetes 集群和其他基础设施实验。该项目采用 GPL v3.0 许可证。