Implementación de Prometheus mediante Helm - Amazon EKS

Ayude a mejorar esta página

¿Quiere contribuir a esta guía del usuario? Desplácese hasta el final de esta página y seleccione Editar esta página en GitHub. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.

Implementación de Prometheus mediante Helm

Como alternativa al uso de Amazon Managed Service para Prometheus, puede implementar Prometheus en su clúster con la versión 3 de Helm. Si ya ha instalado Helm, puede comprobar su versión con el comando helm version. Helme s un administrador de paquetes para clústeres Kubernetes. Para obtener más información sobre Helm y sobre cómo instalarlo, consulte Implementación de aplicaciones en Amazon EKS con Helm.

Después de configurar Helm para su clúster de Amazon EKS, puede utilizarlo para implementar Prometheus con los pasos que se describen a continuación.

Para implementar Prometheus usando Helm
  1. Cree un espacio de nombres de Prometheus.

    kubectl create namespace prometheus
  2. Agregue el repositorio de gráficos de prometheus-community.

    helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
  3. Implemente Prometheus.

    helm upgrade -i prometheus prometheus-community/prometheus \ --namespace prometheus \ --set alertmanager.persistence.storageClass="gp2" \ --set server.persistentVolume.storageClass="gp2"
    nota

    Si recibe el error Error: failed to download "stable/prometheus" (hint: running `helm repo update` may help) al ejecutar este comando, ejecute helm repo update prometheus-community y, a continuación, vuelva a ejecutar el comando del Paso 2.

    Si recibe el error Error: rendered manifests contain a resource that already exists, ejecute helm uninstall your-release-name -n namespace y, a continuación, vuelva a ejecutar el comando del Paso 3.

  4. Compruebe que todos los Pods en el espacio de nombres de prometheus se encuentran en estado READY.

    kubectl get pods -n prometheus

    Un ejemplo de salida sería el siguiente.

    NAME READY STATUS RESTARTS AGE prometheus-alertmanager-59b4c8c744-r7bgp 1/2 Running 0 48s prometheus-kube-state-metrics-7cfd87cf99-jkz2f 1/1 Running 0 48s prometheus-node-exporter-jcjqz 1/1 Running 0 48s prometheus-node-exporter-jxv2h 1/1 Running 0 48s prometheus-node-exporter-vbdks 1/1 Running 0 48s prometheus-pushgateway-76c444b68c-82tnw 1/1 Running 0 48s prometheus-server-775957f748-mmht9 1/2 Running 0 48s
  5. Utilice kubectl para el enrutamiento del puerto de la consola de Prometheus a su equipo local.

    kubectl --namespace=prometheus port-forward deploy/prometheus-server 9090
  6. Apunte un navegador web a http://localhost:9090 para ver la consola de Prometheus.

  7. Elija una métrica del menú - insert metric at cursor (- insertar métrica en el cursor) y elija Execute (Ejecutar). Elija la pestaña Graph (Gráfico) para mostrar la métrica con el paso del tiempo. La siguiente imagen muestra container_memory_usage_bytes a lo largo del tiempo.

    Métricas de Prometheus
  8. En la barra de navegación superior, elija Status (Estado) y Targets (Destinos).

    Consola de Prometheus

    Se muestran todos los puntos de conexión de Kubernetes que están conectados a Prometheus mediante detección de servicios.