All Products
Search
Document Center

ApsaraDB for OceanBase (Deprecated):Memantau ApsaraDB for OceanBase dengan menggunakan Prometheus

Last Updated:Jun 28, 2025

Topik ini menjelaskan cara menerapkan OBCloud Exporter dan Prometheus untuk memantau ApsaraDB for OceanBase.

Latar Belakang

OBCloud Exporter adalah alat yang disediakan oleh ApsaraDB for OceanBase untuk memproses data basis data. Anda dapat menggunakannya untuk melakukan otentikasi dengan ApsaraDB for OceanBase, mendapatkan data, dan menggunakan Prometheus untuk memantau basis data.

Prometheus dapat dijalankan langsung pada sistem atau diterapkan menggunakan Docker.

Prasyarat

  1. Anda telah menginstal Java 8 atau versi lebih baru.

  2. Anda telah menerapkan Docker.

Jalankan Prometheus di sistem untuk memantau ApsaraDB for OceanBase

  1. Unduh OBCloud Exporter.

    Catatan

    Saat ini, Anda tidak dapat mengunduh OBCloud Exporter secara langsung. Untuk mendapatkan alat tersebut, hubungi Dukungan Teknis OceanBase.

  2. Terapkan OBCloud Exporter.

    1. Ekstrak paket instalasi OBCloud Exporter ke direktori /opt/obcloud-exporter.

      mkdir /opt/obcloud-exporter
      tar -zxvf Obcloud_Exporter.tar.gz -C /opt/obcloud-exporter --strip-components=1

      Berikut adalah file yang diekstrak dari paket instalasi:

      • Dockerfile: File pembuatan kontainer Docker.

      • muticloud_metric_config.yaml: File konfigurasi metrik. Secara default, file ini tidak perlu dimodifikasi.

      • application.yaml: File konfigurasi pengumpulan.

      • obcloud-exporter-1.0-SNAPSHOT-jar-with-dependencies.jar: Program OBCloud Exporter.

      • readme.md: Deskripsi proyek.

    2. Edit file konfigurasi application.yaml.

      # Nama pemantauan.
      aliyun_monitor:
        # Kredensial identitas.
        credential:
          access_key_id: xxx
          access_key_secret: xx
          region_id: ap-southeast-1
          # Endpoint.
          end_point: xxx
          # Apakah akan menyegarkan metrik secara berkala. Nilai defaultnya adalah false. 
          metric_meta_auto_refresh: false
        instances:
        		# ID instance.
          - instance_id: xxx
            # Untuk menanyakan data tenant tertentu dalam kluster, Anda harus mengonfigurasi tenant_id.
            tenant_id: xxx
            # Tipe instance, yang bisa berupa cluster (instance kluster) atau tenant (instance tenant atau instance serverless). 
            instance_type: tenant
            metrics: 

      Parameter-parameter tersebut dijelaskan sebagai berikut:

      • access_key_id dan access_key_secret: Pasangan AccessKey untuk otentikasi. Anda dapat mengajukan pasangan AccessKey dari platform terkait. Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey.

      • region_id dan end_point: Untuk informasi lebih lanjut, lihat Wilayah (ApsaraDB for OceanBase).

      • metric_meta_auto_refresh: Menentukan apakah akan menyegarkan metrik secara berkala. Nilai defaultnya adalah false.

      • instances: Instance yang akan dipantau. Pisahkan instance kluster atau tenant dengan tanda hubung (-).

      • instance_id: ID instance kluster, instance serverless, atau instance tenant.

        Catatan

        Nilainya tidak boleh berupa ID tenant dalam kluster.

      • instance_type: Nilai valid adalah cluster dan tenant. Saat nilai instance_id adalah ID instance kluster, atur parameter ini ke cluster. Saat nilai instance_id adalah ID instance tenant atau ID instance serverless, atur parameter ini ke tenant.

      • tenant_id: Parameter ini diperlukan saat Anda ingin menanyakan data tenant tertentu dalam kluster.

      • metrics: Metrik yang akan dikumpulkan. Jika parameter ini tidak ditentukan, semua metrik akan dikumpulkan. Tentukan metrik dalam format berikut:

        instances:
          -instance_id: xxx
            tenant_id: xxx
            instance_type: cluster
            metrics: 
              - sql_all_rt
              - sql_delete_rt
        Catatan

        Jika sejumlah besar metrik dikumpulkan, kecepatan pengumpulan mungkin terpengaruh. Dalam hal ini, Anda dapat menggunakan beberapa exporter untuk mengumpulkan metrik.

  3. Jalankan file JAR OBCloud Exporter.

    java -jar /opt/obcloud-exporter/obcloud-exporter-1.0-SNAPSHOT-jar-with-dependencies.jar

    Verifikasi hasil penerapan di browser. Akses port 9400 pada alamat IP yang sesuai di browser untuk memverifikasi apakah data pemantauan diterima.

    Catatan

    Dalam praktiknya, gunakan alamat IP dan nomor port yang dikonfigurasi untuk akses.

  4. Unduh Prometheus versi yang diperlukan dari situs resmi. Berikut adalah contoh mengunduh Prometheus 2.50.1 untuk Linux:

    wget https://github.com/prometheus/prometheus/releases/download/v2.50.1/prometheus-2.50.1.linux-amd64.tar.gz
  5. Terapkan Prometheus.

    1. Ekstrak paket instalasi Prometheus ke direktori /opt/prometheus.

      mkdir -p /opt/prometheus
      tar -zxvf prometheus-2.50.1.linux-amd64.tar.gz -C /opt/prometheus --strip-components=1
    2. Pindahkan file konfigurasi prometheus.yml ke direktori kerja dan edit file sesuai kebutuhan.

      mv /opt/prometheus/prometheus.yml /usr/local/bin/
      vi /usr/local/bin/prometheus.yml

      Modifikasi parameter berikut:

      global:
        scrape_interval: 30s
        scrape_timeout: 20s
      
      scrape_configs:
        - job_name: "nodes"
          static_configs:
          - targets: ['localhost:9400']
    3. Buat file layanan dan direktori penyimpanan data Prometheus.

      mkdir /var/lib/prometheus/
      sudo vim /etc/systemd/system/Prometheus.service

      Masukkan dan simpan konten berikut.

      Catatan

      Parameter User dan Group bersifat opsional. Untuk informasi tentang cara mengonfigurasi nama pengguna dan grup pengguna, lihat langkah berikutnya.

      [Unit]
      Description=Prometheus
      Wants=network-online.target
      After=network-online.target
      
      [Service]
      User=prometheus
      Group=prometheus
      Restart=on-failure
      ExecStart=/opt/prometheus/prometheus \
            --config.file /usr/local/bin/prometheus.yml \
            --storage.tsdb.path /var/lib/prometheus/
      
      [Install]
      WantedBy=multi-user.target
    4. (Opsional) Konfigurasikan nama pengguna dan grup pengguna. Jika nama pengguna dan grup pengguna yang ditentukan pada langkah sebelumnya sudah ada, atau tidak ada nama pengguna dan grup pengguna yang ditentukan, Anda dapat melewati langkah ini.

      sudo groupadd prometheus
      sudo useradd -r -g prometheus prometheus
      sudo chown -R prometheus:prometheus /opt/prometheus /var/lib/prometheus
      sudo chmod -R 755 /opt/prometheus /var/lib/prometheus
  6. Mulai layanan Prometheus.

    # Muat ulang konfigurasi systemd.
    sudo systemctl daemon-reload
    
    # Mulai layanan Prometheus.
    sudo systemctl start prometheus
    
    # Aktifkan layanan Prometheus untuk mulai saat boot.
    sudo systemctl enable prometheus
    
    # Periksa status layanan.
    sudo systemctl status prometheus
  7. Periksa apakah Prometheus telah dimulai.

     sudo netstat -ntlp | grep 9090

Terapkan Prometheus dengan menggunakan Docker untuk memantau ApsaraDB for OceanBase

  1. Unduh OBCloud Exporter.

    Catatan

    Saat ini, Anda tidak dapat mengunduh OBCloud Exporter secara langsung. Untuk mendapatkan alat tersebut, hubungi Dukungan Teknis OceanBase.

  2. Terapkan OBCloud Exporter.

    1. Ekstrak paket instalasi OBCloud Exporter ke direktori /opt/obcloud-exporter.

      mkdir /opt/obcloud-exporter
      tar -zxvf Obcloud_Exporter.tar.gz -C /opt/obcloud-exporter --strip-components=1

      Berikut adalah file yang diekstrak dari paket instalasi:

      • Dockerfile: File pembuatan kontainer Docker.

      • muticloud_metric_config.yaml: File konfigurasi metrik. Secara default, file ini tidak perlu dimodifikasi.

      • application.yaml: File konfigurasi pengumpulan.

      • obcloud-exporter-1.0-SNAPSHOT-jar-with-dependencies.jar: Program OBCloud Exporter.

      • readme.md: Deskripsi proyek.

    2. Edit file konfigurasi application.yaml.

      # Nama pemantauan.
      aliyun_monitor:
        # Kredensial identitas.
        credential:
          access_key_id: xxx
          access_key_secret: xx
          region_id: ap-southeast-1
          # Endpoint.
          end_point: xxx
          # Apakah akan menyegarkan metrik secara berkala. Nilai defaultnya adalah false. 
          metric_meta_auto_refresh: false
        instances:
        		# ID instance.
          - instance_id: xxx
            # Untuk menanyakan data tenant tertentu dalam kluster, Anda harus mengonfigurasi tenant_id.
            tenant_id: xxx
            # Tipe instance, yang bisa berupa cluster (instance kluster) atau tenant (instance tenant atau instance serverless). 
            instance_type: tenant
            metrics: 

      Parameter-parameter tersebut dijelaskan sebagai berikut:

      • access_key_id dan access_key_secret: Pasangan AccessKey untuk otentikasi. Anda dapat mengajukan pasangan AccessKey dari platform terkait. Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey.

      • region_id dan end_point: Untuk informasi lebih lanjut, lihat Wilayah (ApsaraDB for OceanBase).

      • metric_meta_auto_refresh: Menentukan apakah akan menyegarkan metrik secara berkala. Nilai defaultnya adalah false.

      • instances: Instance yang akan dipantau. Pisahkan instance kluster atau tenant dengan tanda hubung (-).

      • instance_id: ID instance kluster, instance serverless, atau instance tenant.

        Catatan

        Nilainya tidak boleh berupa ID tenant dalam kluster.

      • instance_type: Nilai valid adalah cluster dan tenant. Saat nilai instance_id adalah ID instance kluster, atur parameter ini ke cluster. Saat nilai instance_id adalah ID instance tenant atau ID instance serverless, atur parameter ini ke tenant.

      • tenant_id: Parameter ini diperlukan saat Anda ingin menanyakan data tenant tertentu dalam kluster.

      • metrics: Metrik yang akan dikumpulkan. Jika parameter ini tidak ditentukan, semua metrik akan dikumpulkan. Tentukan metrik dalam format berikut:

        instances:
          -instance_id: xxx
            tenant_id: xxx
            instance_type: cluster
            metrics: 
              - sql_all_rt
              - sql_delete_rt
        Catatan
        • Untuk informasi lebih lanjut, lihat Metrik pemantauan.

        • Jika sejumlah besar metrik dikumpulkan, kecepatan pengumpulan mungkin terpengaruh. Dalam hal ini, Anda dapat menggunakan beberapa exporter untuk mengumpulkan metrik.

  3. Mulai OBCloud Exporter dengan menggunakan Docker.

    1. Di direktori /opt/obcloud-exporter, buat kontainer Docker obcloud-exporter.

      cd /opt/obcloud-exporter
      docker build -t obcloud-exporter:1.0 .
    2. Mulai kontainer Docker langsung atau dengan menggunakan file konfigurasi eksternal.

      1. Mulai kontainer Docker langsung.

        docker run -itd -p9400:9400 --name obcloud-exporter obcloud-exporter:1.0
      2. Mulai kontainer Docker dengan menggunakan file konfigurasi eksternal.

        docker run -itd -p9400:9400 -v /opt/obcloud-exporter/application.yaml:/app/application.yaml --name obcloud-exporter obcloud-exporter:1.0
  4. Verifikasi hasil penerapan di browser. Akses port 9400 pada alamat IP yang sesuai di browser untuk memverifikasi apakah data pemantauan diterima.

    Catatan

    Dalam praktiknya, gunakan alamat IP dan nomor port yang dikonfigurasi untuk akses.

  5. Buat file konfigurasi prometheus.yml Prometheus.

    vi /usr/local/bin/prometheus.yml

    Edit file konfigurasi.

    global:
      scrape_interval: 30s
      evaluation_interval: 30s
    
    scrape_configs:
      - job_name: obcloud-exporter-test
        static_configs:
            # Server lokal dan nomor port.
          - targets: ['obcloud-exporter:9400']
            labels:
              instance: obcloud-exporter
  6. Mulai layanan Prometheus.

     docker run  -d \
       -p 9090:9090 \
       -v /usr/local/bin/prometheus.yml:/etc/prometheus/prometheus.yml  \
       --link obcloud-exporter  \
       --name prometheus \
       prom/prometheus
  7. Periksa apakah Prometheus telah dimulai.

    sudo netstat -ntlp | grep 9090

Lihat data pemantauan basis data melalui Prometheus

Kunjungi URL layanan Prometheus http://localhost:9090/targets di browser untuk melihat data pemantauan yang sesuai.

Metrik pemantauan

Saat mengonfigurasi OBCloud Exporter, tentukan metrik pemantauan yang didukung oleh ApsaraDB for OceanBase, sehingga metrik tersebut akan dikumpulkan oleh OBCloud Exporter. Saat OBCloud Exporter berjalan, sistem menyinkronkan metrik pemantauan ini, termasuk metrik pemantauan host kluster dan metrik pemantauan tingkat tenant, ke OBCloud Exporter. Untuk informasi lebih lanjut, lihat metrik pemantauan kluster dan metrik pemantauan tenant.

Saat parameter metric_meta_auto_refresh dalam file konfigurasi application.yaml diatur ke false, metrik pemantauan yang didukung adalah yang dikembalikan saat akses awal. Saat parameter metric_meta_auto_refresh diatur ke true, daftar metrik pemantauan yang didukung diperbarui setiap 10 menit.