非接続環境での Red Hat AI Inference Server のデプロイ
OpenShift Container Platform とオフラインのミラーイメージレジストリーを使用して、非接続環境に Red Hat AI Inference Server をインストールします。
概要
はじめに リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform をインストールし、非接続環境でミラーリングコンテナーイメージレジストリーを設定することで、外部のインターネットに接続せずに、Red Hat AI Inference Server を使用して大規模言語モデルを推論できます。
現在、OpenShift Container Platform の非接続環境では NVIDIA アクセラレーターのみがサポートされています。
第1章 非接続環境でのミラーレジストリーの設定 リンクのコピーリンクがクリップボードにコピーされました!
非接続環境でコンテナーイメージをサービングするには、踏み台ホストで非接続ミラーレジストリーを設定する必要があります。踏み台ホストは、非接続環境とインターネット間の安全なゲートウェイとして機能します。次に、Red Hat のオンラインイメージレジストリーからイメージをミラーリングし、非接続環境で提供します。
前提条件
- 踏み台ホストをデプロイします。
-
踏み台ホストに
ocをインストールする。 - 踏み台ホストに Podman をインストールする。
- 非接続環境に OpenShift Container Platform をインストールする。
手順
- 踏み台ホストでシェルプロンプトを開き、非接続のミラーレジストリーを作成します。
- イメージをミラーリングできるようにする認証情報を設定します。
第2章 AI Inference Server とその依存関係の Operator イメージのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
非接続環境のミラーレジストリーを作成したら、AI Inference Server コンテナーイメージをミラーリングする準備が整います。
前提条件
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-admin権限を持つユーザーとしてログインしている。 - 踏み台ホストにミラーリングレジストリーがインストールされている。
手順
ご使用の環境に対応する次のイメージのバージョンを見つけて、
podmanを使用してイメージをプルします。前の手順でプルした NFD Operator、NVIDIA GPU Operator、および AI Inference Server イメージを含む イメージセット設定のカスタムリソース (CR) を作成します。たとえば、次の
ImageSetConfigurationCR には、AMD CPU アーキテクチャーと CUDA アクセラレーターのイメージ仕様が含まれています。Copy to Clipboard Copied! Toggle word wrap Toggle overflow または、クラスターに NFD および NVIDIA GPU Operator がすでにインストールされている場合は、AI Inference Server のみを設定する
ImageSetConfigurationCR を作成します。apiVersion: mirror.openshift.io/v2alpha1 kind: ImageSetConfiguration mirror: additionalImages: - name: registry.redhat.io/rhaiis/vllm-cuda-rhel9:latest
apiVersion: mirror.openshift.io/v2alpha1 kind: ImageSetConfiguration mirror: additionalImages: - name: registry.redhat.io/rhaiis/vllm-cuda-rhel9:latestCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 非接続環境でイメージセットをミラーリングします。
- 更新されたイメージセットを使用するように、非接続クラスターを設定します。
第3章 Node Feature Discovery Operator と NVIDIA GPU Operator のインストール リンクのコピーリンクがクリップボードにコピーされました!
基盤となるホスト AI アクセラレーターを使用できるようにする Node Feature Discovery Operator と NVIDIA GPU Operator をインストールします。
前提条件
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-admin権限を持つユーザーとしてログインしている。 - 必要な Operator イメージが非接続環境に正常にミラーリングされました。
手順
デフォルトの OperatorHub ソースを無効にします。以下のコマンドを実行します。
oc patch OperatorHub cluster --type json \ -p '[{"op": "add", "path": "/spec/disableAllDefaultSources", "value": true}]'$ oc patch OperatorHub cluster --type json \ -p '[{"op": "add", "path": "/spec/disableAllDefaultSources", "value": true}]'Copy to Clipboard Copied! Toggle word wrap Toggle overflow Node Feature Discovery Operator と NVIDIA GPU Operator の
Namespace、OperatorGroup、およびSubscriptionCR を適用します。NamespaceCR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow OperatorGroupCR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow SubscriptionCR を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Hugging Face トークンの
Secretカスタムリソース (CR) を作成します。Hugging Face で設定したトークンを使用して
HF_TOKEN変数を設定します。HF_TOKEN=<your_huggingface_token>
$ HF_TOKEN=<your_huggingface_token>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Red Hat AI Inference Server イメージをデプロイする場所と一致するようにクラスター namespace を設定します。以下に例を示します。
NAMESPACE=rhaiis-namespace
$ NAMESPACE=rhaiis-namespaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターに
SecretCR を作成します。oc create secret generic hf-secret --from-literal=HF_TOKEN=$HF_TOKEN -n $NAMESPACE
$ oc create secret generic hf-secret --from-literal=HF_TOKEN=$HF_TOKEN -n $NAMESPACECopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、Operator のデプロイメントが成功したことを確認します。
oc get pods
$ oc get pods
出力例
第4章 永続ストレージの設定とモデルの推論 リンクのコピーリンクがクリップボードにコピーされました!
モデルを推論する前に、モデルイメージを保存するために AI Inference Server の永続ストレージを設定する必要があります。
永続ストレージの設定はオプションですが、推奨される手順です。
前提条件
- 踏み台ホストにミラーリングレジストリーがインストールされている。
- 非接続クラスターに Node Feature Discovery Operator と NVIDIA GPU Operator がインストールされている。
手順
- 非接続の OpenShift Container Platform クラスターで、ネットワークファイルシステム (NFS) を使用して永続ストレージを設定します。
Deploymentカスタムリソース (CR) を作成します。たとえば、次のDeploymentCR は、AI Inference Server を使用して CUDA アクセラレーター上で Granite モデルを提供します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow モデル推論用の
ServiceCR を作成します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: モデルへのパブリックアクセスを有効にするには、
RouteCR を作成します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 公開されたルートの URL を取得します。
oc get route granite -n rhaiis-namespace -o jsonpath='{.spec.host}'$ oc get route granite -n rhaiis-namespace -o jsonpath='{.spec.host}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
granite-rhaiis-namespace.apps.example.com
granite-rhaiis-namespace.apps.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行してモデルをクエリーします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow