Nutanix Enterprise AI(NAI)2.6 を、Nutanix Kubernetes Platform(NKP)v2.17.1 のクラスタに展開してみます。まずは、前提となる Nutanix AHV クラスタの準備について説明します。
- 参考:使用した Nutanix ソフトウェアのバージョン
- 1. Nutanix AHV のクラスタの準備
- 2. Prism Central の準備
- 3. DNS サーバーの準備
- 4. NTP サーバーの準備
- 5. NFS サーバーの準備
- 6. Bootstrap マシン 兼 作業用マシンの準備
ほかの NAI 関連投稿については、下記をどうぞ。
参考:使用した Nutanix ソフトウェアのバージョン
今回は、たまたまあった環境を利用しているので、ソフトウェア間で完全な互換性がある構成ではありません。参考情報として、使用したソフトウェアのバージョンを残しておきます。
- AOS 7.3.1.2
- AHV 10.0.1
- Nutanix Files Storage 5.2.1
- Prism Central pc.7.5.0.1
- Nutanix Kubernetes Platform v2.17.1
- Nutanix Enterprise AI 2.6
1. Nutanix AHV のクラスタの準備
NKP + NAI の展開先として、GPU 搭載ホストによる、AHV の Nutanix クラスタを用意しておきます。
1-1. Nutanix AHV のクラスタの準備
Nutanix クラスタについては、Nutanix Foundation を使用した一般的なクラスタ展開なので、今回は手順を省略します。
AHV クラスタには、下記の仮想マシンを起動できるリソースを確保しておきます。
Control Plane 仮想マシン
- vCPU:4
- メモリ:16 GB メモリ
- ノード数:3
Worker 仮想マシン
- vCPU:16(ドキュメントので要件では 8 だが、実際には不足)
- メモリ:32 GB
- ノード数:3
Worker 仮想マシン(GPU ノードプール)
- vCPU:16
- メモリ:40 GB
- GPU:1以上(パススルー接続)
- ノード数:1 台以上
リソース要件については、下記のドキュメントが参考になります。
1-2. ストレージ コンテナの用意
NKP クラスタの Kubernetes ノード仮想マシンを展開する、ストレージ クラスタを用意しておきます。これは、Nutanix クラスタ展開時にデフォルトで作成されるものでも問題ありませんが、あえて今回はわかりやすい名前のものを追加作成してあります。
- ストレージ コンテナ:default-container-01
1-3. iSCSI Data Services IP アドレスの設定
Nutanix CSI Driver から Nutanix Volumes Block Storage の Volume Group を使用するため、NKP の環境を構築する前に、Nutanix クラスタに iSCSI Data Services IP アドレスを設定しておきます。
1-4. サブネットの用意
NAI の環境は、ネットワーク(サブネット)は1つでも構築できます。
今回は、下記のサブネットを作成してあります。
- サブネット名:vlan-0-ipam
- Basic VLAN
- IPAM を有効化(NKP の Kubernetes ノード仮想マシンがインターネット接続できるように、IP アドレス プールや DNS サーバーを設定しておく)
このラボのネットワークは1つのみなので、このあと用意する Nutanix Files Storage ファイル サーバーでは、Internal / External ネットワークを、両方とも同じサブネットに接続します。
1-5. GPU
今回は、AHV ホストに NVIDIA A16を搭載してあります。
- この GPU は、Prism Central では「Ampere 16」という名前で認識されています。
- この GPU は NAI ではサポートされていませんが、ラボにほかの GPU 搭載マシンがないのでやむなく使用しています。
また、NKP ノードの仮想マシンでは GPU Passthrough(パススルー)接続で使用するので、AHV 側では特に GPU ドライバをインストールしていません。
2. Prism Central の準備
NKP では Nutanix プラットフォームに(Nutanix Provider を使用して)Kubernetes クラスタを展開する場合、Prism Central への接続が必須です。そのため、NKP の環境構築前に、Prism Central を展開して、AHV クラスターの Prism Element を登録しておきます。
3. DNS サーバーの準備
NAI では、本来は、下記のあたりで DNS 名前解決によるホスト名(FQDN)を使用します。
- Nutanix Filse Storage の NFS ファイル サーバーへの接続
- クライアントから、NAI の Web UI および推論サービス エンドポイントへの接続。そして、それらの SSL/TLS 証明書に設定する CN / SAN
しかし今回は検証環境なので、DNS サーバーの構築は省略しています。
4. NTP サーバーの準備
時刻同期のため、NTP サーバーを用意しておきます。これは、Nutanix クラスタが同期している NTP サーバーと揃えることになるはずです。
5. NFS サーバーの準備
NAI でのモデル保存先として、Nutanix Files Storage による NFS サーバーを使用します。
Nutanix CSI の動的プロビジョニングでは、NFS 共有自体を自動作成できますが、今回は事前に NFS 共有を作成し、その配下のディレクトリを PV として使用します。この方式であれば、ファイル サーバーでの REST API ユーザー作成は不要です。
NFS サーバーは、下記の構成にしておく必要がります。
- NKP ノード側の NFS クライアント環境にあわせるため、ファイル サーバーでは NFS v4 が必須
- NFS 共有は、All Squash 設定にしておく
ラボでただ NAI を動作させることが目的であれば、下記のような構成でも NKP / NAI で利用できます。
- シングル ノード FSVM のファイル サーバー
- IP アドレスでの NFS 接続(DNS レコード登録を省略)
NFS サーバーの構築手順については、のちほど解説します。
6. Bootstrap マシン 兼 作業用マシンの準備
nkp コマンドによる NKP 管理クラスタの展開、そして、その後の Kubernetes クラスタ操作で利用する Linux マシンを用意しておきます。
今回は、Ubuntu 24.04 のマシンを用意してあります。この作業マシンのセットアップ手順については、のちほど 解説します。
つづく。
