View a markdown version of this page

Integrar o Amazon OpenSearch Service - Amazon CloudWatch

Integrar o Amazon OpenSearch Service

Com um coletor do Prometheus gerenciado pelo Amazon CloudWatch, você pode coletar automaticamente métricas compatíveis com o Prometheus de seus domínios do Amazon OpenSearch Service. O coletor gerenciado se conecta à sua VPC, coleta métricas de cluster, nó e índice do domínio e entrega essas métricas diretamente ao CloudWatch. Com essa integração, é possível monitorar a integridade e o desempenho dos domínios no CloudWatch sem a necessidade de implantar nenhum agente ou exportador.

nota

Quando um coletor do Prometheus gerenciado pelo Amazon CloudWatch entrega suas métricas do Amazon OpenSearch Service ao CloudWatch, ele enriquece automaticamente cada métrica com atributos que identificam sua origem. Cada métrica carrega o escopo de instrumentação do coletor, os atributos da nuvem que registram a conta e a região da AWS e uma unidade que o coletor infere do nome da métrica. Você pode filtrar e agrupar nesses atributos ao consultar suas métricas com o PromQL.

Pré-requisitos

Este procedimento pressupõe que você esteja familiarizado com a administração de domínios do Amazon OpenSearch Service e com os conceitos de rede da Amazon VPC.

  • Um domínio do Amazon OpenSearch Service com acesso à VPC. Os coletores gerenciados são compatíveis somente com domínios que têm acesso à VPC. Domínios com acesso público não são compatíveis.

  • Pelo menos duas sub-redes em zonas de disponibilidade diferentes

  • Regras de grupo de segurança que permitem que o coletor alcance seu endpoint de domínio via HTTPS (porta 443). Adicione uma regra de entrada ao grupo de segurança do domínio que permita o tráfego HTTPS do grupo de segurança que você fornece para o coletor.

Etapa 1: definir a configuração de extração

Confira a seguir um exemplo de configuração de extrator para o Amazon OpenSearch Service. O coletor gerenciado se conecta ao domínio que você especifica e coleta suas métricas automaticamente, portanto, você não especifica destinos de extração na configuração. A configuração deve incluir uma seção scrape_configs com uma tarefa cujo job_name seja exatamente opensearch-exporter. Você fará referência a essa configuração quando cria o extrator na próxima etapa. Para obter mais informações sobre as opções de configuração do , consulte Configuração do extrator.

global: external_labels: domain_name: my-opensearch-domain scrape_configs: - job_name: opensearch-exporter scrape_interval: 60s

Etapa 2: Criar o raspador

Crie o extrator com um destino do CloudWatch. Você especifica o domínio a ser coletado no campo exporters e fornece a rede (sub-redes e grupo de segurança) no campo source.

AWS API

Use a operação da API CreateScraper para criar um extrator com um destino do CloudWatch. Substitua as informações de sub-rede, grupo de segurança, domínio e conjunto de dados pelos seus próprios valores.

POST /scrapers HTTP/1.1 { "alias": "opensearch-metrics-scraper", "source": { "vpcConfiguration": { "subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"], "securityGroupIds": ["sg-security-group-id"] } }, "exporters": [ { "openSearchConfiguration": { "domainArn": "arn:aws:es:us-west-2:123456789012:domain/my-opensearch-domain" } } ], "destination": { "cloudWatchConfiguration": { "datasetArn": "arn:aws:cloudwatch:us-west-2:123456789012:dataset/default" } }, "scrapeConfiguration": { "configurationBlob": "base64-encoded-blob" } }
AWS CLI

Use o comando create-scraper para criar um extrator com um destino do CloudWatch. Substitua as informações de sub-rede, grupo de segurança, domínio e conjunto de dados pelos seus próprios valores.

aws amp create-scraper \ --alias "opensearch-metrics-scraper" \ --source '{ "vpcConfiguration": { "subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"], "securityGroupIds": ["sg-security-group-id"] } }' \ --exporters '[ { "openSearchConfiguration": { "domainArn": "arn:aws:es:us-west-2:123456789012:domain/my-opensearch-domain" } } ]' \ --scrape-configuration configurationBlob=$(base64 -w 0 opensearch-config.yaml) \ --destination '{ "cloudWatchConfiguration": { "datasetArn": "arn:aws:cloudwatch:us-west-2:123456789012:dataset/default" } }'

Métricas disponíveis

  • Métricas do cluster: integridade e status do cluster, número de nós e nós de dados, fragmentos ativos e de recolocação e tarefas pendentes.

  • Métricas de nós: uso da CPU, uso do heap da JVM e coleta de resíduos, memória do sistema operacional, uso do disco e atividade do pool de threads para cada nó.

  • Métricas de índice: taxas e latências de indexação e pesquisa, contagem de documentos, atividades de mesclagem e atualização e uso do cache.

Para obter uma lista completa das métricas disponíveis, consulte Métricas coletadas do Amazon OpenSearch Service no Guia do usuário do Amazon Managed Service for Prometheus.

Validar a coleta de métricas

Para confirmar se o coletor está entregando métricas do seu domínio, execute a consulta a seguir no CloudWatch com o Query Studio. A consulta retorna o status de integridade do cluster do seu domínio. Se ele retornar pontos de dados, o coletor está coletando métricas do seu domínio com êxito.

opensearch_cluster_health_status

Observabilidade entre contas

Para o monitoramento entre contas do Amazon OpenSearch Service, recomendamos usar a centralização de métricas do Amazon CloudWatch. Para obter mais informações, consulte Centralização de métricas do CloudWatch.

Para obter mais informações sobre configurações alternativas de extrator entre contas usando o encadeamento de perfis, consulte Integrar o Amazon OpenSearch Service no Guia do usuário do Amazon Managed Service for Prometheus.

Limitações atuais

  • Os coletores gerenciados são compatíveis somente com domínios com acesso à VPC.

  • Um extrator coleta métricas de um único domínio do Amazon OpenSearch Service. Para coletar métricas de mais de um domínio, crie um extrator separado para cada domínio.