9.17.11.2. NVIDIA GPU Operator の使用について
NVIDIA GPU Operator と OpenShift Virtualization を使用すると、GPU 対応の仮想マシンを実行するためのワーカーノードを迅速にプロビジョニングできます。NVIDIA GPU Operator は、OpenShift Container Platform クラスター内の NVIDIA GPU リソースを管理し、GPU ワークロード用にノードを準備するときに必要なタスクを自動化します。
アプリケーションワークロードを GPU リソースにデプロイする前に、コンピューティングユニファイドデバイスアーキテクチャー (CUDA)、Kubernetes デバイスプラグイン、コンテナーランタイム、および自動ノードラベル付けや監視などのその他の機能を有効にする NVIDIA ドライバーなどのコンポーネントをインストールする必要があります。これらのタスクを自動化することで、インフラストラクチャーの GPU 容量を迅速に拡張できます。NVIDIA GPU Operator は、複雑な人工知能および機械学習 (AI/ML) ワークロードのプロビジョニングを特に容易にします。
9.17.11.2.1. 仲介デバイスを設定するためのオプション リンクのコピーリンクがクリップボードにコピーされました!
NVIDIA GPU Operator を使用すると、仲介デバイスを設定するには 2 つの方法があります。Red Hat がテストする方法では、OpenShift Virtualization 機能を使用して仲介デバイスをスケジュールしますが、NVIDIA の方法では GPU Operator のみを使用します。
- NVIDIA GPU Operator を使用した仲介デバイスの設定
- この方法では、NVIDIA GPU Operator のみを使用して仲介デバイスを設定します。この方法を使用するには、NVIDIA ドキュメントの NVIDIA GPU Operator with OpenShift Virtualization を参照してください。
- OpenShift Virtualization を使用した仲介デバイスの設定
この方法は Red Hat によってテストされており、OpenShift Virtualization の機能を使用して仲介デバイスを設定します。この場合、NVIDIA GPU Operator は、NVIDIA 仮想 GPU Manager でドライバーをインストールするためにのみ使用されます。GPU Operator は仲介デバイスを設定しません。
OpenShift 仮想化方式を使用する場合でも、NVIDIA ドキュメント に従って GPU Operator を設定します。ただし、この方法は次の点で NVIDIA ドキュメントとは異なります。
HyperConvergedカスタムリソース (CR) のデフォルトのdisableMDEVConfiguration: false設定を上書きしないでください。重要NVIDIA ドキュメント の説明に従ってこの機能ゲートを設定すると、OpenShift Virtualization が仲介デバイスを設定できなくなります。
次の例と一致するように
ClusterPolicyマニフェストを設定する必要があります。kind: ClusterPolicy apiVersion: nvidia.com/v1 metadata: name: gpu-cluster-policy spec: operator: defaultRuntime: crio use_ocp_driver_toolkit: true initContainer: {} sandboxWorkloads: enabled: true defaultWorkload: vm-vgpu driver: enabled: false dcgmExporter: {} dcgm: enabled: true daemonsets: {} devicePlugin: {} gfd: {} migManager: enabled: true nodeStatusExporter: enabled: true mig: strategy: single toolkit: enabled: true validator: plugin: env: - name: WITH_WORKLOAD value: "true" vgpuManager: enabled: true repository: <vgpu_container_registry> image: <vgpu_image_name> version: <nvidia_vgpu_manager_version> vgpuDeviceManager: enabled: false sandboxDevicePlugin: enabled: false vfioManager: enabled: false-
spec.drive.enabledがfalseに設定されています。仮想マシンの場合、これは必須ではありません。 -
spec.vgpuManager.enabledがtrueに設定されています。仮想マシンで仮想 GPU を使用する場合、これは必須です。 -
spec.vgpuManager.repositoryはレジストリー値に設定されています。 -
spec.vgpuManager.versionは、NVIDIA Web サイトからダウンロードしてイメージのビルドに使用した仮想 GPU ドライバーのバージョンに設定されています。 -
OpenShift Virtualization が NVIDIA GPU Operator の代わりに仲介デバイスを設定できるように、
spec.vgpuDeviceManager.enabledはfalseに設定されています。 -
仮想 GPU デバイスの検出と kubelet へのアドバタイズを防止するために、
spec.sandboxDevicePlugin.enabledはfalseに設定されています。 -
vfio-pciドライバーのロードを防ぐために、spec.vfioManager.enabledはfalseに設定されています。代わりに、OpenShift Virtualization のドキュメントに従って PCI パススルーを設定します。
-