View a markdown version of this page

Configure los recopiladores de Prometheus gestionados para Amazon Service OpenSearch - Servicio administrado por Amazon para Prometheus

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configure los recopiladores de Prometheus gestionados para Amazon Service OpenSearch

El recopilador gestionado de Amazon Service para Prometheus para Amazon OpenSearch Service extrae automáticamente Prometheus-compatible las métricas de tu dominio de OpenSearch servicio y las reenvía a tu destino. Amazon Managed Service for Prometheus administra el recopilador por ti, lo que te brinda la escalabilidad, la seguridad y la confiabilidad que necesitas, sin tener que gestionar tú mismo ninguna instancia, agente o scraper. Su destino puede ser Amazon Managed Service para Prometheus Workspace o Amazon. CloudWatch

También puede crear un scraper que se integre con Amazon Elastic Kubernetes Service o con Amazon Managed Streaming para Apache Kafka. Para obtener más información, consulte Integrar Amazon EKS e Integrar Amazon MSK. https://docs.aws.amazon.com/prometheus/latest/userguide/prom-msk-integration.html

Crear un raspador

En este procedimiento se presupone que está familiarizado con la administración de dominios OpenSearch de Amazon Service y los conceptos de redes de Amazon Virtual Private Cloud.

Hay algunos requisitos previos para crear un raspador para un dominio de OpenSearch servicio:

  • Un dominio OpenSearch de Amazon Service con acceso a Amazon Virtual Private Cloud. Los recopiladores gestionados solo admiten los dominios OpenSearch de servicio que tienen acceso a la VPC. No se admiten dominios con acceso público.

  • Grupos de seguridad que permiten al recopilador administrado llegar al punto final de su dominio de OpenSearch servicio a través de HTTPS (puerto 443). Agregue una regla de entrada al grupo de seguridad del dominio que permita el tráfico HTTPS desde el grupo de seguridad que proporcione para el recopilador.

Para indicarle al rastreador qué dominio de OpenSearch servicio debe recopilar datos, debes especificar el dominio en el exporters campo de la solicitud. El exporters campo contiene una lista de las configuraciones del exportador; en el caso de un dominio de OpenSearch servicio, openSearchConfiguration indica el nombre domainArn del dominio. La red (subredes y grupo de seguridad) se indica por separado en el source campo, como se muestra en los siguientes ejemplos.

nota

El raspador usa el punto final de la VPC del dominio tal como se resolvió al crear el raspador. Si vuelves a crear el dominio, este obtiene un nuevo punto final, por lo que debes crear un nuevo raspador o actualizar el existente para recopilarlo desde él. UpdateScraper

Usted proporciona una configuración de raspado al crear el raspador. El recopilador administrado se conecta al dominio que especifique y recopila sus métricas automáticamente, por lo que no es necesario especificar los destinos de extracción en la configuración. La configuración debe incluir una sección scrape_configs con un trabajo cuyo valor de job_name sea exactamente opensearch-exporter. Se rechaza una configuración que no contenga un trabajo denominadoopensearch-exporter. Utilice la configuración de extracción para establecer el intervalo de extracción y, si lo desea, para filtrar o volver a etiquetar las métricas recopiladas. El siguiente es un ejemplo de configuración de raspado:

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

Para obtener más información acerca de las opciones de configuración de raspado compatibles, consulte. Configuración del raspador

To create a scraper using the AWS API

Utilice la operación CreateScraper de la API para crear un raspador con la AWS API. En el siguiente ejemplo, se crea un scraper en la región de EE. UU. Este (Virginia del Norte) que recopila las métricas de un dominio de OpenSearch servicio y las envía a un espacio de trabajo de Amazon Managed Service for Prometheus. Sustituye el example contenido por la información de tu propio dominio, red y espacio de trabajo, y proporciona tu configuración de scraper.

nota

Configure el grupo de seguridad y las subredes para que coincidan con la Amazon VPC de su OpenSearch dominio de servicio. Incluya al menos dos subredes en dos zonas de disponibilidad.

POST /scrapers HTTP/1.1 { "alias": "myScraper", "source": { "vpcConfiguration": { "securityGroupIds": ["sg-security-group-id"], "subnetIds": ["subnet-subnet-id-1", "subnet-subnet-id-2"] } }, "exporters": [ { "openSearchConfiguration": { "domainArn": "arn:aws:es:us-east-1:123456789012:domain/my-opensearch-domain" } } ], "destination": { "ampConfiguration": { "workspaceArn": "arn:aws:aps:us-east-1:123456789012:workspace/ws-workspace-id" } }, "scrapeConfiguration": { "configurationBlob": "base64-encoded-blob" } }

Para enviar las métricas a Amazon CloudWatch en lugar de a un espacio de trabajo de Amazon Managed Service para Prometheus, sustitúyalas por una configuracióndestination: CloudWatch

"destination": { "cloudWatchConfiguration": { "datasetArn": "arn:aws:cloudwatch:us-east-1:123456789012:dataset/default" } }

El scrapeConfiguration parámetro requiere un archivo YAML de configuración de Prometheus codificado en base64. Ejecute uno de los siguientes comandos para convertir el archivo YAML a base64. También puede usar cualquier conversor de base64 en línea para convertir el archivo.

ejemplo Linux/macOS
base64 -w0 scraper-config.yaml
ejemplo Windows PowerShell
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("scraper-config.yaml"))
To create a scraper using the AWS CLI

Utilice el comando create-scraper para crear un scraper con la AWS Command Line Interface. El siguiente ejemplo crea un scraper en la región Este de EE. UU. (Norte de Virginia). Sustituya el example contenido por su propia información de dominio, red y espacio de trabajo, y proporcione su configuración de scraper.

nota

Configure el grupo de seguridad y las subredes para que coincidan con la Amazon VPC de su OpenSearch dominio de servicio. Incluya al menos dos subredes en dos zonas de disponibilidad.

aws amp create-scraper \ --source '{"vpcConfiguration":{"securityGroupIds":["sg-security-group-id"],"subnetIds":["subnet-subnet-id-1","subnet-subnet-id-2"]}}' \ --exporters '[{"openSearchConfiguration":{"domainArn":"arn:aws:es:us-east-1:123456789012:domain/my-opensearch-domain"}}]' \ --scrape-configuration configurationBlob=base64-encoded-blob \ --destination '{"ampConfiguration":{"workspaceArn":"arn:aws:aps:us-east-1:123456789012:workspace/ws-workspace-id"}}'
  • La siguiente es una lista completa de las operaciones de extracción que puede utilizar con la AWS API:

    Crear un raspador con la operación de la API CreateScraper.

  • Enumerar sus raspadores existentes con la operación de la API ListScrapers.

  • Actualice el alias, la configuración o el destino de un raspador con la operación de la UpdateScraper API.

  • Eliminar un raspador con la operación de la API DeleteScraper.

  • Obtener más detalles sobre un raspador con la operación de la API DescribeScraper.

Cross-account configuración

Para crear un scraper en una configuración multicuenta, cuando el dominio del OpenSearch servicio del que quieres recopilar las métricas esté en una cuenta diferente a la del recopilador de Amazon Managed Service for Prometheus, sigue el procedimiento siguiente.

Por ejemplo, tienes dos cuentas: una cuenta de origen en la que account_id_source se encuentra el dominio del OpenSearch servicio y una cuenta de destino en la que account_id_target reside el espacio de trabajo de Amazon Managed Service for Prometheus.

nota

Las políticas de confianza de los pasos siguientes hacen referencia al raspador por su ARN, que incluye un número que no existe hasta scraper-id que se crea el raspador. Para evitar este problema de ordenamiento, primero cree los roles con un comodín (scraper/*) en lugar del ARN específico del raspador, cree el raspador y, a continuación, actualice ambas políticas de confianza para reemplazar el comodín por el ARN real del raspador que devuelve. CreateScraper

Para crear un scraper en una configuración entre cuentas
  1. En la cuenta de origen, cree un rol arn:aws:iam::111122223333:role/Source y agregue la siguiente política de confianza.

    { "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" } } }
  2. En la cuenta de destino, crea un rol arn:aws:iam::444455556666:role/Target y agrega la siguiente política de confianza, que permite que el rol de origen lo asuma.

    { "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" } } }

    Adjunte una política de permisos al rol de destino que le permita escribir en su destino. Si tu destino es un espacio de trabajo de Amazon Managed Service for Prometheus, adjúntalo AmazonPrometheusRemoteWriteAccess (lo que otorgaaps:RemoteWrite). Si tu destino es Amazon CloudWatch, adjunta una política que otorgue subvenciones al conjunto de cloudwatch:PutMetricData datos.

  3. Cree un scraper con la opción --role-configuration.

    aws amp create-scraper \ --source '{"vpcConfiguration":{"securityGroupIds":["sg-security-group-id"],"subnetIds":["subnet-subnet-id-1","subnet-subnet-id-2"]}}' \ --exporters '[{"openSearchConfiguration":{"domainArn":"arn:aws:es:aws-region:111122223333:domain/my-opensearch-domain"}}]' \ --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"}'
  4. Valide la creación del scraper.

    aws amp list-scrapers

Buscar y eliminar raspadores

Puedes usar la AWS API o la AWS CLI para enumerar los raspadores de tu cuenta o eliminarlos.

nota

Asegúrese de estar utilizando la versión más reciente del SDK AWS CLI . La última versión le proporciona las características y funcionalidades más recientes, así como actualizaciones de seguridad. Como alternativa, puede utilizar AWS CloudShell, que proporciona una experiencia de línea de comandos siempre actualizada de forma automática.

Para enumerar todos los raspadores de su cuenta, utilice la operación de la API ListScrapers. Como alternativa, con la AWS CLI, llame a:

aws amp list-scrapers

Para eliminar un raspador, busque scraperId para el raspador que desea eliminar mediante la operación ListScrapers y, a continuación, utilice la operación DeleteScraper para eliminarlo. Como alternativa, con la AWS CLI llamada:

aws amp delete-scraper --scraper-id scraperId

Métricas recopiladas de Amazon OpenSearch Service

Cuando te integras con Amazon OpenSearch Service, el recopilador de Amazon Managed Service para Prometheus recopila automáticamente las Prometheus-compatible métricas que describen el estado y el rendimiento de tu dominio. El recopilador emite varios cientos de métricas; en las tablas siguientes se muestran las métricas representativas de cada categoría. Las opensearch_indices_ métricas de las siguientes tablas se agregan en todo el dominio y muchas tienen variantes únicas y totales (con el sufijo _primary o). _total El recopilador también emite las mismas estadísticas por índice, prefijo y métricas por fragmento con prefijoopensearch_index_stats_. opensearch_indices_shards_

Métrica Descripción o finalidad

opensearch_cluster_health_status

Estado de salud del clúster (verde, amarillo o rojo).

opensearch_cluster_health_number_of_nodes

Número de nodos en el clúster de .

opensearch_cluster_health_number_of_data_nodes

Número de nodos de datos del clúster.

opensearch_cluster_health_active_primary_shards

Número de fragmentos primarios activos.

opensearch_cluster_health_active_shards

Número total de fragmentos activos, incluidos los fragmentos principales y de réplica.

opensearch_cluster_health_relocating_shards

Número de fragmentos que se reubican entre nodos.

opensearch_cluster_health_initializing_shards

Número de fragmentos que se están inicializando.

opensearch_cluster_health_unassigned_shards

Número de fragmentos que no están asignados a un nodo.

opensearch_cluster_health_delayed_unassigned_shards

Número de fragmentos no asignados cuya asignación está retrasada.

opensearch_cluster_health_number_of_pending_tasks

Número de tareas a nivel de clúster que están en cola y esperando para ejecutarse.

opensearch_cluster_health_number_of_in_flight_fetch

Número de solicitudes de recuperación de fragmentos en curso.

opensearch_cluster_health_task_max_waiting_in_queue_millis

Tiempo máximo que una tarea ha permanecido en la cola, en milisegundos.

Métrica Descripción o finalidad

opensearch_os_cpu_percent

Porcentaje de CPU utilizada por el sistema operativo en el nodo.

opensearch_os_load1

Media de carga del sistema operativo en el último minuto. El colector también emite opensearch_os_load5 yopensearch_os_load15.

opensearch_os_mem_used_bytes

Cantidad de memoria física utilizada, en bytes. El recopilador también emite opensearch_os_mem_free_bytesopensearch_os_mem_actual_used_bytes, yopensearch_os_mem_actual_free_bytes.

opensearch_jvm_memory_used_bytes

Cantidad de memoria de JVM utilizada, en bytes, por área de memoria (pila y sin pila). Las métricas relacionadas incluyen opensearch_jvm_memory_committed_bytes y opensearch_jvm_memory_max_bytes.

opensearch_jvm_gc_collection_seconds_count

Número total de eventos de recolección de basura de JVM. Utilícelo conopensearch_jvm_gc_collection_seconds_sum, el tiempo total empleado en la recolección de basura.

opensearch_jvm_uptime_seconds

Tiempo de actividad de JVM, en segundos.

opensearch_thread_pool_active_count

Número de subprocesos activos en cada grupo de subprocesos. Las métricas relacionadas incluyen opensearch_thread_pool_queue_countopensearch_thread_pool_rejected_count, yopensearch_thread_pool_completed_count.

opensearch_filesystem_data_available_bytes

Cantidad de espacio en disco disponible para el nodo, en bytes. Las métricas relacionadas incluyen opensearch_filesystem_data_free_bytes y opensearch_filesystem_data_size_bytes.

opensearch_filesystem_io_stats_device_read_operations_count

Número de operaciones de lectura de disco. El recopilador también emite los recuentos totales de operaciones de escritura y escritura y los tamaños de lectura y escritura (por ejemplo,opensearch_filesystem_io_stats_device_read_size_kilobytes_sum).

opensearch_process_cpu_percent

Porcentaje de CPU utilizada por el OpenSearch proceso.

opensearch_process_mem_resident_size_bytes

Tamaño de la memoria residente del proceso, en bytes. OpenSearch

opensearch_process_open_files_count

Número de descriptores de archivos abiertos por el proceso. OpenSearch

opensearch_breakers_tripped

Número total de veces que se ha disparado cada disyuntor. Las métricas relacionadas incluyen opensearch_breakers_estimated_size_bytes y opensearch_breakers_limit_size_bytes.

opensearch_transport_rx_size_bytes_total

Cantidad total de datos recibidos a través de la capa de transporte entre nodos, en bytes. El recopilador también emite opensearch_transport_tx_size_bytes_total y cuenta los paquetes.

opensearch_indexing_pressure_current_all_in_bytes

Memoria actual consumida por las solicitudes de indexación, en bytes, con el límite configurado. opensearch_indexing_pressure_limit_in_bytes

Métrica Descripción o finalidad

opensearch_indices_docs

Número de documentos. Las métricas relacionadas incluyen opensearch_indices_docs_deletedopensearch_indices_docs_primary, yopensearch_indices_docs_total.

opensearch_indices_store_size_bytes

Tamaño total de los índices del disco, en bytes, con y variantes. opensearch_indices_store_size_bytes_primary opensearch_indices_store_size_bytes_total

opensearch_indices_indexing_index_total

Número total de documentos indexados. Utilícelo con opensearch_indices_indexing_index_time_seconds_total para la latencia de indexación.

opensearch_indices_indexing_is_throttled

Indica si la indexación está actualmente limitada, con el tiempo total limitado. opensearch_indices_indexing_throttle_time_seconds_total

opensearch_indices_search_query_total

Número total de consultas de búsqueda. Úselo con opensearch_indices_search_query_time_seconds para la latencia de las consultas.

opensearch_indices_search_fetch_total

Número total de operaciones de recuperación, con indicación de la latencia de recuperación. opensearch_indices_search_fetch_time_seconds

opensearch_indices_get_total

Número total de operaciones de obtención, con latencia de obtención. opensearch_indices_get_time_seconds

opensearch_indices_merges_total

Número total de fusiones de segmentos completadas. Las métricas relacionadas incluyen opensearch_indices_merges_current y opensearch_indices_merges_total_time_seconds_total.

opensearch_indices_refresh_total

Número total de operaciones de actualización del índice, con indicación del tiempo de actualización. opensearch_indices_refresh_time_seconds_total

opensearch_indices_flush_total

Número total de operaciones de vaciado de índices, con respecto al tiempo de vaciado. opensearch_indices_flush_time_seconds

opensearch_indices_segments_count

Número de segmentos. El recopilador también emite métricas de memoria por segmento (por ejemplo, opensearch_indices_segments_memory_bytes yopensearch_indices_segment_terms_memory_total).

opensearch_indices_translog_operations

Número de operaciones en el registro de transacciones, con indicación de su tamaño. opensearch_indices_translog_size_in_bytes

opensearch_indices_fielddata_memory_size_bytes

Memoria utilizada por la caché de datos de campo, en bytes, para los desalojos. opensearch_indices_fielddata_evictions

opensearch_indices_query_cache_memory_size_bytes

Memoria utilizada por la caché de consultas, en bytes. Las métricas relacionadas incluyen opensearch_indices_query_cache_count y opensearch_indices_query_cache_evictions.

opensearch_indices_request_cache_memory_size_bytes

Memoria utilizada por la caché de solicitudes, en bytes. Las métricas relacionadas incluyen opensearch_indices_request_cache_count y opensearch_indices_request_cache_evictions.

Limitaciones

La integración OpenSearch de Amazon Service con Amazon Managed Service para Prometheus tiene las siguientes limitaciones:

  • Solo es compatible con los dominios OpenSearch de servicio que tienen acceso a Amazon Virtual Private Cloud. No se admiten dominios con acceso público.

  • Un raspador recopila métricas de un único dominio OpenSearch de servicio. Para recopilar métricas de más de un dominio, cree un extractor independiente para cada dominio.