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

Alibaba Cloud Service Mesh:URI パス一致ルールの構成

最終更新日:Nov 06, 2025

サービスメッシュプロキシは、要求された URI と仮想サービスで構成された HTTP ルールに基づいてリクエストを処理します。仮想サービスは、URI パスの完全一致、プレフィックス一致、および正規表現一致をサポートしています。このトピックでは、URI パス一致ルールの構成方法について説明します。

前提条件

準備が完了し、helloworld サービスと sleep サービスがデプロイされています。詳細については、「準備」をご参照ください。

手順

  1. サービス構成が有効になっているかどうかを確認します。

    1. ACK クラスターの kubeconfig 環境で、次のコマンドを実行して sleep 環境で bash セッションを開始します。

      kubectl exec -it deploy/sleep -- sh
    2. 次のコマンドを実行して、helloworld サービスにリクエストを送信します。

      curl helloworld:5000/hello

      期待される出力は、helloworld-v1 または helloworld-v2 のいずれかがランダムに応答することを示しています。これは、リクエストが helloworld サービスに送信されることを示します。

      Hello version: v2, instance: helloworld-v2-7d48f6b995-6****
      Hello version: v1, instance: helloworld-v1-6986f64596-s****
  2. 次のコンテンツを使用して、仮想サービスを作成し、URI パス一致構成を追加します。詳細については、「仮想サービスの管理」をご参照ください。

    apiVersion: networking.istio.io/v1beta1
    kind: VirtualService
    metadata:
      name: helloworld-vs
      namespace: default
    spec:
      hosts:
        - helloworld
      http:
        - match:
            - uri:
                exact: /hello
          route:
            - destination:
                host: helloworld-v1
  3. 構成が有効になっているかどうかを確認します。

    1. ACK クラスターの kubeconfig 環境で、次のコマンドを実行して sleep 環境で bash セッションを開始します。

      kubectl exec -it deploy/sleep -- sh
    2. 次のコマンドを実行して、helloworld サービスの /hello パスにリクエストを送信します。

      curl helloworld:5000/hello

      期待される出力は、常に helloworld-v1 がリクエストに応答することです。

      Hello version: v1, instance: helloworld-v1-6986f64596-s****