Prometheus: Aggiungere crittografia TLS a Prometheus Node Exporter
Questa documentazione fa parte della guida Recupero delle metriche da Linux. Consulta la guida completa qui: Come recuperare le metriche di un server Linux in Prometheus utilizzando Node Exporter.
👋 Benvenuti nella documentazione di Stackhero!
Stackhero offre una piattaforma Prometheus cloud completamente gestita, progettata per garantire affidabilità e semplicità:
Alert Managerè integrato, così potete inviare avvisi direttamente aSlack,Mattermost,PagerDutye altre destinazioni popolari.- Un server email dedicato vi consente di inviare avvisi email illimitati senza configurazioni aggiuntive.
Blackboxè incluso, permettendovi di effettuare probe su protocolli comeHTTP,ICMP,TCPe altri per un monitoraggio completo.- Configurate rapidamente la vostra istanza tramite l’editor online del file di configurazione. Non è necessario gestire manualmente i file YAML.
- Applicate gli aggiornamenti con un solo clic. Stackhero si occupa dell’intero processo di upgrade, riducendo al minimo i tempi di inattività e l’intervento manuale.
- Alte prestazioni e sicurezza avanzata sono garantite grazie a un’infrastruttura privata e dedicata.
Sarete operativi in circa 5 minuti. Stackhero si occupa della configurazione, così potete concentrarvi sul monitoraggio invece che sulla manutenzione. Provate Prometheus cloud hosting su Stackhero per ottimizzare i vostri flussi di lavoro di monitoring e alerting.
Per impostazione predefinita, Node Exporter non cripta le comunicazioni. Ciò significa che le credenziali, inclusa la password definita in precedenza, sono trasmesse in chiaro. Per proteggere le comunicazioni, è possibile abilitare la crittografia TLS come segue.
Creazione di certificati TLS
Esegui i seguenti comandi per creare un certificato e una chiave TLS:
# Crea certificato TLS
cd /tmp
sudo openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 \
-keyout /etc/prometheus_node_exporter/tlsCertificate.key \
-out /etc/prometheus_node_exporter/tlsCertificate.crt \
-subj "/CN=`hostname`" \
-addext "subjectAltName = DNS:`hostname`"
sudo chmod 600 /etc/prometheus_node_exporter/*
sudo chown -R node_exporter:node_exporter /etc/prometheus_node_exporter
Aggiornamento della configurazione
Aggiungi le seguenti righe al file di configurazione per aggiungere le impostazioni TLS e poi riavvia Node Exporter:
sudo cat << 'EOF' >> /etc/prometheus_node_exporter/configuration.yml
tls_server_config:
cert_file: /etc/prometheus_node_exporter/tlsCertificate.crt
key_file: /etc/prometheus_node_exporter/tlsCertificate.key
EOF
# Riavvia Prometheus Node Exporter
sudo systemctl restart node_exporter
È possibile verificare che TLS sia attivo connettendosi tramite HTTPS con il seguente comando:
curl -k -u prometheus:${password} https://localhost:9100/metrics
Si noti che questo metodo non utilizza un certificato CA, quindi è necessario passare l'opzione "-k" a cURL per bypassare la verifica del certificato.