Todos os produtos
Search
Central de documentação

Managed Service for Prometheus:Monitore o Cassandra com o Prometheus

Última atualização: Aug 26, 2026

Este tópico descreve como monitorar o Cassandra usando o Managed Service for Prometheus.

Pré-requisitos

Crie uma instância do Prometheus. Para mais informações, consulte:

Etapa 1: Implante o agente JMX do Cassandra

  1. Baixe o agente JMX do Cassandra correspondente à sua versão para a instância ECS que executa o Cassandra.

  2. Descompacte o pacote do agente baixado no diretório MCAC_ROOT e adicione o seguinte conteúdo ao arquivo cassandra-env.sh.

    MCAC_ROOT=/path/to/directory
    JVM_OPTS="$JVM_OPTS -javaagent:${MCAC_ROOT}/lib/datastax-mcac-agent.jar"
    Importante

    O agente JMX do Cassandra expõe a porta 9103 para coleta de dados pelo Prometheus. Para alterar essa porta, modifique o valor no arquivo ${MCAC_ROOT}/config/collectd.conf.tmpl para a porta desejada.

    LoadPlugin write_prometheus
    <Plugin write_prometheus>
      Port "9103"
    </Plugin>
  3. Após concluir a configuração, reinicie a aplicação Cassandra. No servidor ECS, execute o comando curl localhost:{jmx_port}/metrics. Uma instalação bem-sucedida retorna dados.

    # HELP collectd_collectd_cache_size write_prometheus plugin: 'collectd' Type: 'cache_size', Dstype: 'gauge', Dsname: 'value'
    # TYPE collectd_collectd_cache_size gauge
    collectd_collectd_cache_size{collectd="cache",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1"} 6985 16
    # HELP collectd_collectd_derive_total write_prometheus plugin: 'collectd' Type: 'derive', Dstype: 'derive', Dsname: 'value'
    # TYPE collectd_collectd_derive_total counter
    collectd_collectd_derive_total{collectd="write_queue",type="dropped",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1"} 0 168768
    # HELP collectd_collectd_queue_length write_prometheus plugin: 'collectd' Type: 'queue_length', Dstype: 'gauge', Dsname: 'value'
    # TYPE collectd_collectd_queue_length gauge
    collectd_collectd_queue_length{collectd="write_queue",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1"} 144 168
    # HELP collectd_contextswitch_total write_prometheus plugin: 'contextswitch' Type: 'contextswitch', Dstype: 'derive', Dsname: 'value'
    # TYPE collectd_contextswitch_total counter
    collectd_contextswitch_total{instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1"} 3... 168768
    # HELP collectd_cpu_total write_prometheus plugin: 'cpu' Type: 'cpu', Dstype: 'derive', Dsname: 'value'
    # TYPE collectd_cpu_total counter
    collectd_cpu_total{cpu="0",type="idle",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 50160255 16876
    collectd_cpu_total{cpu="0",type="interrupt",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 1687686
    collectd_cpu_total{cpu="0",type="nice",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 226 1687686335
    collectd_cpu_total{cpu="0",type="softirq",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 13644 16876
    collectd_cpu_total{cpu="0",type="steal",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 16876863350
    collectd_cpu_total{cpu="0",type="system",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 231356 16876
    collectd_cpu_total{cpu="0",type="user",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 1519742 168768
    collectd_cpu_total{cpu="0",type="wait",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 585 1687686335
    collectd_cpu_total{cpu="1",type="idle",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 50596353 16876
    collectd_cpu_total{cpu="1",type="interrupt",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 1687686
    collectd_cpu_total{cpu="1",type="nice",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 219 1687686335
    collectd_cpu_total{cpu="1",type="softirq",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 9320 168768
    collectd_cpu_total{cpu="1",type="steal",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 16876863350
    collectd_cpu_total{cpu="1",type="system",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 129114 16876
    collectd_cpu_total{cpu="1",type="user",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 1504382 168768
    collectd_cpu_total{cpu="1",type="wait",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 50115892 16876
    collectd_cpu_total{cpu="2",type="softirq",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 4906 168768
    collectd_cpu_total{cpu="2",type="steal",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 16876863350
    collectd_cpu_total{cpu="2",type="system",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 230256 16876
    collectd_cpu_total{cpu="2",type="user",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 1562142 168768
    collectd_cpu_total{cpu="2",type="wait",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 8267 16876863
    collectd_cpu_total{cpu="3",type="idle",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 50612210 16876
    collectd_cpu_total{cpu="3",type="interrupt",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 1687686
    collectd_cpu_total{cpu="3",type="nice",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 218 1687686335
    collectd_cpu_total{cpu="3",type="softirq",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 2815 168768
    collectd_cpu_total{cpu="3",type="steal",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 0 16876863350
    collectd_cpu_total{cpu="3",type="system",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 129656 16876
    collectd_cpu_total{cpu="3",type="user",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 1506299 168768
    collectd_cpu_total{cpu="3",type="wait",instance="172.16.x.x",cluster="Test Cluster",dc="datacenter1",rack="rack1",insight_series="1"} 183 1687686335

Etapa 2: Integre o Cassandra

  1. Faça login no console do ARMS.

  2. Acesse o console do Cloud Monitor.

  3. No painel de navegação à esquerda, clique em Access Center.

  4. Na página Access Center, na seção Database, clique em Cassandra.

  1. Na aba Start Integration do painel Cassandra, configure os parâmetros e clique em OK.

    Parâmetro

    Descrição

    Select environment type

    Selecione o tipo de ambiente:

    • Ambiente Container Service

    • ECS (Virtual Private Cloud (VPC))

    Select cluster

    Selecione o cluster de destino.

    Pod label

    Rótulo do pod que executa o serviço Cassandra. Recomenda-se usar um rótulo exclusivo.

    Service port

    Porta usada pelo agente JMX do Cassandra instalado na Etapa 1. A porta padrão é preenchida automaticamente.

    Metrics path

    Endpoint de métricas do agente JMX do Cassandra instalado na Etapa 1. O caminho padrão é preenchido automaticamente.

    Scrape interval (seconds)

    Intervalo, em segundos, para coleta de métricas. O padrão é 30.

Etapa 3: Visualize painéis do Cassandra

  1. Acesse o console do Cloud Monitor.

  2. Faça login no console do ARMS.

  3. No painel de navegação à esquerda, clique em Data Import Management.

  4. Na página Data Import Management, clique na aba Installed. Localize o ambiente desejado e clique no nome dele para abrir a página de detalhes.

  5. Na aba Component Management, clique em Cassandra na seção Component Type e, em seguida, clique na aba Dashboards para visualizar todos os nomes dos painéis.

    A página exibe dois painéis: Cassandra Detail e Cassandra Summary.

  6. Clique no nome de um painel para visualizá-lo no Grafana.

Etapa 4: Configure alertas do Cassandra

  1. Na aba Component Management, clique em Cassandra na seção Component Type e, em seguida, clique na aba Alert Rules para visualizar as regras de alerta padrão.

    As regras de alerta padrão incluem:

    • Timeouts de requisição

    • Requisições com falha

    • Total de mensagens

    • Uso de disco

    • Uso de memória

    • Uso de CPU

    • Conexões de cliente

  2. Também é possível criar regras de alerta personalizadas. Para mais informações, consulte Create a Prometheus alert rule.

Métricas principais

Informações de cluster e nó

Métrica

Nível

Descrição

Explicação

mcac_client_connected_native_clients

Principal

Número de conexões CQL

Um número excessivo de conexões consome recursos do sistema e aumenta a latência do cliente.

mcac_table_live_disk_space_used_total

Principal

Espaço em disco usado pelo Cassandra

Um valor alto pode causar insuficiência de espaço em disco e aumentar a latência de acesso aos dados.

mcac_table_snapshots_size

Recomendado

Tamanho do arquivo de snapshot do Cassandra

Snapshots são usados para recuperação de dados. Um valor alto pode levar à insuficiência de espaço em disco, impedindo o armazenamento de snapshots completos.

collectd_uptime

Principal

Tempo de atividade do nó

Um valor alto indica que o sistema não foi reiniciado por muito tempo. Se o sistema tiver vulnerabilidades conhecidas, isso pode aumentar os riscos de segurança.

Métricas de desempenho principais

Métrica

Nível

Descrição

Explicação

mcac_table_read_latency

Crítico

Latência de leitura do cliente

Um valor alto torna as leituras da aplicação mais lentas e impacta a experiência do usuário.

mcac_table_write_latency

Crítico

Latência de gravação do cliente

Um valor alto torna as gravações da aplicação mais lentas e impacta a experiência do usuário.

Exceções e erros

Métrica

Nível

Descrição

Explicação

mcac_client_request_timeouts_total

Crítico

Requisições de cliente com timeout

Um valor alto indica carga pesada no sistema, o que afeta gravemente a experiência do usuário.

mcac_client_request_failures_total

Crítico

Requisições de cliente com exceções

Um valor alto indica carga pesada no sistema, o que afeta gravemente a experiência do usuário.

mcac_dropped_message_dropped_total

Crítico

Mensagens descartadas

Um valor alto indica carga pesada no sistema, o que afeta gravemente a experiência do usuário.

Cache e filtros Bloom

Métrica

Nível

Descrição

Explicação

mcac_table_key_cache_hit_rate

Principal

Taxa de acerto do cache de chave

Um valor baixo pode diminuir o desempenho de leitura da aplicação e afetar a experiência do usuário.

mcac_table_row_cache_hit_total

Principal

Número de acertos no cache de linha

Um valor baixo pode diminuir o desempenho de leitura da aplicação e afetar a experiência do usuário.

mcac_table_row_cache_miss_total

Recomendado

Número de falhas no cache de linha

Um valor alto pode diminuir o desempenho de leitura da aplicação e afetar a experiência do usuário.

mcac_table_row_cache_hit_out_of_range_total

Recomendado

Número de acertos no cache de linha que ainda exigiram acesso ao disco.

Um valor alto pode diminuir o desempenho de leitura da aplicação e afetar a experiência do usuário.

mcac_table_bloom_filter_false_ratio

Principal

Taxa de falsos positivos do filtro Bloom

Uma taxa alta de falsos positivos no filtro Bloom faz com que muitos elementos inexistentes sejam identificados incorretamente como existentes. Isso desperdiça tempo e recursos de consulta, degradando o desempenho e aumentando custos.

Uso de CPU, memória e disco

Métrica

Nível

Descrição

Explicação

collectd_cpu_total

Crítico

Utilização da CPU

Um valor alto indica carga elevada no sistema, o que aumenta a latência das requisições do cliente e afeta gravemente a experiência do usuário.

collectd_memory

Crítico

Uso de memória

Um valor alto indica carga elevada no sistema, o que aumenta a latência das requisições do cliente e afeta gravemente a experiência do usuário.

collectd_df_df_complex

Crítico

Uso de disco

Um valor alto indica espaço disponível em disco insuficiente, o que pode impedir a persistência de dados e causar risco de indisponibilidade do sistema.

Compactação de SSTable

Métrica

Nível

Descrição

Explicação

mcac_table_pending_compactions

Principal

Tarefas de compactação de SSTable em andamento

Um valor alto indica carga elevada no sistema, o que aumenta a latência das requisições do cliente. Configure um intervalo de compactação adequado para SSTables.

mcac_table_compaction_bytes_written_total

Principal

Taxa de compactação de SSTable

Um valor baixo indica uma taxa de compactação lenta, o que pode causar acúmulo de tarefas. Considere atualizar as especificações do nó.

mcac_table_compression_ratio

Principal

Taxa de compressão de SSTable

Um valor alto indica que os arquivos compactados ainda são muito grandes e a compressão é ineficaz.

Arquivos de disco

Métrica

Nível

Descrição

Explicação

mcac_table_live_ss_table_count

Principal

Número de SSTables

Um valor alto aumenta o uso de disco e a latência de leitura/gravação. Configure uma estratégia adequada de compactação de SSTable.

mcac_table_live_disk_space_used_total

Principal

Espaço em disco usado por SSTables

Um valor alto aumenta o uso de disco e a latência de leitura/gravação. Configure uma estratégia adequada de compactação de SSTable.

mcac_table_ss_tables_per_read_histogram

Principal

Número de SSTables lidos por operação de leitura

Um valor alto aumenta a latência de leitura do cliente.

mcac_commit_log_total_commit_log_size

Principal

Espaço em disco usado pelo log de commit

Um valor alto pode causar insuficiência de espaço em disco, degradação do desempenho de leitura/gravação e maior tempo de recuperação de dados.

mcac_table_memtable_live_data_size

Principal

Espaço usado pela MemTable

Um valor alto pode degradar o desempenho de gravação de dados e a estabilidade do nó.

mcac_table_waiting_on_free_memtable_space

Principal

Tempo gasto aguardando liberação de espaço na MemTable

Um valor alto pode degradar o desempenho de gravação de dados e a estabilidade do nó.

Status do pool de threads

Métrica

Nível

Descrição

Explicação

mcac_thread_pools_active_tasks

Crítico

Número de tarefas ativas no pool de threads

Muitas tarefas bloqueadas consomem recursos do sistema, tornam as respostas mais lentas e podem até travar o sistema.

mcac_thread_pools_total_blocked_tasks_total

Crítico

Número de tarefas bloqueadas no pool de threads

Muitas tarefas bloqueadas consomem recursos do sistema, tornam as respostas mais lentas e podem até travar o sistema.

mcac_thread_pools_pending_tasks

Crítico

Número de tarefas pendentes no pool de threads

Muitas tarefas pendentes consomem recursos excessivos do sistema, causam timeout nas requisições correspondentes e podem até travar o sistema.

mcac_thread_pools_completed_tasks

Principal

Número de tarefas concluídas no pool de threads

Esta métrica reflete o throughput do sistema. Um valor mais alto indica melhor desempenho do sistema.

Métricas da JVM

Métrica

Nível

Descrição

Explicação

mcac_jvm_memory_used

Crítico

Memória heap da JVM utilizada

Um valor alto pode causar insuficiência de memória, o que dispara coleta de lixo frequente e reduz o throughput da aplicação.

mcac_jvm_gc_time

Crítico

Tempo gasto em coleta de lixo (GC)

Um valor alto indica GC frequente. O sistema tem menos tempo para executar cargas de trabalho do usuário, o que pode causar timeouts de requisição ou até travamentos do sistema.