Configuración del reenvío de métricas del servidor Prometheus
Los exportadores de métricas de Prometheus, sap_host_exporter
y hanadb_exporter
, están configurados para recopilar métricas de SAP HANA y de las instancias del sistema SAP. Cada exportador de Prometheus recopila métricas
del sistema SAP y las expone a un puerto local HTTP. Utilice un puerto HTTP diferente para cada proceso y utilice un número de puerto superior a 9600.
Un servidor Prometheus, disponible en el paquete golang-github-prometheus-prometheus
, está configurado para reenviar las métricas recopiladas desde el puerto local HTTP a los puntos finales de ingesta de monitorización.
Todos estos servicios se instalan como servicios systemd
para mantenerlos en funcionamiento permanentemente.
El servidor Prometheus se utiliza para reenviar las métricas a la monitorización IBM Cloud®. Puede configurar todos los procesos de exportación de hanadb_exporter
y sap_host_exporter
en un único archivo prometheus.yml
.
El servidor Prometheus en modo agente realiza las siguientes funciones.
- Recopila métricas de los puntos finales de HTTPS.
- Reenvía las métricas a un endpoint remoto.
Siga estos pasos para configurar el reenvío de métricas para el servidor Prometheus.
-
Cree un archivo de configuración Prometheus como se describe en Configuración de la escritura remota Prometheus.
Todas las métricas de todos los procesos de exportación se recopilan definiendo
targets
.La plantilla para esta configuración incluye los siguientes marcadores de posición:
<ibmcloud_monitoring_instance_url>
determina el destino de reescritura de la instancia IBM Cloud®.<ibmcloud_monitoring_authorization_credentials>
es el token de autenticación para la instancia de monitorización IBM Cloud®.<sap_monitoring_nr>
es el número del sistema SAP donde se recogen las métricas expuestas.
-
Como usuario de Prometheus, ejecute el siguiente comando para crear el archivo de configuración con el nombre de archivo /etc/prometheus/<sap_monitoring_nr>.yml
global: scrape_interval: 15s evaluation_interval: 20s remote_write: - url: "<ibmcloud_monitoring_instance_url>" authorization: credentials: "<ibmcloud_monitoring_authorization_credentials>" write_relabel_configs: - target_label: instance replacement: 'SAP-<sap_monitoring_nr>-<sap_monitoring_solution_name>' scrape_configs: - job_name: "hanadb_exporter" static_configs: - targets: ['localhost:5<sap_monitoring_nr>02'] relabel_configs: - target_label: domain replacement: 'SAP' - job_name: "sap_host_exporter" static_configs: - targets: ['localhost:5<sap_monitoring_nr>03','localhost:5<sap_monitoring_nr>04','localhost:5<sap_monitoring_nr>05'] # 05 – n: as many as existing SAP Application server relabel_configs: - target_label: domain replacement: 'SAP'
No cambie la sintaxis del nombre del archivo de configuración Prometheus:
/etc/prometheus/<sap_monitoring_nr>.yml
. -
Utilice los siguientes comandos para aplicar los permisos de usuario de Prometheus en todos los archivos de configuración de Prometheus.
sudo chown -R prometheus:prometheus /etc/prometheus
sudo chmod 0740 /etc/prometheus
sudo chmod 0640 /etc/prometheus/*
Pruebe manualmente el demonio Prometheus.
sudo -H -u prometheus /usr/bin/prometheus \ --config.file=/etc/prometheus/${sap_monitoring_nr}.yml \ --storage.agent.path=/opt/prometheus/${sap_monitoring_nr} \ --enable-feature=agent --web.listen-address=localhost:5${sap_monitoring_nr}01
Como usuario root, configure los parámetros del servicio systemd para ejecutar el servidor Prometheus en modo agente mediante los siguientes pasos.
-
Cree y copie el siguiente contenido en el archivo
/etc/systemd/system/prometheus@.service
.[Unit] Description=Prometheus After=network.target [Service] User=prometheus Group=prometheus Type=simple Restart=always ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/%i.yml \ --storage.agent.path=/opt/prometheus/%i --enable-feature=agent \ --web.listen-address=localhost:5%i01 ExecReload=/bin/kill -HUP $MAINPID TimeoutStopSec=20s SendSIGKILL=no [Install] WantedBy=multi-user.target
-
Utilice los siguientes comandos para activar la configuración e iniciar y habilitar el agente Prometheus.
systemctl daemon-reload
sudo systemctl start prometheus@${sap_monitoring_nr}
sudo systemctl enable prometheus@${sap_monitoring_nr}
Comprueba el estado del servicio:
systemctl status prometheus@${sap_monitoring_nr}
-
Reinicie el demonio después de cada actualización de la configuración en el archivo /etc/prometheus/<sap_monitoring_nr>.yml.
chown a+r /etc/prometheus/*
systemctl reload prometheus@${sap_monitoring_nr}
Las métricas tardan algún tiempo en aparecer en el panel de control.
Próximos pasos
Para visualizar las métricas recopiladas por el servidor Prometheus, consulte Iniciar la interfaz web de supervisión y trabajar con paneles de control.