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

Alibaba Cloud Service Mesh:ASM インスタンスのトラフィックを診断するためにパケット検査タスクを使用する

最終更新日:Jan 13, 2025

Service Mesh(ASM)を使用すると、ASM インスタンスにデプロイされたワークロードに対してパケット検査タスクを開始し、一定期間内のポッド内の TCP パケットに関する情報を取得し、Kubernetes クラスタ内のノードのホストに TCP パケットをダンプしてダウンロードおよび表示することができます。このトピックでは、パケット検査タスクを使用して ASM インスタンスのトラフィックを診断する方法について説明します。

背景情報

ASM によって管理されるアプリケーションの多様性により、一部のトラフィックが期待どおりにならない場合があります。たとえば、リクエストヘッダーが大きすぎる、リクエストが標準の HTTP プロトコルに準拠していないなどです。パケット検査タスクを使用すると、ワークロードのトラフィック情報を迅速にキャプチャして、複雑なトラフィックの問題を診断できます。

前提条件

  1. Enterprise Edition または Ultimate Edition の ASM インスタンスが作成されており、インスタンスのバージョンが 1.21.6.72 以降であること。詳細については、ASM インスタンスの作成またはASM インスタンスの更新をご参照ください。

  2. Container Service for Kubernetes(ACK)クラスタが ASM インスタンスに追加されていること。詳細については、ASM インスタンスへのクラスタの追加をご参照ください。

手順

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

  2. [メッシュ管理] ページで、ASM インスタンスの名前をクリックします。左側のナビゲーションペインで、[ASM インスタンス] > [メッシュ診断] を選択します。

  3. [メッシュ診断] ページで、[サービスパケット検査] をクリックします。

  4. [サービスパケット検査] タブで、[タスクの作成] をクリックします。表示されるダイアログボックスで、[kubernetes クラスタ][名前空間][ポッド名][期間][tcpdump パラメータ][ファイル名を保存] を設定します。 tcpdump パラメータの使用方法の詳細については、tcpdump をご参照ください。[OK] をクリックします。

  5. [サービスパケット検査] タブで、作成されたタスクの [ステータス] 列が [完了] に変わるまで待ちます。

  6. 作成されたタスクの [ファイルのホスト] 列と [ファイル保存パス] 列の値に基づいて、対応する Kubernetes クラスタのホストを見つけ、指定されたパスにある pcap ファイルをダウンロードします。ファイルのダウンロード方法の詳細については、Workbench を使用してインスタンスにファイルをアップロードおよびインスタンスからファイルをダウンロードするをご参照ください。

関連操作

パケット検査タスクの削除

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

  2. [メッシュ管理] ページで、ASM インスタンスの名前をクリックします。左側のナビゲーションペインで、[ASM インスタンス] > [メッシュ診断] を選択します。

  3. [メッシュ診断] ページで、[サービスパケット検査] タブをクリックします。

  4. [サービスパケット検査] タブで、削除するタスクを見つけ、[アクション] 列の [削除] をクリックします。表示されるメッセージで、[OK] をクリックします。

一般的な tcpdump パラメータ

パケット検査を使用する前に、検査するトラフィックのプロパティに基づいて tcpdump パラメータを設定できます。

  • クライアントポッドのサイドカープロキシとアプリケーション間のトラフィックを検査するには、次のパラメータを使用できます。

    # 172.16.xx.xx を宛先サービスの IP アドレスに置き換えます。
    -i lo dst port 15001 or src host 172.16.xx.xx
  • クライアントポッドのサイドカープロキシと宛先サービス間のトラフィックを検査するには、次のパラメータを使用できます。

    # 192.168.xx.xx を宛先サービスを実行するポッドの IP アドレスに置き換えます。
    -i any host 192.168.xx.xx
  • サーバーポッドのサイドカープロキシとアプリケーション間のトラフィックを検査するには、次のパラメータを使用できます。

    -i lo host 127.0.0.6
  • サーバーポッドのサイドカープロキシとクライアントポッド間のトラフィックを検査するには、次のパラメータを使用できます。

    # 192.168.xx.xx をクライアントポッドの IP アドレスに置き換えます。
    -i any host 192.168.xx.xx