As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Configure coletores gerenciados do Prometheus para o Amazon MSK
Para usar um coletor do Amazon Managed Service for Prometheus, crie um extrator que descubra e extraia métricas no cluster do Amazon Streaming gerenciado para Apache Kafka. É possível também criar um extrator que se integre ao Amazon Elastic Kubernetes Service. Para obter mais informações, consulte Integrar o Amazon EKS.
Criar um extrator
Um coletor do Amazon Managed Service for Prometheus consiste em um extrator que descobre e coleta métricas de um cluster do Amazon MKS. O Amazon Managed Service for Prometheus gerencia o extrator para você, fornecendo a escalabilidade, a segurança e a confiabilidade necessárias, sem que você precise gerenciar instâncias, agentes ou extratores por conta própria.
Você pode criar um raspador usando a AWS API ou a AWS CLI conforme descrito nos procedimentos a seguir.
Há alguns pré-requisitos para a criação de um extrator próprio:
-
É necessário ter um cluster do Amazon MKS.
-
Configure o grupo de segurança do seu cluster Amazon MSK para permitir tráfego de entrada nas portas 11001 (JMX Exporter) e 11002 (Node Exporter) em sua Amazon VPC, pois o extrator exige acesso a esses registros DNS para coletar métricas do Prometheus.
-
A Amazon VPC na qual o cluster Amazon MKS reside deve ter o DNS habilitado.
nota
O cluster será associado ao extrator pelo nome do recurso da Amazon (ARN). Se você excluir um cluster e criar um novo com o mesmo nome, o ARN será reutilizado para o novo cluster. Por esse motivo, o extrator tentará coletar métricas para o novo cluster. Você exclui extratores separadamente da exclusão do cluster.
-
Veja a seguir uma lista completa das operações do raspador que você pode usar com a AWS API:
Crie um extrator com a operação CreateScraper da API.
-
Liste os extratores existentes com a operação ListScrapers da API.
-
Atualize o alias, a configuração ou o destino de um raspador com a operação da UpdateScraperAPI.
-
Exclua um extrator com a operação DeleteScraper da API.
-
Obtenha mais detalhes sobre um extrator com a operação DescribeScraper da API.
Configuração entre contas
Para criar um extrator em uma configuração entre contas quando o cluster Amazon MSK do qual você deseja coletar métricas estiver em uma conta diferente do coletor Amazon Managed Service for Prometheus, use o procedimento abaixo.
Por exemplo, quando você tem duas contas, a primeira conta de origem account_id_source na qual o Amazon MSK está localizado e uma segunda conta de destino account_id_target na qual reside o espaço de trabalho do Amazon Managed Service for Prometheus.
Como criar um extrator em uma configuração entre contas
-
Na conta de origem, crie um perfil
arn:aws:iam::e adicione a política de confiança a seguir.111122223333:role/Source{ "Effect": "Allow", "Principal": { "Service": [ "scraper.aps.amazonaws.com" ] }, "Action": "sts:AssumeRole", "Condition": { "ArnEquals": { "aws:SourceArn": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" }, "StringEquals": { "AWS:SourceAccount": "111122223333" } } } -
Em cada combinação de origem (cluster Amazon MSK) e destino (espaço de trabalho do Amazon Managed Service for Prometheus), você precisa criar uma
arn:aws:iam::função e adicionar a seguinte política de confiança com permissões para. AmazonPrometheusRemoteWriteAccess444455556666:role/Target{ "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/Source" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "arn:aws:aps:aws-region:111122223333:scraper/scraper-id" } } } -
Crie um extrator com a opção
--role-configuration.aws amp create-scraper \ --source vpcConfiguration="{subnetIds=[subnet-subnet-id], "securityGroupIds": ["sg-security-group-id"]}" \ --scrape-configuration configurationBlob=<base64-encoded-blob>\ --destination ampConfiguration="{workspaceArn='arn:aws:aps:aws-region:444455556666:workspace/ws-workspace-id'}"\ --role-configuration '{"sourceRoleArn":"arn:aws:iam::111122223333:role/Source", "targetRoleArn":"arn:aws:iam::444455556666:role/Target"}' -
Valide a criação do extrator.
aws amp list-scrapers { "scrapers": [ { "scraperId": "s-example123456789abcdef0", "arn": "arn:aws:aps:aws-region:111122223333:scraper/s-example123456789abcdef0": "arn:aws:iam::111122223333:role/Source", "status": "ACTIVE", "creationTime": "2025-10-27T18:45:00.000Z", "lastModificationTime": "2025-10-27T18:50:00.000Z", "tags": {}, "statusReason": "Scraper is running successfully", "source": { "vpcConfiguration": { "subnetIds": ["subnet-subnet-id"], "securityGroupIds": ["sg-security-group-id"] } }, "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:aws-region:444455556666:workspace/ws-workspace-id'" } }, "scrapeConfiguration": { "configurationBlob": "<base64-encoded-blob>" } } ] }
Alteração entre uma RoleConfiguration função vinculada ao serviço
Quando quiser voltar para um perfil vinculado ao serviço em vez de RoleConfiguration para gravar em um espaço de trabalho do Amazon Managed Service for Prometheus, você deve atualizar o UpdateScraper e fornecer um espaço de trabalho na mesma conta do extrator sem o RoleConfiguration. O RoleConfiguration será removido do extrator, e o perfil vinculado ao serviço será usado.
Ao alterar entre os espaços de trabalho na mesma conta como o extrator, para continuar usando o RoleConfiguration, será necessário fornecer o RoleConfiguration novamente em UpdateScraper.
Encontrar e excluir extratores
Você pode usar a AWS API ou a AWS CLI para listar os scrapers em sua conta ou excluí-los.
nota
Verifique se você está usando a versão mais recente do AWS CLI ou SDK. A versão mais recente do SDK fornece os recursos e as funcionalidades mais recentes, além de atualizações de segurança. Como alternativa, use AWS CloudShell, que fornece uma experiência sempre na linha de up-to-date comando, automaticamente.
Para listar todos os extratores na conta, use a operação ListScrapers da API.
Como alternativa, com o AWS CLI, ligue para:
aws amp list-scrapers
ListScrapers retorna todos os extratores da conta, por exemplo:
{ "scrapers": [ { "scraperId": "s-1234abcd-56ef-7890-abcd-1234ef567890", "arn": "arn:aws:aps:aws-region:123456789012:scraper/s-1234abcd-56ef-7890-abcd-1234ef567890", "roleArn": "arn:aws:iam::123456789012:role/aws-service-role/AWSServiceRoleForAmazonPrometheusScraper_1234abcd-2931", "status": { "statusCode": "DELETING" }, "createdAt": "2023-10-12T15:22:19.014000-07:00", "lastModifiedAt": "2023-10-12T15:55:43.487000-07:00", "tags": {}, "source": { "vpcConfiguration": { "securityGroupIds": [ "sg-1234abcd5678ef90" ], "subnetIds": [ "subnet-abcd1234ef567890", "subnet-1234abcd5678ab90" ] } }, "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:aws-region:123456789012:workspace/ws-1234abcd-5678-ef90-ab12-cdef3456a78" } } } ] }
Para excluir um extrator, localize o scraperId do extrator que deseja excluir usando a operação ListScrapers e, em seguida, use a operação DeleteScraper para excluí-lo.
Como alternativa, com o AWS CLI, ligue para:
aws amp delete-scraper --scraper-idscraperId
Métricas coletadas do Amazon MSK
Quando você faz a integração com o Amazon MSK, o coletor do Amazon Managed Service for Prometheus coleta automaticamente as seguintes métricas:
| Métrica | Descrição e Objetivo |
|---|---|
|
jmx_config_reload_failure_total |
Número total de vezes que o exportador JMX falhou ao recarregar seu arquivo de configuração. |
|
jmx_scrape_duration_seconds |
Tempo gasto para coletar métricas do JMX em segundos para o ciclo de coleta atual. |
|
jmx_scrape_error |
Indica se ocorreu um erro durante a coleta da métrica JMX (1 = erro, 0 = sucesso). |
|
Java_lang_memória_ _usado HeapMemoryUsage |
Quantidade de memória heap (em bytes) usada atualmente pela JVM. |
|
Java_lang_memória_ _max HeapMemoryUsage |
Quantidade máxima de memória heap (em bytes) que pode ser usada para gerenciamento de memória. |
|
Java_lang_memória_ _usado NonHeapMemoryUsage |
Quantidade de memória não heap (em bytes) usada atualmente pela JVM. |
|
kafka_cluster_Partition_Value |
Estado ou valor atual relacionado às partições de cluster do Kafka, detalhado por ID de partição e tópico. |
|
kafka_consumer_consumer_coordinator_metrics_assigned_partitions |
Número de partições atualmente atribuídas a esse consumidor. |
|
kafka_consumer_consumer_coordinator_metrics_commit_latency_avg |
Tempo médio necessário para confirmar compensações em milissegundos. |
|
kafka_consumer_consumer_coordinator_metrics_commit_rate |
Número de confirmações de deslocamento por segundo. |
|
kafka_consumer_consumer_coordinator_metrics_failed_rebalance_total |
Número total de reequilíbrios de grupos de consumidores malsucedidos. |
|
kafka_consumer_consumer_coordinator_metrics_last_heartbeat_seconds_ago |
Número de segundos desde que a última pulsação foi enviada ao coordenador. |
|
kafka_consumer_consumer_coordinator_metrics_rebalance_latency_avg |
Tempo médio gasto para rebalancear grupos de consumidores em milissegundos. |
|
kafka_consumer_consumer_coordinator_metrics_rebalance_total |
Número total de reequilíbrios de grupos de consumidores. |
|
kafka_consumer_consumer_fetch_manager_metrics_bytes_consumed_rate |
Número médio de bytes consumidos por segundo pelo consumidor. |
|
kafka_consumer_consumer_fetch_manager_metrics_fetch_latency_avg |
Tempo médio gasto para uma solicitação de busca em milissegundos. |
|
kafka_consumer_consumer_fetch_manager_metrics_fetch_rate |
Número de solicitações de busca por segundo. |
|
kafka_consumer_consumer_fetch_manager_metrics_records_consumed_rate |
O número médio de registros consumidos por segundo. |
|
kafka_consumer_consumer_fetch_manager_metrics_records_lag_max |
O atraso máximo em termos de número de registros para qualquer partição desse consumidor. |
|
kafka_consumer_consumer_metrics_connection_count |
Número atual de conexões ativas. |
|
kafka_consumer_consumer_metrics_incoming_byte_rate |
Número médio de bytes recebidos por segundo de todos os servidores. |
|
kafka_consumer_consumer_metrics_last_poll_seconds_ago |
Número de segundos desde a última chamada do consumidor poll(). |
|
kafka_consumer_consumer_metrics_request_rate |
Número de solicitações enviadas por segundo. |
|
kafka_consumer_consumer_metrics_response_rate |
Número de respostas recebidas por segundo. |
|
kafka_consumer_group_ _Valor ConsumerLagMetrics |
Valor atual do atraso do consumidor para um grupo de consumidores, indicando o quanto o consumidor está atrasado. |
|
kafka_controller_ _Valor KafkaController |
Estado ou valor atual do controlador Kafka (1 = controlador ativo, 0 = não ativo). |
|
kafka_controller_ _Contagem ControllerEventManager |
Número total de eventos de controlador processados. |
|
kafka_controller_ _Mean ControllerEventManager |
Tempo médio gasto para processar eventos do controlador. |
|
controlador_kafka_ _ ControllerStats MeanRate |
Taxa média de operações de estatística de controlador por segundo. |
|
kafka_coordinator_group_ _Valor GroupMetadataManager |
Estado ou valor atual do gerenciador de metadados do grupo para grupos de consumidores. |
|
kafka_log_ _Contagem LogFlushStats |
Número total de operações de descarga de log. |
|
kafka_log_ _Mean LogFlushStats |
Tempo médio gasto com operações de descarga de log. |
|
kafka_log_ _ LogFlushStats MeanRate |
Taxa média de operações de descarga de log por segundo. |
|
kafka_network_ _Contagem RequestMetrics |
Contagem total de solicitações de rede processadas. |
|
kafka_network_ _Mean RequestMetrics |
Tempo médio gasto para processar solicitações de rede. |
|
rede_kafka_ _ RequestMetrics MeanRate |
Taxa média de solicitações de rede por segundo. |
|
Kafka_Network_Acceptor_ MeanRate |
Taxa média de conexões aceitas por segundo. |
|
kafka_server_Fetch_queue_size |
Tamanho atual da fila de solicitações de busca. |
|
kafka_server_Produce_queue_size |
Tamanho atual da fila de solicitações de produção. |
|
kafka_server_Request_queue_size |
Tamanho atual da fila de solicitações gerais. |
|
kafka_server_ _Contagem BrokerTopicMetrics |
Contagem total de operações de tópicos da corretora (mensagensin/out, bytes in/out). |
|
servidor_kafka_ _ BrokerTopicMetrics MeanRate |
Taxa média de operações de tópico de agente por segundo. |
|
servidor_kafka_ _ BrokerTopicMetrics OneMinuteRate |
Taxa média móvel de um minuto das operações temáticas do agente. |
|
kafka_server_ _Valor DelayedOperationPurgatory |
Número atual de operações atrasadas no purgatório (esperando para serem concluídas). |
|
servidor_kafka_ _ DelayedFetchMetrics MeanRate |
Taxa média de operações de busca atrasadas por segundo. |
|
kafka_server_ _Valor FetcherLagMetrics |
Valor atual do atraso para threads de busca de réplicas (o quanto está atrás do líder). |
|
servidor_kafka_ _ FetcherStats MeanRate |
Taxa média de operações de busca por segundo. |
|
kafka_server_ _Valor ReplicaManager |
Estado ou valor atual do gerenciador de réplicas. |
|
servidor_kafka_ _ ReplicaManager MeanRate |
Taxa média de operações do gerenciador de réplicas por segundo. |
|
servidor_kafka_ _byte_rate LeaderReplication |
Taxa de bytes replicados por segundo para partições em que esse agente é o líder. |
|
kafka_server_group_coordinator_metrics_group_completed_rebalance_count |
Número total de reequilíbrios concluídos de grupos de consumidores. |
|
kafka_server_group_coordinator_metrics_offset_commit_count |
Número total de operações de confirmação de deslocamento. |
|
kafka_server_group_coordinator_metrics_offset_commit_rate |
Taxa de operações de confirmação de deslocamento por segundo. |
|
kafka_server_socket_server_metrics_connection_count |
Número atual de conexões ativas. |
|
kafka_server_socket_server_metrics_connection_creation_rate |
Taxa de criação de novas conexões por segundo. |
|
kafka_server_socket_server_metrics_connection_close_rate |
Taxa de fechamentos de conexão por segundo. |
|
kafka_server_socket_server_metrics_failed_authentication_total |
Número total de tentativas de autenticação malsucedidas. |
|
kafka_server_socket_server_metrics_incoming_byte_rate |
Taxa de entrada de bytes por segundo. |
|
kafka_server_socket_server_metrics_outgoing_byte_rate |
Taxa de bytes de saída por segundo. |
|
kafka_server_socket_server_metrics_request_rate |
Taxa de solicitações por segundo. |
|
kafka_server_socket_server_metrics_response_rate |
Taxa de respostas por segundo. |
|
kafka_server_socket_server_metrics_network_io_rate |
Taxa de I/O operações de rede por segundo. |
|
kafka_server_socket_server_metrics_io_ratio |
Fração do tempo gasto em I/O operações. |
|
kafka_server_controller_channel_metrics_connection_count |
Número atual de conexões ativas para canais do controlador. |
|
kafka_server_controller_channel_metrics_incoming_byte_rate |
Taxa de bytes de entrada por segundo para canais do controlador. |
|
kafka_server_controller_channel_metrics_outgoing_byte_rate |
Taxa de bytes enviados por segundo para os canais do controlador. |
|
kafka_server_controller_channel_metrics_request_rate |
Taxa de solicitações por segundo para os canais do controlador. |
|
kafka_server_replica_fetcher_metrics_connection_count |
Número atual de conexões ativas para o buscador de réplicas. |
|
kafka_server_replica_fetcher_metrics_incoming_byte_rate |
Taxa de bytes de entrada por segundo para o buscador de réplicas. |
|
kafka_server_replica_fetcher_metrics_request_rate |
Taxa de solicitações por segundo para o buscador de réplicas. |
|
kafka_server_replica_fetcher_metrics_failed_authentication_total |
Número total de tentativas de autenticação malsucedidas para o coletor de réplicas. |
|
kafka_server_ _Contagem ZooKeeperClientMetrics |
Contagem total das operações ZooKeeper do cliente. |
|
kafka_server_ _Mean ZooKeeperClientMetrics |
Latência média das operações do ZooKeeper cliente. |
|
kafka_server_ _Valor KafkaServer |
Estado ou valor atual do servidor Kafka (normalmente indica que o servidor está em execução). |
|
node_cpu_seconds_total |
Total de segundos CPUs gastos em cada modo (usuário, sistema, inatividade etc.), dividido por CPU e modo. |
|
node_disk_read_bytes_total |
Número total de bytes lidos com sucesso dos discos, dividido por dispositivo. |
|
node_disk_reads_completed_total |
Número total de bytes lidos com sucesso dos discos, dividido por dispositivo. |
|
node_disk_writes_completed_total |
Número total de gravações concluídas com sucesso para discos, dividido por dispositivo. |
|
node_disk_written_bytes_total |
Número total de bytes gravados com sucesso nos discos, dividido por dispositivo. |
|
node_filesystem_avail_bytes |
Espaço disponível do sistema de arquivos em bytes para usuários que não são usuários-raiz, dividido por dispositivo e ponto de montagem. |
|
node_filesystem_size_bytes |
Tamanho total do sistema de arquivos em bytes, dividido por dispositivo e ponto de montagem. |
|
node_filesystem_free_bytes |
Espaço livre do sistema de arquivos, em bytes, dividido por dispositivo e ponto de montagem. |
|
node_filesystem_files |
Número total de nós de arquivo (inodes) no sistema de arquivos, dividido por dispositivo e ponto de montagem. |
|
node_filesystem_files_free |
Número de nós de arquivo livres (inodes) no sistema de arquivos, dividido por dispositivo e ponto de montagem. |
|
node_filesystem_readonly |
Indica se o sistema de arquivos está montado somente para leitura (1 = somente leitura, 0 = leitura-gravação). |
|
node_filesystem_device_error |
Indica se ocorreu um erro ao obter estatísticas do sistema de arquivos (1 = erro, 0 = sucesso). |
Limitações
A integração atual do Amazon MSK com o Amazon Managed Service for Prometheus tem as seguintes limitações:
-
Compatível somente com clusters provisionados do Amazon MSK (não disponível para o Amazon MSK Serverless)
-
Não é compatível com clusters Amazon MSK com acesso público habilitado em combinação com o modo de KRaft metadados
-
Não é compatível com os agentes do Amazon MSK Express
-
Atualmente, oferece suporte a um mapeamento 1:1 entre os clusters do Amazon MSK e os coletores/espaços de trabalho do Amazon Managed Service for Prometheus