Prometheus: Añadir autenticación a Prometheus Node Exporter
Esta documentación forma parte de la guía Recuperación de métricas desde Linux. Consulte la guía completa aquí: Cómo recuperar métricas de un servidor Linux en Prometheus usando Node Exporter.
👋 ¡Bienvenido a la documentación de Stackhero!
Stackhero ofrece una plataforma totalmente gestionada de Prometheus en la nube diseñada para ofrecer fiabilidad y simplicidad:
Alert Managerestá integrado, lo que le permite enviar alertas directamente aSlack,Mattermost,PagerDutyy otros destinos populares.- Un servidor de correo electrónico dedicado le permite enviar alertas ilimitadas por email sin necesidad de configuración adicional.
Blackboxestá incluido, permitiéndole monitorizarHTTP,ICMP,TCPy otros protocolos para una supervisión completa.- Configure su instancia rápidamente utilizando el editor online de archivos de configuración. No es necesario gestionar archivos YAML manualmente.
- Aplique actualizaciones con un solo clic. Stackhero se encarga del proceso de actualización por usted, minimizando el tiempo de inactividad y la intervención manual.
- Alto rendimiento y máxima seguridad integrados, gracias a su propia infraestructura privada y dedicada.
Ponga todo en marcha en unos 5 minutos. Stackhero se encarga de la configuración para que pueda centrarse en la monitorización, no en el mantenimiento. Pruebe el hosting de Prometheus en la nube de Stackhero para optimizar sus flujos de trabajo de monitorización y alertas.
Por defecto, Node Exporter no realiza autenticación, lo que significa que cualquiera puede recuperar las métricas expuestas. Para asegurar el acceso, puede añadir autenticación básica para un usuario.
Generar una contraseña aleatoria
Genere una contraseña usando los siguientes comandos:
password=`openssl rand -base64 32`
passwordHashed=`echo ${password} | htpasswd -inBC 10 "" | tr -d ':'`
echo "Contraseña clara para guardar para el servidor Prometheus: ${password}"
Si no tiene el binario
htpasswd, puede instalarlo en Debian/Ubuntu usandoapt-get install --no-install-recommends apache2-utils.
Mantenga la contraseña clara segura ya que la necesitará al configurar Prometheus.
Añadir el usuario y reiniciar Node Exporter
Añada las siguientes líneas al archivo de configuración para añadir un usuario llamado "prometheus" con el hash de la contraseña generada:
sudo cat << EOF >> /etc/prometheus_node_exporter/configuration.yml
basic_auth_users:
prometheus: ${passwordHashed}
EOF
# Reiniciar Node Exporter
sudo systemctl restart node_exporter
Finalmente, verifique que la autenticación esté funcionando correctamente:
- Ejecutar
curl http://localhost:9100/metricsdebería devolver "Unauthorized". - Ejecutar
curl -u prometheus:${password} http://localhost:9100/metricsdebería devolver la lista de métricas.