Todos os produtos
Search
Central de documentação

ApsaraDB for OceanBase (Deprecated):Monitore o ApsaraDB for OceanBase com o Prometheus

Última atualização: Jun 27, 2026

Este tópico descreve como implantar o OBCloud Exporter e o Prometheus para monitorar o ApsaraDB for OceanBase.

Contexto

O OBCloud Exporter é uma ferramenta do ApsaraDB for OceanBase para processamento de dados do banco de dados. Use essa ferramenta para autenticar-se no ApsaraDB for OceanBase, obter dados e monitorar o banco de dados com o Prometheus.

Você pode executar o Prometheus diretamente no sistema ou implantá-lo com docker.

Pré-requisitos

  1. Java 8 ou superior instalado.

  2. docker implantado.

Execute o Prometheus no sistema para monitorar o ApsaraDB for OceanBase

  1. Baixe o OBCloud Exporter.

    Nota

    Atualmente, não é possível baixar o OBCloud Exporter diretamente. Para obter a ferramenta, entre em contato com o Suporte Técnico do OceanBase.

  2. Implante o OBCloud Exporter.

    1. Descompacte o pacote de instalação do OBCloud Exporter no diretório /opt/obcloud-exporter.

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

      Os seguintes arquivos serão extraídos do pacote de instalação:

      • Dockerfile: arquivo de build do container docker.

      • muticloud_metric_config.yaml: arquivo de configuração de métricas. Por padrão, não é necessário modificar este arquivo.

      • application.yaml: arquivo de configuração de coleta.

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

      • readme.md: descrição do projeto.

    2. Edite o arquivo de configuração application.yaml.

      # Monitor name.
      aliyun_monitor:
        # Identity credentials.
        credential:
          access_key_id: xxx
          access_key_secret: xx
          region_id: ap-southeast-1
          # Endpoint.
          end_point: xxx
          # Whether to periodically refresh metrics. The default value is false. 
          metric_meta_auto_refresh: false
        instances:
        		# Instance ID.
          - instance_id: xxx
            # To query data of a specified tenant in the cluster, you must configure tenant_id.
            tenant_id: xxx
            # Instance type, which can be cluster (cluster instance) or tenant (tenant instance or serverless instance). 
            instance_type: tenant
            metrics: 

      Descrição dos parâmetros:

      • access_key_id e access_key_secret: par de AccessKey para autenticação. Solicite um par de AccessKey na plataforma correspondente. Para mais informações, consulte Criar um AccessKey.

      • region_id e end_point: Para mais informações, consulte Regiões (ApsaraDB for OceanBase).

      • metric_meta_auto_refresh: define se as métricas devem ser atualizadas periodicamente. O valor padrão é false.

      • instances: instâncias a serem monitoradas. Separe as instâncias de cluster ou tenant com hifens (-).

      • instance_id: ID da instância de cluster, instância serverless ou instância de tenant.

        Nota

        O valor não pode ser um ID de tenant dentro de um cluster.

      • instance_type: Os valores válidos são cluster e tenant. Se o valor de instance_id for um ID de instância de cluster, defina este parâmetro como cluster. Se for um ID de instância de tenant ou serverless, defina como tenant.

      • tenant_id: Parâmetro obrigatório para consultar dados de um tenant específico em um cluster.

      • metrics: métricas a serem coletadas. Se este parâmetro não for especificado, todas as métricas serão coletadas. Especifique as métricas no seguinte formato:

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

        A coleta de um grande número de métricas pode afetar a velocidade do processo. Nesse caso, utilize vários exporters para realizar a coleta.

  3. Execute o arquivo JAR do OBCloud Exporter.

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

    Verifique o resultado da implantação em um navegador. Acesse a porta 9400 no endereço IP correspondente para confirmar o recebimento dos dados de monitoramento.

    Nota

    Na prática, use o endereço IP e o número de porta configurados para o acesso.

  4. Baixe a versão necessária do Prometheus no site oficial. Veja abaixo um exemplo de download do Prometheus 2.50.1 para Linux:

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

    1. Descompacte o pacote de instalação do Prometheus no diretório /opt/prometheus.

      mkdir -p /opt/prometheus
      tar -zxvf prometheus-2.50.1.linux-amd64.tar.gz -C /opt/prometheus --strip-components=1
    2. Mova o arquivo de configuração prometheus.yml para o diretório de trabalho e edite-o conforme necessário.

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

      Modifique os seguintes parâmetros:

      global:
        scrape_interval: 30s
        scrape_timeout: 20s
      
      scrape_configs:
        - job_name: "nodes"
          static_configs:
          - targets: ['localhost:9400']
    3. Crie o arquivo de serviço e o diretório de armazenamento de dados do Prometheus.

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

      Insira e salve o seguinte conteúdo:

      Nota

      Os parâmetros User e Group são opcionais. Para obter informações sobre como configurar um nome de usuário e um grupo de usuários, consulte a próxima etapa.

      [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. (Opcional) Configure um nome de usuário e um grupo de usuários. Caso as credenciais especificadas na etapa anterior já existam, ou se nenhuma foi definida, ignore esta etapa.

      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. Inicie o serviço do Prometheus.

    # Reload systemd configurations.
    sudo systemctl daemon-reload
    
    # Start the Prometheus service.
    sudo systemctl start prometheus
    
    # Enable the Prometheus service to start at boot.
    sudo systemctl enable prometheus
    
    # Check the service status.
    sudo systemctl status prometheus
  7. Verifique se o Prometheus foi iniciado.

     sudo netstat -ntlp | grep 9090

Implante o Prometheus usando docker para monitorar o ApsaraDB for OceanBase

  1. Baixe o OBCloud Exporter.

    Nota

    Atualmente, não é possível baixar o OBCloud Exporter diretamente. Para obter a ferramenta, entre em contato com o Suporte Técnico do OceanBase.

  2. Implante o OBCloud Exporter.

    1. Descompacte o pacote de instalação do OBCloud Exporter no diretório /opt/obcloud-exporter.

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

      Os seguintes arquivos serão extraídos do pacote de instalação:

      • Dockerfile: arquivo de build do container docker.

      • muticloud_metric_config.yaml: arquivo de configuração de métricas. Por padrão, não é necessário modificar este arquivo.

      • application.yaml: arquivo de configuração de coleta.

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

      • readme.md: descrição do projeto.

    2. Edite o arquivo de configuração application.yaml.

      # Monitor name.
      aliyun_monitor:
        # Identity credentials.
        credential:
          access_key_id: xxx
          access_key_secret: xx
          region_id: ap-southeast-1
          # Endpoint.
          end_point: xxx
          # Whether to periodically refresh metrics. The default value is false. 
          metric_meta_auto_refresh: false
        instances:
        		# Instance ID.
          - instance_id: xxx
            # To query data of a specified tenant in the cluster, you must configure tenant_id.
            tenant_id: xxx
            # Instance type, which can be cluster (cluster instance) or tenant (tenant instance or serverless instance). 
            instance_type: tenant
            metrics: 

      Descrição dos parâmetros:

      • access_key_id e access_key_secret: par de AccessKey para autenticação. Solicite um par de AccessKey na plataforma correspondente. Para mais informações, consulte Criar um AccessKey.

      • region_id e end_point: Para mais informações, consulte Regiões (ApsaraDB for OceanBase).

      • metric_meta_auto_refresh: define se as métricas devem ser atualizadas periodicamente. O valor padrão é false.

      • instances: instâncias a serem monitoradas. Separe as instâncias de cluster ou tenant com hifens (-).

      • instance_id: ID da instância de cluster, instância serverless ou instância de tenant.

        Nota

        O valor não pode ser um ID de tenant dentro de um cluster.

      • instance_type: Os valores válidos são cluster e tenant. Se o valor de instance_id for um ID de instância de cluster, defina este parâmetro como cluster. Se for um ID de instância de tenant ou serverless, defina como tenant.

      • tenant_id: Parâmetro obrigatório para consultar dados de um tenant específico em um cluster.

      • metrics: métricas a serem coletadas. Se este parâmetro não for especificado, todas as métricas serão coletadas. Especifique as métricas no seguinte formato:

        instances:
          -instance_id: xxx
            tenant_id: xxx
            instance_type: cluster
            metrics: 
              - sql_all_rt
              - sql_delete_rt
        Nota
        • Para mais informações, consulte Métricas de monitoramento.

        • A coleta de um grande número de métricas pode afetar a velocidade do processo. Nesse caso, utilize vários exporters para realizar a coleta.

  3. Inicie o OBCloud Exporter usando docker.

    1. No diretório /opt/obcloud-exporter, faça o build do container docker obcloud-exporter.

      cd /opt/obcloud-exporter
      docker build -t obcloud-exporter:1.0 .
    2. Inicie o container docker diretamente ou usando um arquivo de configuração externo.

      1. Inicie o container docker diretamente.

        docker run -itd -p9400:9400 --name obcloud-exporter obcloud-exporter:1.0
      2. Inicie o container docker usando um arquivo de configuração externo.

        docker run -itd -p9400:9400 -v /opt/obcloud-exporter/application.yaml:/app/application.yaml --name obcloud-exporter obcloud-exporter:1.0
  4. Verifique o resultado da implantação em um navegador. Acesse a porta 9400 no endereço IP correspondente para confirmar o recebimento dos dados de monitoramento.

    Nota

    Na prática, use o endereço IP e o número de porta configurados para o acesso.

  5. Crie o arquivo de configuração prometheus.yml do Prometheus.

    vi /usr/local/bin/prometheus.yml

    Edite o arquivo de configuração.

    global:
      scrape_interval: 30s
      evaluation_interval: 30s
    
    scrape_configs:
      - job_name: obcloud-exporter-test
        static_configs:
            # Local server and port number.
          - targets: ['obcloud-exporter:9400']
            labels:
              instance: obcloud-exporter
  6. Inicie o serviço do 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. Verifique se o Prometheus foi iniciado.

    sudo netstat -ntlp | grep 9090

Visualize dados de monitoramento do banco de dados pelo Prometheus

Acesse a URL do serviço Prometheus http://localhost:9090/targets em um navegador para visualizar os dados de monitoramento correspondentes.

Métricas de monitoramento

Ao configurar o OBCloud Exporter, especifique as métricas de monitoramento compatíveis com o ApsaraDB for OceanBase para que sejam coletadas. Durante a execução do OBCloud Exporter, o sistema sincroniza essas métricas, incluindo as de host do cluster e as de nível de tenant. Para mais informações, consulte métricas de monitoramento do cluster e métricas de monitoramento do tenant.

Se o parâmetro metric_meta_auto_refresh no arquivo de configuração application.yaml estiver definido como false, as métricas compatíveis corresponderão àquelas retornadas no acesso inicial. Se estiver definido como true, a lista de métricas compatíveis será atualizada a cada 10 minutos.