メッシュトポロジーグラフは、アプリケーションの正常性をリアルタイムで監視し、サービス間のレイテンシーと通信の問題を分析し、トラフィックフローを理解するのに役立ちます。これにより、問題を迅速に特定して解決し、アプリケーションの信頼性と高パフォーマンスを確保できます。
前提条件
-
Container Service for Kubernetes (ACK) クラスターを Service Mesh (ASM) インスタンスに追加済みであること。ASM インスタンスのバージョンは 1.15.3.120 以降である必要があります。
説明ご利用の ASM インスタンスのバージョンが 1.15.3.120 より前の場合にアプリケーションのメッシュトポロジーを表示するには、「メッシュトポロジーを有効にして可観測性を向上させる」をご参照ください。ASM インスタンスのアップグレード方法については、「ASM インスタンスのアップグレード」をご参照ください。
-
Bookinfo アプリケーションにルーティングルールが設定されており、イングレスゲートウェイを介してアプリケーションにアクセスできること。詳細については、「Istio リソースを使用したバージョンベースのトラフィックルーティング」をご参照ください。
-
ACK クラスターが Managed Service for Prometheus またはセルフマネージド Prometheus と統合され、監視メトリクスを収集していること。このトピックでは、Managed Service for Prometheus を例として使用します。詳細については、「Managed Service for Prometheus を統合してメッシュを監視する」または「セルフマネージド Prometheus を統合してメッシュを監視する」をご参照ください。
概要
Alibaba Cloud Service Mesh (ASM) は、メッシュ内のすべてのサービス間通信に関する詳細なテレメトリを生成します。このテレメトリは、サービスの動作に関するインサイトを提供し、開発者に負担をかけることなく、運用チームがアプリケーションのトラブルシューティング、メンテナンス、最適化を行うのに役立ちます。メッシュトポロジーグラフを使用することで、運用チームはサービス間の相互作用を完全に理解し、システムの監視と管理を向上させることができます。
このクイックスタートガイドでは、簡単な手順でアプリケーションのメッシュトポロジーを表示する方法を説明します。詳細については、「可観測性管理」をご参照ください。
ステップ 1:メッシュトポロジーの有効化
-
ASM コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。
-
Mesh Management ページで、ターゲットインスタンスの名前をクリックします。 左側のナビゲーションウィンドウで、を選択します。 Activate ASM mesh topology セクションで、ASM バージョンに基づいて次の手順を実行します。
-
V1.18.2.112 より前のバージョンの ASM インスタンスの場合:Activate をクリックします。
-
V1.18.2.112 以降の ASM インスタンスの場合:次のいずれかのデプロイモードを選択します。2 つのモードの違いと Managed モードの設定方法の詳細については、「Managed モードでメッシュトポロジーを有効にする」をご参照ください。
-
In-Kubernetes-cluster Mode をクリックし、ASM メッシュトポロジで使用される Prometheus サービスアドレスを入力してから、Activate をクリックします。
-
Managed Mode をクリックし、次に Activate をクリックします。表示されるダイアログボックスで、必須パラメーターを設定し、OK をクリックします。
-
-
ステップ 2:CLB を使用したメッシュトポロジーへのアクセス
-
ASM コンソールにログインします。左側のナビゲーションウィンドウで、 を選択します。
-
Mesh Management ページで、ターゲットインスタンスの名前をクリックします。 左側のナビゲーションウィンドウで、 を選択します。
-
Access セクションで、ASM インスタンスのバージョンに応じて次のいずれかの操作を実行します。
-
V1.17.2.19 より前の ASM インスタンスの場合: [ASM メッシュトポロジにアクセスするためのインターネット向け CLB インスタンスを自動作成] スイッチをオンにします。 表示されるダイアログボックスで、OK をクリックします。
-
ASM インスタンス V1.17.2.19 以降の場合: [ASM メッシュトポロジにアクセスするための CLB インスタンスを作成] スイッチをオンにします。表示されるダイアログボックスで、必要に応じてパラメーターを設定し、OK をクリックします。
メッシュトポロジーへのアクセスを有効にすると、Service Mesh インスタンスは一時的に更新中の状態になります。
-
-
Service Mesh インスタンスの更新が完了したことを確認します。
-
左側のナビゲーションウィンドウで、 を選択します。
-
Basic Information セクションで、Service Mesh インスタンスの Status を確認します。
StatusがUpdatingの場合、更新が進行中です。StatusがRunningの場合、更新は完了です。
-
-
左側のナビゲーションウィンドウで、を選択します。Mesh Topology ページで、Access セクションのCopy token and open in new window をクリックします。
-
Mesh Topology ログインページで、トークンを貼り付け、[ログイン] をクリックすると、Mesh Topology コンソールに入ります。
ステップ 3:アプリケーションのメッシュトポロジーの表示
-
ブラウザのアドレスバーに http://{イングレスゲートウェイの IP アドレス}/productpage と入力して、Bookinfo アプリケーションにアクセスします。
イングレスゲートウェイの IP アドレスを取得する方法については、「アクセスゲートウェイアドレスの取得」をご参照ください。
-
Mesh Topology コンソールで [デフォルト] 名前空間を選択し、[Versioned App グラフ] ドロップダウンリストから [ワークロードグラフ] を選択すると、ワークロード間の呼び出し関係とトラフィックフローを表示できます。
説明メッシュトポロジーコンソールでは、名前空間を [デフォルト] に設定し、[バージョン化されたアプリケーションビュー] で [アプリケーションビュー]、[サービスビュー]、または [バージョンビュー] を選択して、アプリ、サービス、アプリケーションバージョン間の呼び出し関係とトラフィックフローを表示することもできます。
トポロジーグラフは、istio-ingressgateway が productpage (v1) に接続していることを示しています。productpage は次に details (v1) と reviews (v1, v2, v3) を呼び出します。reviews の一部のバージョンは ratings (v1) を呼び出します。すべてのリクエストの成功率は 100% です。
トポロジーグラフで reviews-v2 をクリックすると、右側にワークロードの詳細情報 (正常性ステータス、インバウンドトラフィック、アウトバウンドトラフィックなど) が表示されます。
関連ドキュメント
-
一部のリクエストのレイテンシーが異常に高いことに気付いた場合は、アクセスログを使用して原因を特定できます。詳細については、「アクセスログによる異常なリクエストレイテンシーのトラブルシューティング」をご参照ください。
-
サービス呼び出しのレイテンシーを最小限に抑えるには、ゾーンアウェアネスルーティングを使用して、トラフィックを同じゾーン内に維持できます。この機能は、クライアントと同じゾーン内のサービスへのトラフィックのルーティングを優先します。詳細については、「メッシュトポロジーを使用したゾーンアウェアネスルーティングの監視」をご参照ください。
-
複数のクラスターのトラフィックトポロジーを監視する必要がある場合は、Managed モードのメッシュトポロジー機能を使用できます。これにより、ASM インスタンス全体に対して 1 つのメッシュトポロジーサービスをデプロイするだけで済むため、設定のワークロードが削減されます。詳細については、「Managed モードでメッシュトポロジーを有効にする」をご参照ください。
-
インスタンスでメッシュ診断を実行して、データプレーンのバージョンチェック、サービスポートチェック、サービス関連付けチェックなど、潜在的な問題を事前に特定できます。詳細については、「ASM メッシュ診断の使用」をご参照ください。