Kubernetes ダッシュボードを使用して Azure Stack Edge Pro GPU デバイスを監視する

適用対象:Yes for Pro GPU SKUAzure Stack Edge Pro - GPUYes for Pro 2 SKUAzure Stack Edge Pro 2Yes for Pro R SKUAzure Stack Edge Pro RYes for Mini R SKUAzure Stack Edge Mini R

この記事では、Kubernetes ダッシュボードへのアクセス方法と、これを使用して Azure Stack Edge Pro GPU デバイスを監視する方法について説明します。 デバイスを監視するには、Azure portal のグラフを使用するか、Kubernetes ダッシュボードを表示するか、デバイスの PowerShell インターフェイスを使用して kubectl コマンドを実行します。

この記事では、Kubernetes ダッシュボードで実行できる監視タスクについてのみ説明します。

この記事では、次のことについて説明します。

  • デバイス上の Kubernetes ダッシュボードにアクセスする
  • デバイスにデプロイされているモジュールを表示する
  • デバイスにデプロイされているアプリケーションの IP アドレスを取得する
  • デバイスにデプロイされているモジュールのコンテナー ログを表示する

Kubernetes ダッシュボードについて

Kubernetes ダッシュボードは、Web ベースのユーザー インターフェイスで、コンテナー化されたアプリケーションのトラブルシューティングに使用できます。 Kubernetes ダッシュボードは、Kubernetes kubectl コマンド ラインの UI ベースの代替手段です。 詳細については、Kubernetes ダッシュボードに関するページを参照してください。

Azure Stack Edge Pro デバイスでは、Kubernetes ダッシュボードを "読み取り専用" モードで使用して、Azure Stack Edge Pro デバイスで実行されているアプリケーションの概要を取得したり、Kubernetes クラスター リソースの状態を表示したり、デバイスで発生したエラーを確認したりできます。

ダッシュボードへのアクセス

Kubernetes ダッシュボードは "読み取り専用" で、ポート 31000 の Kubernetes マスター ノードで実行されます。 ダッシュボードにアクセスするには、次の手順に従います。

  1. お使いのデバイスのローカル UI で、[デバイス][デバイス エンドポイント] の順に移動します。

  2. [Kubernetes ダッシュボード] エンドポイントをコピーします。 Kubernetes ダッシュボードに接続するには、DNS エントリをクライアントの C:\Windows\System32\Drivers\etc\hosts ファイルに作成します。

    <IP address of the Kubernetes dashboard> <Kubernetes dashboard endpoint suffix>

    Add DNS entry for Kubernetes dashboard endpoint

  3. [Kubernetes ダッシュボード]エンドポイントの行で、[config のダウンロード] を選択します。この操作により、ダッシュボードにアクセスできるようにする kubeconfig をダウンロードします。 config.json ファイルをローカル システムに保存します。

  4. ローカル UI から Kubernetes ダッシュボード証明書をダウンロードします。

    1. デバイスのローカル UI で、[証明書] にアクセスします。
    2. [Kubernetes ダッシュボード エンドポイント証明書] のエントリを見つけます。 このエントリの右側にある [ダウンロード] を選択して、ダッシュボードへのアクセスに使用するクライアント システムの証明書をダウンロードします。

    Download Kubernetes dashboard endpoint certificate

  5. ダウンロードした証明書をクライアントにインストールします。 Windows クライアントを使用している場合は、次の手順を実行します。

    1. 証明書を選択し、[証明書のインポート ウィザード] で、保存場所として [ローカル コンピューター] を選択します。

      Install certificate on client 1

    2. 証明書を信頼されたルート ストアのローカル コンピューターにインストールします。

      Install certificate on client 2

  6. Kubernetes ダッシュボード URL をコピーして、ブラウザーでダッシュボードを開くために使用します。 Kubernetes ダッシュボードのサインイン ページで次を行います。

    1. kubeconfig を選択します。
    2. 省略記号 (...) を選びます。ローカル システムに以前にダウンロードした kubeconfig を参照して指定します。 [サインイン] を選択します。 Browse to kubeconfig file
  7. これで Azure Stack Edge Pro デバイスの Kubernetes ダッシュボードを読み取り専用モードで表示できるようになりました。

    Kubernetes Dashboard main page

モジュールの状態の表示

コンピューティング モジュールは、ビジネス ロジックが実装されたコンテナーです。 ダッシュボードを使用して、Azure Stack Edge Pro デバイスにコンピューティング モジュールが正常にデプロイされたかどうかを確認できます。

モジュールの状態を表示するには、ダッシュボードで次の手順を行います。

  1. ダッシュボードの左側のペインで、[名前空間] に移動します。 IoT Edge モジュールが表示されている名前空間でフィルター処理します。この場合は iotedge です。

  2. 左側のペインで、[ワークロード] > [デプロイ] に移動します。

  3. 右側のペインには、デバイスにデプロイされているすべてのモジュールが表示されます。 この場合、GettingStartedWithGPU モジュールが Azure Stack Edge Pro にデプロイされています。 モジュールがデプロイされたことを確認できます。

    View module deployment

サービスまたはモジュールの IP アドレスを取得する

ダッシュボードを使用して、Kubernetes クラスターの外部で公開するサービスまたはモジュールの IP アドレスを取得できます。

[Compute network settings]\(コンピューティング ネットワーク設定\) ページで、デバイスのローカル Web UI を介してこれらの外部サービスに IP 範囲を割り当てます。 IoT Edge モジュールをデプロイすると、特定のモジュールまたはサービスに割り当てられた IP アドレスを取得することができます。

IP アドレスを取得するには、ダッシュボードで次の手順を実行します。

  1. ダッシュボードの左側のペインで、[名前空間] に移動します。 外部サービスがデプロイされている名前空間でフィルター処理します。この場合は iotedge です。

  2. 左側のペインで、[検出と負荷分散] > [サービス] に移動します。

  3. 右側のペインには、Azure Stack Edge Pro デバイスの iotedge 名前空間で実行されているすべてのサービスが表示されます。

    Get IP for external services

コンテナー ログの表示

コンテナー ログを表示する必要があるインスタンスがあります。 ダッシュボードを使用して、Kubernetes クラスターにデプロイした特定のコンテナーのログを取得できます。

コンテナー ログを表示するには、ダッシュボードで次の手順を実行します。

  1. ダッシュボードの左側のペインで、[名前空間] に移動します。 IoT Edge モジュールがデプロイされている名前空間でフィルター処理します。この場合は iotedge です。

  2. 左側のペインで、[ワークロード] > [ポッド] に移動します。

  3. 右側のペインには、デバイスで実行されているすべてのポッドが表示されます。 ログを表示するモジュールを実行しているポッドを特定します。 特定したポッドの縦方向の省略記号を選択し、コンテキスト メニューから [ログ] を選択します。

    View container logs 1

  4. ログは、ダッシュボードに組み込まれているログ ビューアーに表示されます。 ログはダウンロードすることもできます。

    View container logs 2

CPU、メモリの使用量の表示

Azure Stack Edge Pro デバイスの Kubernetes ダッシュボードには、Kubernetes リソース全体の CPU とメモリの使用量を集計するメトリック サーバーのアドオンもあります。

たとえば、すべての名前空間のデプロイ全体で消費された CPU とメモリを表示できます。

View CPU and memory usage across all deployments

また、特定の名前空間でフィルター処理を行うこともできます。 次の例では、Azure Arc デプロイについてのみ CPU とメモリの消費量を表示できます。

View CPU and memory usage for Azure Arc deployments

Kubernetes メトリック サーバーには、ポッドの水平オートスケーラーなどの自動スケール パイプラインが用意されています。

次のステップ

Azure Monitor を使用して監視する方法を確認する。 診断を実行してログを収集する方法を確認する。