すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Service Mesh:ASMインスタンストポロジでのゾーン認識ルーティング機能の検証

最終更新日:Jan 14, 2025

Service Mesh (ASM) では、アプリケーションのトポロジを表示できます。このトピックでは、ASMインスタンストポロジでのゾーン認識ルーティング機能の効果を確認する方法について説明します。イングレスゲートウェイを使用したBookinfoアプリケーションへのアクセスを例として使用します。

前提条件

  • ASMインスタンスが作成されていること。詳細については、「ASMインスタンスの作成」をご参照ください。

  • ACKマネージドクラスターが作成されていること。詳細については、「ACKマネージドクラスターの作成」をご参照ください。

  • クラスターがASMインスタンスに追加されていること。詳細については、「ASMインスタンスへのクラスターの追加」をご参照ください。

  • ACKクラスター内のノードが少なくとも 2 つのゾーンに存在していること。このトピックでは cn-hangzhou-j ゾーンと cn-hangzhou-k ゾーンを使用します。クラスターノードに対応するECSインスタンスが存在するリージョンとゾーンは、ACKコンソールで確認できます。詳細については、「リージョンとゾーン」をご参照ください。

  • イングレスゲートウェイがデプロイされていること。ASMインスタンストポロジを表示できること。詳細については、「はじめに」をご参照ください。

  • Helm 3 クライアントがインストールされていること。詳細については、「Helm」をご参照ください。

手順 1:サンプルアプリケーションをデプロイする

  1. サンプルアプリケーションをデプロイするために使用する Helmインストールパッケージ をダウンロードします。

  2. パッケージを解凍し、解凍後に取得したフォルダー内の asm-az-routing ディレクトリを開きます。values.yaml ファイルで、アプリケーションをデプロイするゾーンを指定します。

    この例では、次のゾーン設定を使用します。

    zone1: cn-hangzhou-j
    zone2: cn-hangzhou-k
  3. 次のコマンドを実行して、サンプルアプリケーションをデプロイします。

    helm install --namespace azdemo azdemo ./
  4. アプリケーション Pod が正常に実行されたら、次のコマンドを実行して、イングレスゲートウェイを使用してサービスにアクセスします。

    while true; do
      curl -I http://{IP address of the ingress gateway}/productpage ;
      echo;sleep 1;
    done

手順 2:メッシュトポロジにログインし、ASMインスタンストポロジを表示する

  1. ASMコンソール にログインします。左側のナビゲーションペインで、[service Mesh] > [メッシュ管理] を選択します。

  2. [メッシュ管理] ページで、ASMインスタンスの名前をクリックします。左側のナビゲーションペインで、[可観測性管理センター] > [メッシュトポロジ] を選択します。

  3. [メッシュトポロジ] ページで、[トークンをコピーして新しいウィンドウで開く] をクリックします。

  4. メッシュトポロジのログインページで、トークンを入力し、[ログイン] をクリックします。

  5. ASMインスタンスの名前空間を選択し、トラフィック分散トラフィック レートトラフィックアニメーション[表示] ドロップダウンリストから サービスノード、、 を選択し、 の選択を解除します。

    次の図は、トポロジの例を示しています。Topology example 1

手順 3:トポロジを観察して、ゾーン間の自動ルート切り替えを確認する

  1. 最初のゾーンにデプロイされている reviews-v1 の Pod 数をゼロに減らします。これにより、サービスは利用できなくなります。

    1. ACKコンソール にログインします。左側のナビゲーションペインで、[クラスター] をクリックします。

    2. [クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。左側のペインで、[ワークロード] > [デプロイメント] を選択します。

    3. デプロイメントを見つけ、[スケール][アクション] 列でクリックし、[必要な Pod 数]0 に設定して、[OK] をクリックします。

  2. 手順 2:メッシュトポロジにログインし、ASMインスタンストポロジを表示する でログインしたトポロジページに戻ります。

    次の図は、トポロジの例を示しています。Topology example 2トポロジは、productpage v1 が reviews-v2 を指していることを示しています。この変更は、同じゾーン内の reviews サービスが利用できなくなった場合、リクエストが別のゾーン内の reviews サービスに自動的にルーティングされることを示しています。

手順 4:トポロジを観察して、ゾーン認識ルーティング機能を確認する

  1. 最初のゾーンにデプロイされている reviews-v1 の Pod 数を 1 に増やします。これにより、サービスが利用可能になります。

    1. ACKコンソール にログインします。左側のナビゲーションペインで、[クラスター] をクリックします。

    2. [クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。左側のペインで、[ワークロード] > [デプロイメント] を選択します。

    3. デプロイメントを検索し、[スケーリング][アクション] 列でクリックし、[必要な Pod 数]1 に設定して、[OK] をクリックします。

  2. 手順 2:メッシュトポロジにログインし、ASMインスタンストポロジを表示する でログインしたトポロジページに戻ります。

    次の図は、トポロジの例を示しています。Topology example 3トポロジは、productpage v1 が同じゾーンにデプロイされている reviews-v1 を指していることを示しています。この結果は、ゾーン認識ルーティング機能が有効になっていることを示しています。