NixOSでNvidia GPU対応のベアメタルKubernetesクラスタ構築:ウサギの巣穴冒険記

2025-03-02

著者は、機械学習フレームワークMAZEのスケールアップを目指し、3台のミニPCと1台の引退したワークステーションからなるKubernetesクラスタでNvidia GPUサポートを有効化しようとしました。これは予想以上に困難で、Nvidiaデバイスプラグインの設定、NixOS環境の複雑さ、PKI証明書のデプロイなどの課題がありました。最終的に成功し、NixOS、Ansible、Sopsを使ったKubernetesクラスタのデプロイ経験と、CRI、CDI、nvidia-container-toolkitなどの技術への深い理解を共有しています。また、オープンソースプロジェクトのパッチ適用とビルドを簡素化するツールnix-playgroundを開発し、デバッグにGrok 3を活用しました。その過程で、PyCharmとWSL NixOSの連携問題やKubernetes RuntimeClassの設定などの課題にも直面しました。アリスの冒険のようなこの旅は、著者の優れた実行力と問題解決能力を際立たせています。

開発