¿Quieres saber cómo podemos ayudarte?   Agenda tu cita ahora mismo 

Idioma:   English EN Español ES

En este blog, veremos qué es Kube State Metrics y su configuración en Kubernetes. Este blog es parte de la serie de tutoriales de configuración de Prometheus kubernetes.

 

¿Qué es Kube State Metrics?

 

Kube State Metrics es un servicio que se comunica con el servidor de la API de Kubernetes para obtener todos los detalles sobre todos los objetos de la API como despliegues, pods, daemonsets, Statefulsets, etc.

 

Principalmente produce métricas en formato Prometheus con la estabilidad de la API Kubernetes. En general, provee objetos de kubernetes y métricas de recursos que usted no puede obtener directamente de los componentes nativos del monitoreo de Kubernetes.

 

El servicio de métricas de estado de Kube expone todas las métricas en /metrics URI. Prometheus puede extraer todas las métricas expuestas por las métricas de estado de Kube.

 

Las siguientes son algunas de las métricas importantes que usted puede obtener de Kube state metrics.

 

  1. Estado del nodo, capacidad del nodo (CPU y memoria)
  2. Cumplimiento del conjunto de réplicas (estado deseado/disponible/no disponible/estado actualizado de las réplicas por despliegue)
  3. Estado del pod (en espera, en ejecución, listo, etc)
  4. Métricas de ingreso
  5. Métricas de PV y PVC
  6. Métricas de Daemonset y Statefulset.
  7. Solicitudes y límites de recursos.
  8. Métricas de Job y Cronjob

 

Puede consultar las métricas detalladas admitidas en la documentación aquí.

 

 

Configuración de Kube State Metrics

 

Las métricas de estado de Kube están disponibles como una imagen docker pública. Usted tendrá que desplegar los siguientes objetos de Kubernetes para que las métricas de estado de Kube funcionen. 

 

  • Una Cuenta de Servicio
  1. Cluster Role – Para que las métricas de estado de Kube accedan a todos los objetos de la API Kubernetes.
  2. Cluster Role Binding – Vincula la cuenta de servicio con el rol de clúster.
  3. Despliegue de las Métricas de Estado de Kube
  4. Servicio – Para exponer las métricas

 

Todos los objetos de métricas de estado de Kube mencionados anteriormente se desplegarán en el espacio de nombres kube-system

 

Vamos a desplegar los componentes. Todos los objetos de despliegue están disponibles en Github. También puede encontrar el mismo objeto de despliegue en el repo oficial.

 

Paso 1: Clonar el repo de Github

 

git clone https://github.com/devopscube/kube-state-metrics-configs.git

 

Paso 2: Crear todos los objetos apuntando al directorio clonado.

 

kubectl apply -f kube-state-metrics-configs/

 

Paso 3: Compruebe el estado del despliegue utilizando el siguiente comando.

 

kubectl get deployments kube-state-metrics -n kube-system

 

 

Configuración de Prometheus de las Métricas de Estado de kube

Todas las métricas estáticas de Kube pueden ser obtenidas desde el endpoint del servicio de estado de Kube en /metrics URI.

 

 

Esta configuración puede ser añadida como parte de la configuración del trabajo de Prometheus. Usted tiene que añadir la siguiente configuración de trabajo a su configuración de Prometheus para que éste pueda raspar todas las métricas de estado de Kube.

Nota: Si ha seguido mi guía de prometheus, no tiene que añadir esta configuración de raspado. Ya es parte de la configuración de Prometheus.  Usted debería ver el estado del objetivo “up” después de desplegar las métricas de estado de Kube.

Si usted ha seguido

 

– job_name: ‘kube-state-metrics’ static_configs: – targets: [‘kube-state-metrics.kube-system.svc.cluster.local:8080’]

 

 

Tomado de la web:

Traducido al español por Devops Latam.

Contribuido por byBibin WilsonJanuary 27, 2022 –  https://devopscube.com/setup-kube-state-metrics/

Leave a Reply

Tu dirección de correo electrónico no será publicada.