Dziś zajmiemy się konfiguracją Prometheusa oraz Grafany – dwóch narzędzi kluczowych dla monitorowania i wizualizacji danych systemowych.
Krótkie wprowadzenie:
- Prometheus: Jest to narzędzie monitorujące, które działa jak baza danych, zbierając informacje o stanie systemu.
- Grafana: Oprogramowanie służące do analizy oraz inteligentnej wizualizacji danych zgromadzonych przez Prometheusa.
Konfiguracja Prometheusa i Grafany
Celem tej konfiguracji jest wyświetlenie parametrów komputera, na którym uruchomimy Prometheusa, wspomaganego przez node_exporter
, który gromadzi dane systemowe.
Krok 1: Pobranie Prometheusa
Najpierw pobierzemy Prometheusa. Można to zrobić, wchodząc na stronę projektu i kopiując odpowiedni link do najnowszej wersji. Na przykład, na Ubuntu wykonaj poniższą komendę:
$ wget https://github.com/prometheus/prometheus/releases/download/v2.54.0/prometheus-2.54.0.linux-amd64.tar.gz
Krok 2: Wypakowanie archiwum
Po pobraniu pliku, wypakujmy go za pomocą komendy tar
:
$ tar xzf prometheus-2.54.0.linux-amd64.tar.gz
Krok 3: Przeniesienie plików i konfiguracja jako serwis
Skonfigurujemy Prometheusa tak, aby działał jako serwis systemowy. W tym celu przenosimy wypakowane pliki do katalogu /etc/prometheus
i tworzymy plik konfiguracyjny dla serwisu:
$ sudo mv prometheus-2.54.0.linux-amd64 /etc/prometheus $ sudo nano /etc/systemd/system/prometheus.service
Następnie w pliku prometheus.service
umieszczamy poniższą konfigurację:
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
ExecStart=/etc/prometheus/prometheus --config.file=/etc/prometheus/prometheus.yml
Restart=always
[Install]
WantedBy=multi-user.target
Krok 4: Uruchomienie serwisu
Po utworzeniu wszystkich plików, odświeżmy konfigurację demona systemowego i uruchommy Prometheusa:
$ sudo systemctl daemon-reload$ sudo systemctl enable prometheus.service
$ sudo systemctl restart prometheus.service
Od tego momentu Prometheus powinien działać pod adresem IP maszyny na porcie 9090
. Można teraz przejść do konfiguracji node_exporter
oraz Grafany, aby monitorować system i wizualizować dane.

Krok 5: Pobranie i Konfiguracja Node Exportera
Przyszedł czas na pobranie node_exportera.
$ wget https://github.com/prometheus/node_exporter/releases/download/v1.8.2/node_exporter-1.8.2.linux-amd64.tar.gz
$ tar xvf node_exporter-1.8.2.linux-amd64.tar.gz
$ sudo mv node_exporter-1.8.2.linux-amd64 /etc/node_exporter
$ nano /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
ExecStart=/etc/node_exporter/node_exporter
Restart=always
[Install]
WantedBy=multi-user.target
Znowu postępujemy tak jak wcześniej, restartujemy demona, włączamy node-a.
$ sudo systemctl daemon-reload
$ sudo systemctl enable node_exporter
$ sudo systemctl restart node_exporter
Teraz aby nasz prometheus pobierał dane z node_exportera, musimy zmodyfikować jego config.
$ sudo nano /etc/prometheus/prometheus.yml
#usuwamy wsyzstko i wklejamy to
global:
scrape_interval: 15s
scrape_configs:
- job_name: node
static_configs:
- targets: ['localhost:9100']
#po edycji pliku konfiguracyjnego musimy zrestartować prometheusa
$ sudo systemctl restart prometheus
Krok 6: Instalujemy Grafane
$ sudo apt-get install -y adduser libfontconfig1 musl
$ wget https://dl.grafana.com/enterprise/release/grafana-enterprise_11.1.3_amd64.deb
$ sudo dpkg -i grafana-enterprise_11.1.3_amd64.deb
#uruchamiamy grafane
$ sudo /bin/systemctl start grafana-server
Aktualnie nasza grafana działa na porcie 3000, wchodzimy na stronę i logujemy się „admin”, „admin”. Po czym zmieniamy hasło logowania.
Dodajemy nowe połączenie z naszym prometheusem.


Wpisujemy adres naszej maszyny, scrollujemy w dół i sprawdzamy czy wszystko działa poprawnie.
Teraz dodajemy naszą wizualizację:

Kilkamy „Load” i w źródle dodajemy naszego prometheusa.

Jeżeli nigdzie nie zrobiliśmy błędu powinny nam się wyświetlić wszystkie parametry.
