Prometheus: Dodaj uwierzytelnianie do Prometheus Node Exporter
Ta dokumentacja jest częścią przewodnika Pobieranie metryk z Linuxa. Pełny przewodnik znajdziesz tutaj: Jak pobierać metryki serwera Linux w Prometheus za pomocą Node Exporter.
👋 Witamy w dokumentacji Stackhero!
Stackhero oferuje gotowe do użycia rozwiązanie Prometheus cloud, które zapewnia wiele korzyści, w tym:
Alert Managerw zestawie do wysyłania alertów doSlack,Mattermost,PagerDuty, itp.- Dedykowany serwer e-mail do wysyłania nieograniczonych alertów e-mail.
Blackboxdo sondowaniaHTTP,ICMP,TCPi więcej.- Łatwa konfiguracja z edytorem plików konfiguracyjnych online.
- Bezproblemowe aktualizacje za pomocą jednego kliknięcia.
- Optymalna wydajność i solidne bezpieczeństwo dzięki prywatnej i dedykowanej VM.
Oszczędzaj czas i upraszczaj swoje życie: wystarczy 5 minut, aby wypróbować rozwiązanie Prometheus cloud hosting Stackhero!
Domyślnie Node Exporter nie wykonuje uwierzytelniania, co oznacza, że każdy może pobrać udostępnione metryki. Aby zabezpieczyć dostęp, można dodać podstawowe uwierzytelnianie dla użytkownika.
Generowanie losowego hasła
Wygeneruj hasło za pomocą następujących poleceń:
password=`openssl rand -base64 32`
passwordHashed=`echo ${password} | htpasswd -inBC 10 "" | tr -d ':'`
echo "Hasło do zachowania dla serwera Prometheus: ${password}"
Jeśli nie masz binarki
htpasswd, można ją zainstalować na Debian/Ubuntu za pomocąapt-get install --no-install-recommends apache2-utils.
Przechowuj hasło w bezpiecznym miejscu, ponieważ będzie potrzebne podczas konfigurowania Prometheus.
Dodawanie użytkownika i ponowne uruchamianie Node Exporter
Dodaj następujące linie do pliku konfiguracyjnego, aby dodać użytkownika o nazwie "prometheus" z wygenerowanym hashem hasła:
sudo cat << EOF >> /etc/prometheus_node_exporter/configuration.yml
basic_auth_users:
prometheus: ${passwordHashed}
EOF
# Ponowne uruchomienie Node Exporter
sudo systemctl restart node_exporter
Na koniec, sprawdź, czy uwierzytelnianie działa poprawnie:
- Uruchomienie
curl http://localhost:9100/metricspowinno zwrócić "Unauthorized". - Uruchomienie
curl -u prometheus:${password} http://localhost:9100/metricspowinno zwrócić listę metryk.