W trzecim artykule będę starał się krok po kroku pokazać instalację klienta na maszynach, które lub których usługi, procesy, zasoby, podzespoły itd. będziemy chcieli móc nadzorować w sposób ciągły. Proces w ogólnym zarysie składa się z dwóch części. Pierwsza sprowadza się do rozbudowy głównego pliku konfiguracyjnego prometheus.yml w sekcji scrape o adres IP (nazwę domenową) oraz port na którym nasłuchuje klient PROMETHEUS-a tzw. node export. Jak się nie trudno domyśleć drugi etap wiąże się z samą instalacją i konfiguracją klienta na nadzorowanej jednostce.
Bazując na poprzednich artykułach otwieram plik konfiguracyjny prometheus.yml i dodaję do niego następujące pięć wierszy związanych z celem [localhost:9090] oraz [localhost:9100] w sekcji scrape_configs:
- - targets: ['localhost:9100']
- nano /etc/prometheus/prometheus.yml
- cat /etc/prometheus/prometheus.yml
- scrape_configs:
- job_name: "prometheus-102"
static_configs:
- targets: ["localhost:9090"]
labels:
app: "prometheus-102"
- targets: ['localhost:9100']
labels:
app: "prometheus-srv-102" - systemctl restart prometheus.service
Po tych wszystkich operacjach, gdy otworzymy stronę www administracyjną PROXMOX-a to ujrzymy błąd. Jest on jak najbardziej poprawny, gdyż w tej chwili brakuje nam aplikacji, która by je udostępniała po stronie nadzorowanej maszyny.

W drugim etapie logujemy się w moim przypadku na UBUNTU z zainstalowanym PROMETHEUS-em (stąd dodałem wiersz do static_config, a nie stworzyłem nową opcję) i ściągam wcześniej opracowny przez spłeczność tzw. node exporter z gotowymi funkcjami odpytującymi o najważniejsze parametry stanu pracy systemu operacyjnego LINUX. Proponuje pobrać ze strony domowej projektu https://prometheus.io/download/ lub z GIT-HUB-a https://github.com/prometheus/node_exporter :

- wget https://github.com/prometheus/node_exporter/releases/download/v1.10.2/node_exporter-1.10.2.linux-amd64.tar.gz
- tar xvfz node_exporter-1.10.2.linux-amd64.tar.gz
- cd node_exporter-1.10.2.linux-amd64
- cd ..
- rm node_exporter-1.10.2.linux-amd64.tar.gz
- rm -R node_exporter-1.10.2.linux-amd64
- sudo mv node_exporter /usr/bin
- sudo useradd -rs /bin/false node_exporter
- sudo chown node_exporter:node_exporter /usr/bin/node_exporter
- sudo nano /etc/systemd/system/node_exporter.service

- [Unit]
Description=Prometheus Node Exporter
After=network.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
Restart=on-failure
ExecStart=/usr/bin/node_exporter
[Install]
WantedBy=multi-user.target - systemctl daemon-reload
- systemctl start node_exporter
- systemctl enable node_exporter
- systemctl status node_exporter

- node_exporter --version

- sudo ufw allow 9100/tcp lub firewall-cmd --permanent -add-port=9100/tcp && firewall-cmd --reload
Teraz jeśli ponownie otworzymy stronę administratcyjną PROXMOX-a w przeglądarce, np. http://localhost:9090/targets to ujrzymy wszystko na zielono:


oraz pod adresem http://localhost:9100/metrics :

CNP
Opracowane na podstawie:
- Prometheus - Как установить Node Exporter на Linux серверах? - https://www.youtube.com/watch?v=fn_zV7R-098&list=PLg5SS_4L6LYu6qjwwwjt2WRsEudkzqB7J&index=3
- adv4000 / prometheus - https://github.com/adv4000/prometheus/blob/main/install_prometheus_node_exporter.sh
- Prometheus - https://prometheus.io/docs/guides/node-exporter/