次の方法で共有


AI ツールチェーン オペレーターを使用して Azure Kubernetes Service で AI 推論メトリックを監視および視覚化する (プレビュー)

監視と監視は、Azure Kubernetes Service (AKS) での AI ワークロードデプロイの高パフォーマンスと低コストを維持する上で重要な役割を果たします。 システムとパフォーマンスのメトリックの可視性は、基になるインフラストラクチャの制限を示し、ワークロードの中断を減らすためにリアルタイムの調整と最適化の動機付けを行うことができます。 また、監視は、コンピューティング リソースのコスト効率の高い管理と正確なプロビジョニングのためのリソース使用率に関する貴重な分析情報も提供します。

Kubernetes AI Toolchain Operator (KAITO) は、AKS クラスター内の AI モデルのデプロイと操作を簡略化する AKS 用のマネージド アドオンです。

KAITO バージョン 0.4.4 以降のバージョンでは、aKS マネージド アドオンで vLLM 推論ランタイムが既定で有効になっています。 vLLM は、言語モデルの推論と提供のためのライブラリです。 KAITO 推論デプロイの評価に使用できる Prometheus メトリック の主要なシステム パフォーマンス、リソース使用量、および要求処理が表示されます。

重要

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

この記事では、Azure の Prometheus と AKS クラスターの Azure Managed Grafana のマネージド サービスで AI ツールチェーン オペレーター アドオンを使用して、vLLM 推論メトリックを監視および視覚化する方法について説明します。

開始する前に

  • この記事では、既存の AKS クラスターがすでにあることを前提としています。 クラスターがない場合は、 Azure CLIAzure PowerShell、または Azure portal を使用してクラスターを作成します。
  • Azure CLI バージョン 2.47.0 以降をインストールして構成します。 バージョンを確認するには、az --version を実行します。 インストールまたは更新するには、「 Azure CLI のインストール」を参照してください。

前提条件

KAITO 推論サービスをデプロイする

この例では、 Qwen-2.5-coder-7B-instruct 言語モデルのメトリックを収集します。

  1. まず、次の KAITO ワークスペース カスタム リソースをクラスターに適用します。

    kubectl apply -f https://raw.githubusercontent.com/Azure/kaito/main/examples/inference/kaito_workspace_qwen_2.5_coder_7b-instruct.yaml
    
  2. KAITO ワークスペースでライブ リソースの変更を追跡します。

    kubectl get workspace workspace-qwen-2-5-coder-7b-instruct -w
    

    マシンの準備には最大 10 分かかる場合があり、言語モデルのサイズによってはワークスペースの準備に最大 20 分かかることがあります。

  3. 推論サービスが実行されていることを確認し、サービスの IP アドレスを取得します。

    export SERVICE_IP=$(kubectl get svc workspace-qwen-2-5-coder-7b-instruct -o jsonpath='{.spec.clusterIP}')
    
    echo $SERVICE_IP
    

Prometheus のマネージド サービスに対する Surface KAITO 推論メトリック

Prometheus メトリックは、KAITO /metrics エンドポイントで既定で収集されます。

  1. Kubernetes ServiceMonitor デプロイで検出できるように、KAITO 推論サービスに次のラベルを追加します。

    kubectl label svc workspace-qwen-2-5-coder-7b-instruct App=qwen-2-5-coder 
    
  2. ServiceMonitor リソースを作成して、推論サービス エンドポイントと、vLLM Prometheus メトリックをスクレイピングするために必要な構成を定義します。 次の ServiceMonitor YAML マニフェストを kube-system 名前空間にデプロイして、Prometheus のマネージド サービスにこれらのメトリックをエクスポートします。

    cat <<EOF | kubectl apply -n kube-system -f -
    apiVersion: azmonitoring.coreos.com/v1
    kind: ServiceMonitor
    metadata:
      name: prometheus-kaito-monitor
    spec:
      selector:
        matchLabels:
          App: qwen-2-5-coder
      endpoints:
      - port: http
        interval: 30s
        path: /metrics
        scheme: http
    EOF
    

    次の出力を確認して、 ServiceMonitor が作成されていることを確認します。

    servicemonitor.azmonitoring.coreos.com/prometheus-kaito-monitor created
    
  3. ServiceMonitorデプロイが正常に実行されていることを確認します。

    kubectl get servicemonitor prometheus-kaito-monitor -n kube-system
    
  4. Azure portal で、Prometheus のマネージド サービスで vLLM メトリックが正常に収集されていることを確認します。

    1. Azure Monitor ワークスペースで、 Managed Prometheus>Prometheus エクスプローラーに移動します。

    2. [ グリッド ] タブを選択し、メトリック項目が workspace-qwen-2-5-coder-7b-instruct という名前のジョブに関連付けられていることを確認します。

      この項目の up 値は 1する必要があります。 1の値は、Prometheus メトリックが AI 推論サービス エンドポイントから正常にスクレイピングされていることを示します。

Azure Managed Grafana で KAITO 推論メトリックを視覚化する

vLLM プロジェクトには、推論ワークロードの監視に grafana.json という名前の Grafana ダッシュボード構成が用意されています。

  1. サンプル ページの下部に移動し、grafana.json ファイルの内容全体をコピーします。

    vLLM Grafana ダッシュボードの構成のスクリーンショット。

  2. Azure Managed Grafana の新しいダッシュボードに Grafana 構成をインポートする手順を完了します。

  3. Managed Grafana エンドポイントに移動し、使用可能なダッシュボードを表示して、 vLLM ダッシュボードを選択します。

    Azure Managed Grafana で使用可能なダッシュボードのスクリーンショット。

  4. 選択したモデル デプロイのデータ収集を開始するには、Grafana ダッシュボードの左上に表示される データソース 値が、この例用に作成した Prometheus のマネージド サービスのインスタンスであることを確認します。

  5. KAITO ワークスペースで定義されている推論プリセット名を、Grafana ダッシュボードの model_name フィールドにコピーします。 この例では、モデル名は qwen2.5-coder-7b-instruct です。

  6. しばらくして、KAITO 推論サービスのメトリックが vLLM Grafana ダッシュボードに表示されることを確認します。

    vLLM Grafana ダッシュボードと推論サービスのデプロイ例のスクリーンショット。

    これらの推論メトリックの値は、要求がモデル推論サーバーに送信されるまで 0 のままです。

  • 大規模な AKS デプロイを監視して視覚化します。
  • AKS の AI ツールチェーン 演算子アドオンを使用して、AI モデルを微調整します。
  • LinuxWindows での AKS GPU ワークロードのデプロイ オプションについて説明します。