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

Alibaba Cloud Service Mesh:ASMトレースデータをセルフマネージドシステムにエクスポートする

最終更新日:Jul 07, 2025

Service Mesh(ASM)インスタンスのバージョンが v1.18.0.124 より前の場合、トレースデータは Zipkin と互換性のあるセルフマネージドシステムにのみエクスポートできます。ASMインスタンスのバージョンが v1.18.0.124 以降の場合、トレースデータは Managed Service for OpenTelemetry にのみエクスポートできます。このトピックでは、Zipkin または Managed Service for OpenTelemetry と互換性のあるセルフマネージドシステムに ASM トレースデータをエクスポートする方法について説明します。

前提条件

  • Zipkin と互換性のあるセルフマネージドシステムが構築されており、Zipkin サーバーのポート 9411 でリッスンしています。Jaeger を使用する場合は、Zipkinコレクターをデプロイする必要があります。

  • セルフマネージドシステムは、データプレーンのクラスターにデプロイされています。

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

  • イングレスゲートウェイがASMインスタンスに作成されています。詳細については、「イングレスゲートウェイの作成」をご参照ください。

手順

ASMインスタンスのバージョンに基づいて操作を実行します。

v1.18.0.124 以降の ASM インスタンスの場合

ステップ 1:Zipkin をデプロイする

  1. 次のコマンドを実行して、Zipkin をデプロイするための zipkin という名前のネームスペースを作成します。

    kubectl create namespace zipkin
  2. 次のコマンドを実行して、Helm を使用して Zipkin をインストールします。

    helm install --namespace zipkin my-zipkin carlosjgp/zipkin --version 0.2.0
  3. 次のコマンドを実行して、Zipkin が正しく実行されているかどうかを確認します。

    kubectl -n zipkin get pods

    期待される出力:

    NAME                                   READY   STATUS    RESTARTS   AGE
    my-zipkin-collector-79c6dc9cd7-jmswm   1/1     Running   0          29m
    my-zipkin-ui-64c97b4d6c-f742j          1/1     Running   0          29m

ステップ 2:OpenTelemetry Operator をデプロイする

  1. kubeconfig ファイルの情報に基づいて、kubectl を使用して ACK クラスターに接続します。次に、次のコマンドを実行して opentelemetry-operator-system ネームスペースを作成します。

    kubectl create namespace opentelemetry-operator-system
  2. 次のコマンドを実行して、Helm を使用して opentelemetry-operator-system ネームスペースに OpenTelemetry Operator をインストールします。

    helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
    helm install --namespace=opentelemetry-operator-system opentelemetry-operator open-telemetry/opentelemetry-operator \
      --set "manager.collectorImage.repository=otel/opentelemetry-collector-k8s" \
      --set admissionWebhooks.certManager.enabled=false \
      --set admissionWebhooks.autoGenerateCert.enabled=true
  3. 次のコマンドを実行して、OpenTelemetry Operator が正しく動作しているかどうかを確認します。

    kubectl get pod -n opentelemetry-operator-system

    期待される出力:

    NAME                                      READY   STATUS    RESTARTS   AGE
    opentelemetry-operator-854fb558b5-pvllj   2/2     Running   0          1m

    出力は、ステータスが実行中であることを示しています。これは、OpenTelemetry Operator が正しく動作していることを意味します。

ステップ 3:OpenTelemetry Collector を作成する

  1. コードブロックに示されている次の内容を含む collector.yaml ファイルを作成します。

    YAML ファイルの ${ENDPOINT} を、gRPC プロトコルをサポートする仮想プライベートクラウド(VPC)エンドポイントに置き換えます。${TOKEN} を認証トークンに置き換えます。Managed Service for OpenTelemetry でサポートされているエンドポイントと認証トークンの取得方法については、「Managed Service for OpenTelemetry を使用する準備」をご参照ください。

    collector.yaml ファイルを表示する

    apiVersion: opentelemetry.io/v1alpha1
    kind: OpenTelemetryCollector
    metadata:
      labels:
        app.kubernetes.io/managed-by: opentelemetry-operator
      name: default
      namespace: opentelemetry-operator-system
      annotations:
        sidecar.istio.io/inject: "false"
    spec:
      config: |
        extensions:
          memory_ballast:
            size_mib: 512
          zpages:
            endpoint: 0.0.0.0:55679
        receivers:
          otlp:
            protocols:
              grpc:
                endpoint: "0.0.0.0:4317"
        exporters:
          debug:
          zipkin:
          	endpoint: http://my-zipkin-collector.zipkin.svc.cluster.local:9411/api/v2/spans
        service:
          pipelines:
            traces:
              receivers: [otlp]
              processors: []
              exporters: [zipkin, debug]
      ingress:
        route: {}
      managementState: managed
      mode: deployment
      observability:
        metrics: {}
      podDisruptionBudget:
        maxUnavailable: 1
      replicas: 1
      resources: {}
      targetAllocator:
        prometheusCR:
          scrapeInterval: 30s
        resources: {}
      upgradeStrategy: automatic
  2. kubeconfig ファイルの情報に基づいて、kubectl を使用して Container Service for Kubernetes(ACK)クラスターに接続し、次のコマンドを実行してクラスターに OpenTelemetry Collector をデプロイします。

    kubectl apply -f collector.yaml
  3. 次のコマンドを実行して、OpenTelemetry Collector が起動されているかどうかを確認します。

    kubectl get pod -n opentelemetry-operator-system

    期待される出力:

    NAME                                      READY   STATUS    RESTARTS   AGE
    opentelemetry-operator-854fb558b5-pvllj   2/2     Running   0          3m
    default-collector-5cbb4497f4-2hjqv        1/1     Running   0          30s

    出力は、OpenTelemetry Collector が正常に起動したことを示しています。

  4. 次のコマンドを実行して、OpenTelemetry Collector のサービスが作成されているかどうかを確認します。

    kubectl get svc -n opentelemetry-operator-system

    期待される出力:

    opentelemetry-operator           ClusterIP   172.16.138.165   <none>        8443/TCP,8080/TCP   3m
    opentelemetry-operator-webhook   ClusterIP   172.16.127.0     <none>        443/TCP             3m
    default-collector              ClusterIP   172.16.145.93    <none>        4317/TCP   30s
    default-collector-headless     ClusterIP   None             <none>        4317/TCP   30s
    default-collector-monitoring   ClusterIP   172.16.136.5     <none>        8888/TCP   30s

    出力は、OpenTelemetry Collector のサービスが作成されていることを示しています。

ステップ 4:テストアプリケーションをデプロイする

Bookinfo アプリケーションと sleep アプリケーションをデプロイします。詳細については、「ASM インスタンスに追加された ACK クラスターにアプリケーションをデプロイする」をご参照ください。

  • bookinfo.yaml

  • sleep.yaml

    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: sleep
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: sleep
      labels:
        app: sleep
        service: sleep
    spec:
      ports:
      - port: 80
        name: http
      selector:
        app: sleep
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: sleep
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: sleep
      template:
        metadata:
          labels:
            app: sleep
        spec:
          terminationGracePeriodSeconds: 0
          serviceAccountName: sleep
          containers:
          - name: sleep
            image: registry.cn-hangzhou.aliyuncs.com/acs/curl:8.1.2
            command: ["/bin/sleep", "infinity"]
            imagePullPolicy: IfNotPresent
            volumeMounts:
            - mountPath: /etc/sleep/tls
              name: secret-volume
          volumes:
          - name: secret-volume
            secret:
              secretName: sleep-secret
              optional: true
    ---

ステップ 5:productpage アプリケーションにアクセスし、トレースデータを表示する

  1. 次のコマンドを実行して、productpage アプリケーションにアクセスします。

    kubectl exec -it deploy/sleep -c sleep -- curl  productpage:9080/productpage?u=normal
  2. アクセスが成功したら、OpenTelemetry Collector のログと debug exporter によって出力された出力を表示します。

    2023-11-20T08:44:27.531Z	info	TracesExporter	{"kind": "exporter", "data_type": "traces", "name": "debug", "resource spans": 1, "spans": 3}

ステップ 6:ASM ゲートウェイを設定し、Zipkin サービスでトレースデータを表示する

  1. Istio ゲートウェイを作成します。

    1. 次の内容を使用して ingressgateway.yaml ファイルを作成します。

      展開して ingressgateway.yaml ファイルを表示する

      apiVersion: networking.istio.io/v1beta1
      kind: Gateway
      metadata:
        name: ingressgateway
        namespace: istio-system
      spec:
        selector:
          istio: ingressgateway
        servers:
          - hosts:
              - '*'
            port:
              name: http
              number: 80
              protocol: HTTP
      ---
      apiVersion: networking.istio.io/v1beta1
      kind: VirtualService
      metadata:
        name: ingressgateway
        namespace: istio-system
      spec:
        gateways:
          - ingressgateway
        hosts:
          - '*'
        http:
          - route:
              - destination:
                  host: my-zipkin-collector.zipkin.svc.cluster.local
                  port:
                    number: 9411
      
    2. kubeconfig ファイルの情報に基づいて、kubectl を使用して ASM インスタンスに接続します。次に、次のコマンドを実行して、ASM ゲートウェイがポート 80 でリッスンするようにし、Zipkin サービスへのルートを設定します。

      kubectl apply -f ingressgateway.yaml
  2. ASM ゲートウェイの IP アドレスを使用して Zipkin サービスにアクセスし、トレースデータを表示します。

    image.png

v1.18.0.124 より前の ASM インスタンスの場合

ステップ 1:ASM インスタンスのトレース機能を有効にする

  • ASM インスタンスのバージョンが v1.17.2.28 より前の場合、次の操作を実行してトレース機能を有効にできます。ASM コンソールにログインします。ASM インスタンスの [基本情報] ページで、[設定] をクリックします。表示されるページで、[トレース分析を有効にする] を選択し、関連パラメーターを設定して、[OK] をクリックします。

  • ASM インスタンスのバージョンが v1.17.2.28 以降の場合、「可観測性設定の構成」の「トレース分析設定の説明」セクションを参照して、トレース機能を有効にできます。

ステップ 2:データプレーンの Kubernetes クラスターに Zipkin をデプロイする

  1. 次の内容を使用して zipkin-server.yaml ファイルを作成します。

    展開して zipkin-server.yaml ファイルを表示する

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: zipkin-server
      namespace: istio-system
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: zipkin-server
          component: zipkin
      template:
       metadata:
        labels:
          app: zipkin-server
          component: zipkin
       spec:
        containers:
         - name: zipkin-server
           image: openzipkin/zipkin
           imagePullPolicy: IfNotPresent
           readinessProbe:
                httpGet:
                  path: /health
                  port: 9411
                initialDelaySeconds: 5
                periodSeconds: 5
    説明

    カスタム YAML ファイルを使用して Zipkin をデプロイする場合は、Zipkin が istio-system ネームスペースにデプロイされていることを確認してください。

  2. 次のコマンドを実行して、データプレーンの Kubernetes クラスターに Zipkin をデプロイします。

    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG} apply -f zipkin-server.yaml
    説明

    このトピックのサンプルコードを使用する場合は、コマンドの ${DATA_PLANE_KUBECONFIG} をデータプレーンの Kubernetes クラスターの kubeconfig ファイルへのパスに置き換えます。また、${ASM_KUBECONFIG} を ASM インスタンスの kubeconfig ファイルへのパスに置き換えます。

  3. 上記のデプロイが完了したら、Zipkin サーバーがデプロイされているポッドが正しく起動できることを確認します。

ステップ 3:Zipkin サーバーを公開するサービスを作成する

ASM トレースデータを受信するために、istio-system ネームスペースに zipkin という名前のサービスを作成します。

  • Zipkin サーバーをインターネットに公開するには、zipkin-svc-expose-public.yaml ファイルを使用します。

  • それ以外の場合は、zipkin-svc.yaml ファイルを使用します。

この例では、zipkin-svc-expose-public.yaml ファイルを使用して Zipkin サーバーをインターネットに公開し、トレースデータを簡単に表示できるようにします。

説明

作成されるサービスの名前は zipkin である必要があります。

  1. ビジネス要件に基づいて次のコードを使用して YAML ファイルを作成します。

    • Zipkin サーバーをインターネットに公開するには、次の内容の zipkin-svc-expose-public.yaml ファイルを使用します。

      展開して zipkin-svc-expose-public.yaml ファイルを表示する

      apiVersion: v1
      kind: Service
      metadata:
        labels:
          app: tracing
          component: zipkin
        name: zipkin
        namespace: istio-system
      spec:
        ports:
        - name: zipkin
          port: 9411
          protocol: TCP
          targetPort: 9411
        selector:
          app: zipkin-server
          component: zipkin
        type: LoadBalancer
    • Zipkin サーバーをインターネットに公開する必要がない場合は、次の内容の zipkin-svc.yaml ファイルを使用します。

      展開して zipkin-svc.yaml ファイルを表示する

      apiVersion: v1
      kind: Service
      metadata:
        labels:
          app: tracing
          component: zipkin
        name: zipkin
        namespace: istio-system
      spec:
        ports:
        - name: zipkin
          port: 9411
          protocol: TCP
          targetPort: 9411
        selector:
          app: zipkin-server
          component: zipkin
        type: ClusterIP
    説明

    カスタム YAML ファイルを使用して zipkin サービスをデプロイする場合は、このサービスが istio-system ネームスペースにデプロイされていることを確認してください。

  2. 次のコマンドを実行して、データプレーンの Kubernetes クラスターに zipkin サービスをデプロイします。

    # Zipkin サーバーを内部ネットワークに公開するために zipkin サービスをデプロイします。
    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG} apply -f zipkin-svc.yaml
    # Zipkin サーバーをインターネットに公開するために zipkin サービスをデプロイします。
    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG} apply -f zipkin-svc-expose-public.yaml

ステップ 4:Bookinfo アプリケーションをデプロイする

  1. 次のコマンドを実行して、Bookinfo アプリケーションをデータプレーンの Kubernetes クラスターにデプロイします。

    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG} apply -f bookinfo.yaml

    展開して bookinfo.yaml ファイルを表示する

    apiVersion: v1
    kind: Service
    metadata:
      name: details
      labels:
        app: details
        service: details
    spec:
      ports:
      - port: 9080
        name: http
      selector:
        app: details
    ---
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: bookinfo-details
      labels:
        account: details
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: details-v1
      labels:
        app: details
        version: v1
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: details
          version: v1
      template:
        metadata:
          labels:
            app: details
            version: v1
        spec:
          serviceAccountName: bookinfo-details
          containers:
          - name: details
            image: docker.io/istio/examples-bookinfo-details-v1:1.16.2
            imagePullPolicy: IfNotPresent
            ports:
            - containerPort: 9080
    ---
    ##################################################################################################
    # Ratings service
    ##################################################################################################
    apiVersion: v1
    kind: Service
    metadata:
      name: ratings
      labels:
        app: ratings
        service: ratings
    spec:
      ports:
      - port: 9080
        name: http
      selector:
        app: ratings
    ---
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: bookinfo-ratings
      labels:
        account: ratings
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: ratings-v1
      labels:
        app: ratings
        version: v1
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: ratings
          version: v1
      template:
        metadata:
          labels:
            app: ratings
            version: v1
        spec:
          serviceAccountName: bookinfo-ratings
          containers:
          - name: ratings
            image: docker.io/istio/examples-bookinfo-ratings-v1:1.16.2
            imagePullPolicy: IfNotPresent
            ports:
            - containerPort: 9080
    ---
    ##################################################################################################
    # Reviews service
    ##################################################################################################
    apiVersion: v1
    kind: Service
    metadata:
      name: reviews
      labels:
        app: reviews
        service: reviews
    spec:
      ports:
      - port: 9080
        name: http
      selector:
        app: reviews
    ---
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: bookinfo-reviews
      labels:
        account: reviews
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: reviews-v1
      labels:
        app: reviews
        version: v1
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: reviews
          version: v1
      template:
        metadata:
          labels:
            app: reviews
            version: v1
        spec:
          serviceAccountName: bookinfo-reviews
          containers:
          - name: reviews
            image: docker.io/istio/examples-bookinfo-reviews-v1:1.16.2
            imagePullPolicy: IfNotPresent
            env:
            - name: LOG_DIR
              value: "/tmp/logs"
            ports:
            - containerPort: 9080
            volumeMounts:
            - name: tmp
              mountPath: /tmp
            - name: wlp-output
              mountPath: /opt/ibm/wlp/output
          volumes:
          - name: wlp-output
            emptyDir: {}
          - name: tmp
            emptyDir: {}
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: reviews-v2
      labels:
        app: reviews
        version: v2
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: reviews
          version: v2
      template:
        metadata:
          labels:
            app: reviews
            version: v2
        spec:
          serviceAccountName: bookinfo-reviews
          containers:
          - name: reviews
            image: docker.io/istio/examples-bookinfo-reviews-v2:1.16.2
            imagePullPolicy: IfNotPresent
            env:
            - name: LOG_DIR
              value: "/tmp/logs"
            ports:
            - containerPort: 9080
            volumeMounts:
            - name: tmp
              mountPath: /tmp
            - name: wlp-output
              mountPath: /opt/ibm/wlp/output
          volumes:
          - name: wlp-output
            emptyDir: {}
          - name: tmp
            emptyDir: {}
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: reviews-v3
      labels:
        app: reviews
        version: v3
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: reviews
          version: v3
      template:
        metadata:
          labels:
            app: reviews
            version: v3
        spec:
          serviceAccountName: bookinfo-reviews
          containers:
          - name: reviews
            image: docker.io/istio/examples-bookinfo-reviews-v3:1.16.2
            imagePullPolicy: IfNotPresent
            env:
            - name: LOG_DIR
              value: "/tmp/logs"
            ports:
            - containerPort: 9080
            volumeMounts:
            - name: tmp
              mountPath: /tmp
            - name: wlp-output
              mountPath: /opt/ibm/wlp/output
          volumes:
          - name: wlp-output
            emptyDir: {}
          - name: tmp
            emptyDir: {}
    ---
    ##################################################################################################
    # Productpage services
    ##################################################################################################
    apiVersion: v1
    kind: Service
    metadata:
      name: productpage
      labels:
        app: productpage
        service: productpage
    spec:
      ports:
      - port: 9080
        name: http
      selector:
        app: productpage
    ---
    apiVersion: v1
    kind: ServiceAccount
    metadata:
      name: bookinfo-productpage
      labels:
        account: productpage
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: productpage-v1
      labels:
        app: productpage
        version: v1
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: productpage
          version: v1
      template:
        metadata:
          labels:
            app: productpage
            version: v1
        spec:
          serviceAccountName: bookinfo-productpage
          containers:
          - name: productpage
            image: docker.io/istio/examples-bookinfo-productpage-v1:1.16.2
            imagePullPolicy: IfNotPresent
            ports:
            - containerPort: 9080
            volumeMounts:
            - name: tmp
              mountPath: /tmp
          volumes:
          - name: tmp
            emptyDir: {}
    ---
  2. kubectl クライアントで次のコマンドを実行して、Bookinfo の仮想サービスをデプロイします。

    kubectl --kubeconfig=${ASM_KUBECONFIG} apply -f virtual-service-all-v1.yaml

    展開して virtual-service-all-v1.yaml ファイルを表示する

    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: productpage
    spec:
      hosts:
      - productpage
      http:
      - route:
        - destination:
            host: productpage
            subset: v1
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: reviews
    spec:
      hosts:
      - reviews
      http:
      - route:
        - destination:
            host: reviews
            subset: v1
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: ratings
    spec:
      hosts:
      - ratings
      http:
      - route:
        - destination:
            host: ratings
            subset: v1
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: details
    spec:
      hosts:
      - details
      http:
      - route:
        - destination:
            host: details
            subset: v1
    ---
  3. kubectl クライアントで次のコマンドを実行して、Bookinfo の宛先ルールをデプロイします。

    kubectl --kubeconfig=${ASM_KUBECONFIG} apply -f destination-rule-all.yaml

    展開して destination-rule-all.yaml ファイルを表示する

    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: productpage
    spec:
      host: productpage
      subsets:
      - name: v1
        labels:
          version: v1
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: reviews
    spec:
      host: reviews
      subsets:
      - name: v1
        labels:
          version: v1
      - name: v2
        labels:
          version: v2
      - name: v3
        labels:
          version: v3
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: ratings
    spec:
      host: ratings
      subsets:
      - name: v1
        labels:
          version: v1
      - name: v2
        labels:
          version: v2
      - name: v2-mysql
        labels:
          version: v2-mysql
      - name: v2-mysql-vm
        labels:
          version: v2-mysql-vm
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: DestinationRule
    metadata:
      name: details
    spec:
      host: details
      subsets:
      - name: v1
        labels:
          version: v1
      - name: v2
        labels:
          version: v2
    ---
  4. kubectl クライアントで次のコマンドを実行して、Bookinfo のゲートウェイをデプロイします。

    kubectl --kubeconfig=${ASM_KUBECONFIG} apply -f bookinfo-gateway.yaml

    展開して bookinfo-gateway.yaml ファイルを表示する

    apiVersion: networking.istio.io/v1alpha3
    kind: Gateway
    metadata:
      name: bookinfo-gateway
    spec:
      selector:
        istio: ingressgateway # use istio default controller  
      servers:
      - port:
          number: 80
          name: http
          protocol: HTTP
        hosts:
        - "*"
    ---
    apiVersion: networking.istio.io/v1alpha3
    kind: VirtualService
    metadata:
      name: bookinfo
    spec:
      hosts:
      - "*"
      gateways:
      - bookinfo-gateway
      http:
      - match:
        - uri:
            exact: /productpage
        - uri:
            prefix: /static
        - uri:
            exact: /login
        - uri:
            exact: /logout
        - uri:
            prefix: /api/v1/products
        route:
        - destination:
            host: productpage
            port:
              number: 9080

ステップ 5:トレースデータを生成する

  1. 次のコマンドを実行して、イングレスゲートウェイの IP アドレスをクエリします。

    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG} get svc -n istio-system|grep ingressgateway|awk -F ' ' '{print $4}' 
  2. ブラウザーのアドレスバーに イングレスゲートウェイの IP アドレス/productpage と入力して、Bookinfo にアクセスします。

ステップ 6:トレースデータを表示する

  1. 次のコマンドを実行して、zipkin サービスのアドレスを取得します。

    kubectl --kubeconfig=${DATA_PLANE_KUBECONFIG}get svc -n istio-system|grep zipkin|awk -F ' ' '{print $4}'
  2. ブラウザーのアドレスバーに zipkin サービスの IP アドレス:9411 と入力して、Zipkin コンソールにアクセスします。Zipkin コンソールで、トレースデータを表示できます。

    链路追踪