次の方法で共有


Azure Kubernetes Service (AKS) でフル マネージド GPU ノード プールを作成する (プレビュー)

Azure Kubernetes Service (AKS) で GPU ワークロードを実行する場合は、テレメトリ用の GPU ドライバー、Kubernetes デバイス プラグイン、GPU メトリック エクスポーターなど、いくつかのソフトウェア コンポーネントをインストールして維持する必要があります。 これらのコンポーネントは、GPU スケジューリング、コンテナー レベルの GPU アクセス、リソースの使用状況の監視、および AKS GPU 対応ノードの適切な機能を有効にするために不可欠です。 以前は、クラスターオペレーターは、これらのコンポーネントを手動でインストールするか、 NVIDIA GPU オペレーターのようなオープンソースの代替手段を使用する必要がありました。これにより、複雑さと運用上のオーバーヘッドが発生する可能性がありました。

AKS では、フル マネージド GPU ノード (プレビュー) がサポートされ、NVIDIA GPU ドライバー、デバイス プラグイン、および Data Center GPU Manager (DCGM) メトリック エクスポーター が既定でインストールされるようになりました。 この機能により、1 ステップの GPU ノード プールの作成が可能になり、AKS での GPU リソースの可用性は汎用 CPU ノードと同じくらい簡単になります。

この記事では、NVIDIA GPU ドライバー、デバイス プラグイン、メトリック エクスポーターの既定のインストールなど、AKS クラスターでフル マネージド GPU ノード プール (プレビュー) をプロビジョニングする方法について説明します。

Important

AKS のプレビュー機能は、セルフサービスのオプトイン単位で利用できます。 プレビューは、"現状有姿のまま" および "利用可能な限度" で提供され、サービス レベル アグリーメントおよび限定保証から除外されるものとします。 AKS プレビューは、ベストエフォート ベースでカスタマー サポートによって部分的にカバーされます。 そのため、これらの機能は運用環境での使用を目的としていません。 詳細については、次のサポート記事を参照してください。

開始する前に

制限事項

  • この機能は現在、 NVIDIA GPU 対応の仮想マシン (VM) サイズ のみをサポートしています。
  • 汎用ノード プールを更新して GPU VM サイズを追加することは、AKS ではサポートされていません。
  • GPU メトリックはサポートされていないため、この機能では Windows ノード プールはサポートされていません。 Windows GPU ノード プールを作成すると、AKS によってドライバーと Directx デバイス プラグインが自動的にインストールおよび管理されます。 詳細については 、AKS Windows GPU のドキュメント を参照してください。
  • この機能を使用するための既存 のマルチインスタンス GPU ノード プールの移行はサポートされていません。
  • 既存の GPU 対応ノードでこの機能を使用するためのインプレース アップグレードはサポートされていません。

GPU 対応 VM には、より高い価格が適用され、利用可能なリージョンが限られる特殊なハードウェアが含まれます。 詳細については、価格ツールと利用可能なリージョンを参照してください。

aks-preview CLI 拡張機能をインストールする

  1. aks-preview コマンドを使用して az extension add CLI 拡張機能をインストールします。

    az extension add --name aks-preview
    
  2. az extension update コマンドを使用して拡張機能を更新して、最新バージョンが確実にインストールされた状態にします。

    az extension update --name aks-preview
    

サブスクリプションに ManagedGPUExperiencePreview 機能フラグを登録します。

  • ManagedGPUExperiencePreview コマンドを使用してサブスクリプションに az feature register 機能フラグを登録します。

    az feature register --namespace Microsoft.ContainerService --name ManagedGPUExperiencePreview
    

クラスターの資格情報を取得する

  • az aks get-credentials コマンドを使用して AKS クラスターの資格情報を取得します。

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    

AKS マネージド GPU ノード プールを作成する (プレビュー)

OS SKU と --tags EnableManagedGPUExperience=true コマンドを指定することで、フル マネージド GPU ノード プール (プレビュー) を既存の AKS クラスターに追加できます。 これを行うと、AKS によって GPU ドライバー、GPU デバイス プラグイン、メトリック エクスポーターが自動的にインストールされます。

既定の Ubuntu オペレーティング システム (OS) SKU を使用するには、OS SKU を指定せずにノード プールを作成します。 ノード プールは、クラスターの Kubernetes バージョンに基づき、既定のオペレーティング システムに対して設定されます。

  1. az aks nodepool add コマンドで --tags EnableManagedGPUExperience=true コマンドを使用して、クラスターにノード プールを追加します。

    az aks nodepool add \
        --resource‐group MyResourceGroup \
        --cluster‐name MyAKSCluster \
        --name gpunp \
        --node‐count 1 \
        --node‐vm‐size Standard_NC6s_v3 \
        --node‐taints sku=gpu:NoSchedule \
        --enable‐cluster‐autoscaler \
        --min‐count 1 \
        --max‐count 3 \
        --tags EnableManagedGPUExperience=true
    
  2. マネージド NVIDIA GPU ソフトウェア コンポーネントが正常にインストールされていることを確認します。

    az aks nodepool show \
        --resource-group myResourceGroup \
        --cluster-name myAKSCluster \
        --name gpunp \
    

    出力には、次の値が含まれている必要があります。

    ...
    ...
    "gpuInstanceProfile": …
        "gpuProfile": {
            "driver": "Install"
        },
    ...
    ...
    

既存の GPU ワークロードを AKS マネージド GPU ノード プールに移行する

AKS クラスター上の標準の NVIDIA GPU ノード プールからフル マネージド NVIDIA GPU ノード プール (プレビュー) へのインプレース アップグレードはサポートされていません。 既存の GPU ノードを切断してドレインしてから、この機能を有効にして新しい GPU 対応ノード プールにワークロードを再デプロイすることをお勧めします。 詳細については、 AKS のノード プールのサイズ変更に関 するページを参照してください。

Bring Your Own (BYO) GPU ドライバー

NVIDIA ドライバーのインストールを制御する場合、または NVIDIA GPU オペレーターを使用する場合は、ノード プールの作成時に GPU ドライバーのインストールをバイパスできます。 この場合、Microsoft はノード イメージの展開の一部として NVIDIA ドライバーのメンテナンスと互換性を サポートまたは管理しません 。 詳細については、AKS での NVIDIA GPU 対応ノードの GPU ドライバーのインストールをスキップ するを参照してください。

次のステップ