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

Managed Service for Prometheus:Tencent Cloud リソースを監視するために Managed Service for Prometheus を使用する

最終更新日:Dec 27, 2024

このトピックでは、Alibaba Cloud Managed Service for Prometheus を使用して Tencent Cloud リソースを監視する方法について説明します。

前提条件

  • Container Service for Kubernetes (ACK) クラスタが作成されていること。詳細については、ACK 専用クラスタの作成を参照してください。

  • ACK クラスタがManaged Service for Prometheusで監視されていること。詳細については、ACK クラスタの監視を参照してください。

背景情報

QCloud エクスポーターを使用して、Tencent Cloud Cloud Monitor (CM) から Managed Service for Prometheus にメトリクスをエクスポートできます。これにより、Managed Service for Prometheus で Tencent Cloud リソースを監視できます。

CMは、Tencent Cloud によって開発されたリアルタイムの監視およびアラートサービスです。CM は、クラウド仮想マシン (CVM) やデータベースサービスなど、すべての Tencent Cloud オファリングを一元的に監視するためのプラットフォームを提供します。QCloud エクスポーターは、サードパーティの Prometheus エクスポーターです。次の表に、QCloud エクスポーターでサポートされている Tencent Cloud リソースを示します。

サービス

名前空間

メトリック

TencentDB for MongoDB

QCE/CMONGO

メトリックの詳細

Cloud Database

QCE/CDB

メトリックの詳細

TencentDB for Redis (標準アーキテクチャ)

QCE/REDIS

なし

TencentDB for Redis (クラスタアーキテクチャ)

QCE/REDIS_CLUSTER

なし

TencentDB for Redis (Memory Edition)

QCE/REDIS_MEM

メトリックの詳細

クラウド仮想マシン

QCE/CVM

メトリックの詳細

クラウドオブジェクトストレージ

QCE/COS

メトリックの詳細

コンテンツ配信ネットワーク

QCE/CDN

メトリックの詳細

クラウドロードバランサー (インターネット)

QCE/LB_PUBLIC

メトリックの詳細

クラウドロードバランサー (レイヤー 7)

QCE/LOADBALANCE

メトリックの詳細

NAT ゲートウェイ

QCE/NAT_GATEWAY

メトリックの詳細

Direct Connect (接続)

QCE/DC

メトリックの詳細

Direct Connect (専用トンネル)

QCE/DCX

メトリックの詳細

クラウドブロックストレージ

QCE/CBS

メトリックの詳細

TencentDB for SQL Server

QCE/SQLSERVER

メトリックの詳細

TencentDB for MariaDB

QCE/MARIADB

メトリックの詳細

Elasticsearch Service

QCE/CES

メトリックの詳細

Cloud Message Queue (キューサービス)

QCE/CMQ

メトリックの詳細

Cloud Message Queue (トピックサブスクリプション)

QCE/CMQTOPIC

メトリックの詳細

TencentDB for PostgreSQL

QCE/POSTGRES

メトリックの詳細

CKafka

QCE/CKAFKA

メトリックの詳細

Memcached

QCE/MEMCACHED

なし

Lighthouse

QCE/LIGHTHOUSE

なし

TDSQL for MySQL

QCE/TDMYSQL

メトリックの詳細

Elastic IP

QCE/LB

メトリックの詳細

手順

次の図は、Managed Service for Prometheus を使用して Tencent Cloud リソースを監視する方法を示しています。

手順 1: QCloud エクスポーターをデプロイする

  1. イメージをビルドします。

    git clone https://github.com/tencentyun/tencentcloud-exporter.git
    make build
  2. リソースとインスタンスを設定します。

    • TencentCloud API の認証情報を設定します。

    • メトリックをエクスポートするリソースとインスタンスを設定します。

    すべての CVM インスタンスのすべてのメトリックをエクスポートする場合は、次のコードを使用できます。

    credential:
      access_key: "access_key"  // TencentCloud API の SecretId。
      secret_key: "secret_key"  // TencentCloud API の SecretKey。
      region: "ap-nanjing" // インスタンスが存在するリージョン。
    
    rate_limit: 15              // データをプルするために CM が 1 秒あたりに行うことができる API 呼び出しの最大数。例: 20。詳細については、https://cloud.tencent.com/document/product/248/31014 を参照してください。
    
    products:
      - namespace: QCE/CVM      // メトリックの詳細については、https://cloud.tencent.com/document/product/248/6843 を参照してください。
        all_metrics: true       // サポートされているすべてのメトリックがエクスポートされるように指定します。
        all_instances: true     // 指定されたリージョンのすべてのインスタンスのメトリックがエクスポートされるように指定します。
        //only_include_metrics: []
        //only_include_instances: [ins-xxxxxxxx]
        extra_labels: [InstanceId, InstanceName] // インスタンスのフィールドがエクスポートされるメトリックラベル。
        //statistics_types: [last]
        //period_seconds: 60
        //metric_name_type: 2
    説明

    QCloud.yaml ファイルの設定方法の詳細については、tencentcloud-exporterを参照してください。

  3. QCloud エクスポーターをデプロイします。

    上記の YAML ファイルを使用して Docker イメージを作成し、DockerHub やAlibaba Cloud Container Registryなどのイメージリポジトリにアップロードします。

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

    2. クラスタページで、管理するクラスタを見つけ、アクション列のアプリケーションをクリックします。

    3. コンテナグループを作成します。

      1. 左側のナビゲーションペインで、ワークロード > デプロイメントを選択します。

      2. デプロイメントページで、YAML から作成をクリックします。

      3. 作成ページで、テンプレートコードエディターに次のコードを入力し、作成をクリックします。

        apiVersion: apps/v1
        kind: Deployment
        metadata:
          generation: 5
          labels:
            app: qcloud-exporter-demo
          name: qcloud-exporter-demo
          namespace: default
        spec:
          replicas: 1
          selector:
            matchLabels:
              app: qcloud-exporter-demo
          template:
            metadata:
              labels:
                app: qcloud-exporter-demo
            spec:
              containers:
                - args:
                    - '--config.file=/usr/local/etc/qcloud-cvm-product.yml'
                  image: 'registry.cn-hangzhou.aliyuncs.com/fuling/qcloud-exporter:v0.1'
                  imagePullPolicy: Always
                  name: qcloud-exporter
                  ports:
                    - containerPort: 9123
                      name: web-normal
                      protocol: TCP
    4. サービスを作成します。

      1. 左側のナビゲーションペインで、ネットワーク > サービスを選択します。

      2. サービスページで、YAML でリソースを作成をクリックします。

      3. 作成ページで、テンプレートコードエディターに次のコードを入力し、作成をクリックします。

        apiVersion: v1
        kind: Service
        metadata:
          labels:
            app: qcloud-exporter-demo
          name: qcloud-exporter-demo-svc
          namespace: default
        spec:
          ports:
            - name: qcloud-exporter-metrics
              port: 9123
              protocol: TCP
              targetPort: 9123
          selector:
            app: qcloud-exporter-demo

手順 2: サービスディスカバリ設定を追加する

Managed Service for Prometheusでサービスディスカバリ設定を追加して QCloud エクスポーターからデータを収集するには、次の手順を実行します。

重要

ACK クラスタがManaged Service for Prometheusで監視されていることを確認してください。詳細については、Container Service に Prometheus インスタンスを使用するを参照してください。

  1. Managed Service for Prometheus コンソールにログインします。

  2. 左側のナビゲーションペインで、インスタンスをクリックします。

  3. 上部のナビゲーションバーで、ACK クラスタが存在するリージョンを選択し、クラスタの名前をクリックします。

  4. 左側のナビゲーションペインで、サービスディスカバリをクリックします。次に、設定タブをクリックします。

  5. 設定タブで、ServiceMonitorタブをクリックし、Servicemonitor を追加をクリックします。Servicemonitor を追加ダイアログボックスで、次のコードを入力し、OKをクリックします。

    apiVersion: monitoring.coreos.com/v1
    kind: ServiceMonitor
    metadata:
      name: qcloud-exporter-sm
      namespace: default
    spec:
      endpoints:
      - interval: 60s
        path: /metrics
        port: qcloud-exporter-metrics
        scrapeTimeout: 60s
      namespaceSelector:
        any: true
      selector:
        matchLabels:
          app: qcloud-exporter-demo

    ServiceMonitorタブにサービスディスカバリ設定が表示されます。

    image

手順 3: アラートルールを作成する

アラートルールを作成します。詳細については、Prometheus インスタンスのアラートルールを作成するを参照してください。