Ingesta de las métricas de Prometheus al espacio de trabajo - 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.

Ingesta de las métricas de Prometheus al espacio de trabajo

Una forma de ingerir métricas consiste en utilizar un agente de Prometheus independiente (una instancia de Prometheus que se ejecuta en modo agente) para extraer las métricas del clúster y reenviarlas a Amazon Managed Service para Prometheus para su almacenamiento y supervisión. En esta sección se explica cómo configurar la ingesta de métricas en su espacio de trabajo de Amazon Managed Service para Prometheus desde Amazon EKS al configurar una nueva instancia del agente de Prometheus mediante Helm.

Para generar métricas en Amazon EKS, como Kubernetes o métricas a nivel de nodo, puede utilizar los complementos de la comunidad de Amazon EKS. Para obtener más información, consulte los complementos comunitarios disponibles en la Guía del usuario de Amazon EKS.

Para obtener información sobre otras formas de ingerir datos en Amazon Managed Service para Prometheus, incluida la forma de proteger las métricas y crear métricas de alta disponibilidad, consulte Ingesta de métricas en el espacio de trabajo de Amazon Managed Service para Prometheus.

nota

La ingesta de métricas en un espacio de trabajo se almacenan durante 150 días de forma predeterminada y, después, se eliminan de forma automática. Puede ajustar el período de retención configurando su espacio de trabajo hasta un máximo de 1095 días (tres años). Para obtener más información, consulte Configurar el espacio de trabajo.

Las instrucciones de esta sección le permiten empezar a utilizar Amazon Managed Service para Prometheus rápidamente. Se supone que ya ha creado un espacio de trabajo. En esta sección, ha configurado un nuevo servidor de Prometheus en un clúster de Amazon EKS y el nuevo servidor utiliza una configuración predeterminada para actuar como agente y enviar las métricas a Amazon Managed Service para Prometheus. Este método tiene los requisitos previos siguientes:

  • Debe tener un clúster de Amazon EKS desde el que el nuevo servidor de Prometheus recopilará las métricas.

  • El clúster de Amazon EKS debe tener un controlador de CSI de Amazon EBS instalado (lo requiere Helm).

  • Debe utilizar la CLI 3.0 de Helm o una versión posterior.

  • Debe utilizar un equipo Linux o macOS para realizar los pasos de las siguientes secciones.

Paso 1: Agregar nuevos repositorios de gráficos de Helm

Para agregar nuevos repositorios de gráficos de Helm, introduzca los siguientes comandos. Para obtener más información acerca de estos comandos, consulte Repositorio de Helm.

helm repo add prometheus-community https://prometheus-community.github.io/helm-charts helm repo add kube-state-metrics https://kubernetes.github.io/kube-state-metrics helm repo update

Paso 2: Crear un espacio de nombres para Prometheus

Introduzca el siguiente comando para crear un espacio de nombres de Prometheus para el servidor de Prometheus y otros componentes de supervisión. prometheus-agent-namespaceSustitúyalo por el nombre que desee para este espacio de nombres.

kubectl create namespace prometheus-agent-namespace

Paso 3: Configurar roles de IAM para cuentas de servicio

Para este método de ingesta, debe utilizar roles de IAM para las cuentas de servicio del clúster de Amazon EKS en el que se ejecuta el agente de Prometheus.

Con los roles de IAM de las cuentas de servicio, puede asociar un rol de IAM a una cuenta de servicio de Kubernetes. A continuación, esta cuenta de servicio puede proporcionar AWS permisos a los contenedores de cualquier pod que utilice esa cuenta de servicio. Para obtener más información, consulte Roles de IAM para cuentas de servicio.

Si aún no ha configurado estos roles, siga las instrucciones de Configuración de roles de servicio para la ingesta de métricas desde los clústeres de Amazon EKS para configurarlos. Las instrucciones de esa sección requieren el uso de eksctl. Para obtener más información, consulte Introducción a Amazon Elastic Kubernetes Service - eksctl.

nota

Si no está en EKS o AWS utiliza solo la clave de acceso y la clave secreta para acceder a Amazon Managed Service for Prometheus, no puede utilizar EKS-IAM-ROLE el SiGv4 basado.

Paso 4: Configurar el nuevo servidor y comenzar a ingerir métricas

Para instalar el nuevo agente de Prometheus que envía métricas al espacio de trabajo de Amazon Managed Service para Prometheus, siga estos pasos.

Para instalar un nuevo agente de Prometheus para enviar métricas al espacio de trabajo de Amazon Managed Service para Prometheus:
  1. Utilice un editor de texto para crear un archivo denominado my_prometheus_values_yaml con el siguiente contenido.

    ## The following is a set of default values for prometheus server helm chart which enable remoteWrite to AMP ## For the rest of prometheus helm chart values see: https://github.com/prometheus-community/helm-charts/blob/main/charts/prometheus/values.yaml ## serviceAccounts: server: name: amp-iamproxy-ingest-service-account annotations: eks.amazonaws.com/role-arn: ${IAM_PROXY_PROMETHEUS_ROLE_ARN} server: remoteWrite: - url: https://aps-workspaces.${REGION}.amazonaws.com/workspaces/${WORKSPACE_ID}/api/v1/remote_write sigv4: region: ${REGION} queue_config: max_samples_per_send: 1000 max_shards: 200 capacity: 2500
  2. Introduzca el siguiente comando para crear el servidor de Prometheus.

    • Reemplace prometheus-chart-name por el nombre de la versión de Prometheus.

    • prometheus-agent-namespaceSustitúyalo por el nombre de tu espacio de nombres de Prometheus.

    helm install prometheus-chart-name prometheus-community/prometheus -n prometheus-agent-namespace \ -f my_prometheus_values_yaml