指標をエクスポートする

このページは、インフラストラクチャ オペレーターを対象としています。

このページでは、クラスタ内の Prometheus モニタリング システムから外部のロギングツールとモニタリング ツールに指標をエクスポートする方法について説明します。

前提条件

管理クラスタには、少なくとも 1 つのロードバランサのアドレスプールの予備 IP アドレスが必要です。

Prometheus 連携を構成する

切断モードの指標で実行されている Anthos は、Prometheus の連携を使用して外部システムにエクスポートできます。以下の手順では、外部のモニタリングおよびロギングのシステムが Prometheus ベースのシステムであることを前提としています。

  1. 連携機能が外部システムから Prometheus へアクセスすることを許可するには、次の構成を管理クラスタに適用します。

    cat <<EOF | kubectl apply --kubeconfig=ADMIN_OIDC_KUBECONFIG -f -
    apiVersion: v1
    kind: Service
    metadata:
      # the name of the service must be anthos-prometheus-k8s-external
      name: anthos-prometheus-k8s-external
      namespace: kube-system
    spec:
      ports:
      - name: http
        port: 9090
        protocol: TCP
        targetPort: 9090
      selector:
        app: anthos-prometheus-k8s
      sessionAffinity: ClientIP
      type: LoadBalancer
    EOF
    
  2. 外部システムの Prometheus 構成ファイルの scrape_configs セクションに、次の構成を追加します。

    scrape_configs:
      - job_name: 'federate'
        scrape_interval: 1m
    
        honor_labels: true
        metrics_path: '/federate'
    
        params:
          'match[]':
            - '{job!=""}'
    
        static_configs:
          - targets:
            - '<loadbalancer-ip-of-anthos-prometheus-k8s-external>:9090'
    
  3. Prometheus のロードバランサ IP を取得するには、次のコマンドを実行します。

    kubectl get --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system svc anthos-prometheus-k8s-external -ojsonpath={.status.loadBalancer.ingress[*].ip}
    

次のステップ

ロギングとモニタリングの詳細について確認する。