ワークショップのセットアップ

NVIDIA NIM Operator のデプロイ

20 minutes

NVIDIA GPU Operator は、Kubernetes クラスター内で GPU をプロビジョニングするために必要なすべての NVIDIA ソフトウェアコンポーネントのデプロイ、設定、管理を自動化する Kubernetes Operator です。

NVIDIA NIM Operator は、このワークショップで先ほど作成した OpenShift クラスターなどの Kubernetes 環境に LLM をデプロイするために使用されます。

このワークショップのセクションでは、OpenShift クラスターに NVIDIA GPU Operator と NIM Operator の両方をデプロイするために必要な手順を説明します。

NVIDIA NGC アカウントの作成

LLM をダウンロードして NVIDIA NIM Operator を使用してデプロイするには、NVIDIA GPU CLOUD (NGC) アカウントが必要です。こちら からアカウントを作成できます。

NVIDIA Developer Program への登録

NVIDIA Developer Program に登録すると、NVIDIA NIM にアクセスできるようになります。これはワークショップの後半で LLM をデプロイする際に使用します。

NGC の NVIDIA サブスクリプション一覧に NVIDIA Developer Program が表示されていることを確認してください

NVIDIA Subscriptions

NGC API キーの生成

NGC ウェブサイトにログインしたら、画面右上のユーザーアカウントアイコンをクリックし、Setup を選択します。

次に Generate API Key をクリックし、指示に従ってください。キーが NGC Catalog および Secrets Manager サービスに関連付けられていることを確認してください。

生成されたキーはワークショップの後半で使用するため、安全な場所に保存してください。

NGC API キーの生成に関する詳細は、NVIDIA Documentation を参照してください。

Node Feature Discovery Operator のインストール

このセクションの手順は、Installing the NFD Operator using the CLI に基づいています。

以下のスクリプトを実行して Node Feature Discovery Operator をインストールします

bash
cd nvidia
./install-nfd-operator.sh

Operator のデプロイが成功したことを確認するには、以下を実行します

bash
oc get pods

NodeFeatureDiscovery CR の作成

このセクションの手順は、Creating a NodeFeatureDiscovery CR by using the CLI に基づいています。

以下のスクリプトを実行して Node Feature Discovery CR を作成します

bash
./create-nfd-cr.sh

NVIDIA GPU Operator のインストール

このセクションの手順は、Installing the NVIDIA GPU Operator on OpenShift に基づいています。

以下のスクリプトを実行して NVIDIA GPU Operator をインストールします

bash
./install-nvidia-gpu-operator.sh

インストールプランが作成されるまで待ちます

bash
oc get installplan -n nvidia-gpu-operator

以下のコマンドでインストールプランを承認します

bash
INSTALL_PLAN=$(oc get installplan -n nvidia-gpu-operator -oname)
oc patch $INSTALL_PLAN -n nvidia-gpu-operator --type merge --patch '{"spec":{"approved":true }}'

Cluster Policy の作成

このセクションの手順は、Create the cluster policy using the CLI に基づいています。

bash
./create-cluster-policy.sh

NVIDIA GPU Operator インストールの確認

以下のコマンドを使用して、NVIDIA GPU Operator が正常にインストールされたことを確認します

bash
oc get pods,daemonset -n nvidia-gpu-operator

Operator SDK のインストール

このセクションの手順は、Install from GitHub release に基づいています。

リリースバイナリのダウンロード

プラットフォーム情報を設定します

bash
export ARCH=$(case $(uname -m) in x86_64) echo -n amd64 ;; aarch64) echo -n arm64 ;; *) echo -n $(uname -m) ;; esac)
export OS=$(uname | awk '{print tolower($0)}')

プラットフォーム用のバイナリをダウンロードします

bash
export OPERATOR_SDK_DL_URL=https://github.com/operator-framework/operator-sdk/releases/download/v1.41.1
curl -LO ${OPERATOR_SDK_DL_URL}/operator-sdk_${OS}_${ARCH}

ダウンロードしたバイナリの検証

keyserver.ubuntu.com から operator-sdk リリースの GPG キーをインポートします

bash
gpg --keyserver keyserver.ubuntu.com --recv-keys 052996E2A20B5C7E

チェックサムファイルとその署名をダウンロードし、署名を検証します

bash
curl -LO ${OPERATOR_SDK_DL_URL}/checksums.txt
curl -LO ${OPERATOR_SDK_DL_URL}/checksums.txt.asc
gpg -u "Operator SDK (release) <cncf-operator-sdk@cncf.io>" --verify checksums.txt.asc

以下のような出力が表示されます

bash
gpg: assuming signed data in 'checksums.txt'
gpg: Signature made Fri 30 Oct 2020 12:15:15 PM PDT
gpg:                using RSA key ADE83605E945FA5A1BD8639C59E5B47624962185
gpg: Good signature from "Operator SDK (release) <cncf-operator-sdk@cncf.io>" [ultimate]

チェックサムが一致することを確認します

bash
grep operator-sdk_${OS}_${ARCH} checksums.txt | sha256sum -c -

以下のような出力が表示されます

bash
operator-sdk_linux_amd64: OK

リリースバイナリを PATH にインストール

bash
chmod +x operator-sdk_${OS}_${ARCH} && sudo mv operator-sdk_${OS}_${ARCH} /usr/local/bin/operator-sdk

NGC CLI のインストール

このセクションの手順は、NGC CLI Install に基づいています。

Download CLI をクリックしてバイナリを含む zip ファイルをダウンロードし、権限のあるディレクトリに zip ファイルを転送してから解凍してバイナリを実行します。また、実行権限のあるディレクトリに移動してから以下のコマンドを実行することで、コマンドラインからダウンロード、解凍、インストールを行うこともできます

bash
wget --content-disposition https://api.ngc.nvidia.com/v2/resources/nvidia/ngc-apps/ngc_cli/versions/4.3.0/files/ngccli_linux.zip -O ngccli_linux.zip && unzip ngccli_linux.zip

バイナリの md5 ハッシュを確認して、ダウンロード中にファイルが破損していないことを確認します

bash
find ngc-cli/ -type f -exec md5sum {} + | LC_ALL=C sort | md5sum -c ngc-cli.md5

バイナリの SHA256 ハッシュを確認して、ダウンロード中にファイルが破損していないことを確認します。以下のコマンドを実行してください

bash
sha256sum ngccli_linux.zip

以下の値と比較してください。この値はリソースのリリースノートにも記載されています

bash
5f01eff85a66c895002f3c87db2933c462f3b86e461e60d515370f647b4ffc21

値を検証した後、NGC CLI バイナリを実行可能にし、現在のディレクトリをパスに追加します

bash
chmod u+x ngc-cli/ngc
echo "export PATH=\"\$PATH:$(pwd)/ngc-cli\"" >> ~/.bash_profile && source ~/.bash_profile

コマンドを実行できるように NGC CLI を設定する必要があります。

プロンプトが表示されたら API キーを入力して、以下のコマンドを実行します

bash
ngc config set

NGC API キーを環境変数として定義します

bash
export NGC_API_KEY=<your NGC API key>

NVIDIA NIM Operator のインストール

このセクションの手順は、Installing NIM Operator on Red Hat OpenShift Using operator-sdk (for Development-Only) に基づいています。

以下のスクリプトを実行して NIM Operator をインストールします

bash
./install-nim-operator.sh

コントローラー Pod が実行中であることを確認します

bash
oc get pods -n nvidia-nim-operator
Last Modified ·