Configuración de la ingesta desde un nuevo servidor de Prometheus con Helm
Las instrucciones de esta sección le permiten empezar a utilizar Amazon Managed Service para Prometheus rápidamente. Ha configurado un nuevo servidor Prometheus en un clúster de Amazon EKS y el nuevo servidor utiliza una configuración predeterminada para 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 ordenador 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. Reemplace prometheus-namespace por el nombre que desee para este espacio de nombres.
kubectl create namespaceprometheus-namespace
Paso 3: Configurar roles de IAM para cuentas de servicio
Para el método de incorporación que estamos documentando, debe utilizar roles de IAM para las cuentas de servicio del clúster de Amazon EKS en el que se ejecuta el servidor 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. Esta cuenta de servicio puede proporcionar permisos AWS a los contenedores en 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 y utiliza solo la clave de acceso y la clave secreta para acceder a Amazon Managed Service para Prometheus, no puede utilizar SigV4 basado en EKS-IAM-ROLE.
Paso 4: Configurar el nuevo servidor y comenzar a ingerir métricas
Para instalar el nuevo servidor de Prometheus que envía métricas al espacio de trabajo de Amazon Managed Service para Prometheus, siga estos pasos.
Para instalar un nuevo servidor de Prometheus para enviar métricas al espacio de trabajo de Amazon Managed Service para Prometheus
-
Utilice un editor de texto para crear un archivo denominado
my_prometheus_values_yamlcon el siguiente contenido.-
Reemplace
IAM_PROXY_PROMETHEUS_ROLE_ARNpor el ARN del amp-iamproxy-ingest-role que haya creado en Configuración de roles de servicio para la ingesta de métricas desde los clústeres de Amazon EKS. -
Reemplace
WORKSPACE_IDpor el ID del espacio de trabajo de Amazon Managed Service para Prometheus. -
Reemplace
REGIONpor la región del espacio de trabajo de Amazon Managed Service para Prometheus.
## 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 -
-
Introduzca el siguiente comando para crear el servidor de Prometheus.
-
Reemplace
prometheus-chart-namepor el nombre de la versión de Prometheus. -
Reemplace
prometheus-namespacepor el nombre del espacio de nombres de Prometheus.
helm installprometheus-chart-nameprometheus-community/prometheus -nprometheus-namespace\ -f my_prometheus_values_yamlnota
Puede personalizar el comando
helm installde muchas maneras. Para obtener más información, consulte Instalación de Helmen la documentación de Helm. -