在NixOS上搭建支持Nvidia GPU的Kubernetes集群:一场兔子洞冒险

2025-03-02

作者为了扩展其名为MAZE的机器学习框架,尝试在其由三个迷你PC和一台旧工作站组成的Kubernetes集群中启用Nvidia GPU。这个过程远比预期艰难,作者经历了一系列挑战,包括Nvidia设备插件的配置、NixOS环境下的复杂性以及PKI证书的部署。最终,他成功运行了集群,并分享了使用NixOS、Ansible和Sops部署Kubernetes集群的经验,以及对CRI、CDI、nvidia-container-toolkit等技术的深入理解。他还开发了一个名为nix-playground的工具,用于简化开源项目的代码修改和构建过程,并利用Grok 3辅助调试。过程中,作者也遇到了其他问题,例如PyCharm无法打开WSL NixOS项目,以及Kubernetes RuntimeClass的配置。整个过程如同爱丽丝梦游仙境般跌宕起伏,展现了作者强大的执行力和解决问题的能力。

开发 Nvidia GPU