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

Alibaba Cloud Service Mesh:セルフマネージド Prometheus インスタンスを使用して ASM インスタンスを監視する

最終更新日:Jan 13, 2025

Prometheus は、クラウドネイティブアプリケーションの監視に使用されるオープンソースツールです。このトピックでは、セルフマネージド Prometheus インスタンスをデプロイして Service Mesh(ASM)インスタンスを監視する方法について説明します。

前提条件

手順 1:メトリクスを設定する

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

  2. [クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。左側のナビゲーションペインで、[アプリケーション] > [helm] を選択します。

  3. [helm] ページで、ack-prometheus-operator を見つけ、[更新][アクション] 列でクリックします。

  4. [リリースの更新] パネルで、YAML コードエディターの additionalScrapeConfigs フィールドを変更し、[OK] をクリックします。

    YAML ファイルはサイズが大きいため、Ctrl + F キーボードショートカットを押して additionalScrapeConfigs フィールドを検索できます。次のコードは、変更された additionalScrapeConfigs フィールドを示しています。

    additionalScrapeConfigs:
    # Envoy 統計情報のスクレイプ設定
    - job_name: 'envoy-stats'
      metrics_path: /stats/prometheus
      kubernetes_sd_configs:
      - role: pod
      relabel_configs:
      - source_labels: [__meta_kubernetes_pod_container_port_name]
        action: keep
        regex: '.*-envoy-prom'
      - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
        action: replace
        regex: ([^:]+)(?::\d+)?;(\d+)
        replacement: $1:15090
        target_label: __address__
      - action: labeldrop
        regex: __meta_kubernetes_pod_label_(.+)
      - source_labels: [__meta_kubernetes_namespace]
        action: replace
        target_label: namespace
      - source_labels: [__meta_kubernetes_pod_name]
        action: replace
        target_label: pod_name

手順 2:Prometheus を有効にする

詳細については、「Managed Service for Prometheus にメトリクスを収集する」をご参照ください。

手順 3:監視データを生成する

データプレーン上のサービスにリクエストを送信します。この例では、Bookinfo アプリケーションを使用します。詳細については、「はじめに」をご参照ください。 Bookinfo の Productpage ページに移動します。ページを複数回更新します。监控数据

結果を確認する

Envoy プロキシが指定されたメトリクスを収集するかどうかを確認する

次のコマンドを実行し、コマンド出力を確認します。コマンド出力のデータは、Envoy プロキシによって収集されたメトリクスデータを示します。コマンド出力にデータが含まれていない場合、Envoy プロキシはメトリクスデータを収集していません。

details=$(kubectl get pod -l app=details -o jsonpath={.items..metadata.name})
kubectl exec $details -c istio-proxy -- curl -s localhost:15090/stats/prometheus |grep istio

Prometheus によって監視されているメトリクスを表示する

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

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

  3. [サービス] ページで、[外部 IP] 列の Prometheus のパブリックエンドポイントをクリックします。

  4. [prometheus] ページで、検索ボックスに istio_requests_total と入力し、[実行] をクリックします。 Prometheus によって監視されているメトリクスが表示されます。 peomethus

メトリクスデータの Grafana ダッシュボードを表示する

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

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

  3. [サービス] ページで、[外部 IP] 列の Grafana のパブリックエンドポイントをクリックします。

  4. Grafana ページで、左上隅の [istio Workload Dashboard] を選択します。次の図は、表示される Grafana ダッシュボードを示しています。 3