Panduan Install Node Exporter¶
Apa itu Node Exporter?¶
Node Exporter adalah agen monitoring yang digunakan untuk mengumpulkan metrics hardware dan sistem operasi. Prometheus sendiri hanya bertindak sebagai server monitoring dan tidak bisa langsung mengumpulkan data dari sistem. Node Exporter lah yang akan mengumpulkan data, lalu Prometheus akan menarik (scrape) data tersebut. data metriks yang dikumpulkan seperti: CPU usage, Memori (RAM), Disk usage, Load average, Network traffic, Proses yang berjalan
Fungsi Node Exporter¶
Node Exporter meng-expose berbagai metrics terkait host (server) dalam format HTTP endpoint (:9100/metrics), supaya Prometheus bisa scrape data tersebut secara periodik.
Cara Kerja Node Exporter¶
- Install Node Exporter di server target (Linux biasanya).
- Node Exporter jalan sebagai service dan expose metrics di port
9100. - Prometheus melakukan scrape ke
http://<server_ip>:9100/metrics. - Data disimpan Prometheus dan bisa divisualisasikan di Grafana.
Install Node Exporter¶
Sama seperti prometheus, Kita akan menginstall Node Exporter dari Pre-Compile Binary yang sudah disediakan.
cd /tmp
wget https://github.com/prometheus/node_exporter/releases/download/v1.9.1/node_exporter-1.9.1.linux-amd64.tar.gz
tar -xvzf node_exporter-*.*-amd64.tar.gz
cd node_exporter-*.*-amd64
/usr/local/bin. Dan agar lebih aman, buat juga user dan group yang akan digunakan untuk menjalankan Node Exporter. Terakhir ubah kepemilikan direktorinya.
sudo useradd -rs /bin/false node_exporter
sudo mv node_exporter /usr/local/bin/
sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter
Buat konfigurasi node exporter di Systemd. Ini bertujuan agar node exporter berjalan sebagai service.
sudo nano /etc/systemd/system/node_exporter.service
Salin dan tempel baris kode di bawah ini:
[Unit]
Description=Prometheus exporter for machine metrics
[Service]
Restart=always
User=prometheus
ExecStart=/usr/local/bin/node_exporter
ExecReload=/bin/kill -HUP $MAINPID
TimeoutStopSec=20s
SendSIGKILL=no
[Install]
WantedBy=multi-user.target
Lalu Mulai dan Aktifkan Servicenya.
sudo systemctl daemon-reload
sudo systemctl start node_exporter
sudo systemctl enable node_exporter
sudo systemctl status node_exporter
Pastikan statusnya active (running) seperti ini:
Menghubungkan Node Exporter ke Prometheus¶
Sekarang kita akan mencoba menghubungkan node exporter agar dapat di scrape oleh prometheus. Nantinya Kita bisa melihat metriks-metrik yang dikumpulkan oleh node exporter. Untuk antisipasi kegagalam, pertama Kita cadagkan dulu konfigurasi default dari prometheus. Kemudian buat file konfigurasi yang baru.
sudo mv /etc/prometheus/prometheus.yml /etc/prometheus/prometheus.yml.bak
sudo nano /etc/prometheus/prometheus.yml
Salin dan tempelkan baris konfigurasi di bawah ini:
global:
scrape_interval: 15s # default untuk semua job (interval pengambilan data)
evaluation_interval: 15s # evaluasi aturan setiap 15 detik
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "node-exporter-localhost"
scrape_interval: 5s # override khusus Node Exporter (optional)
static_configs:
- targets: ["localhost:9100"]
sudo systemctl restart prometheus
Kemudian Kita cek konfigurasinya sudah berhasil apa belum.
Masuk ke Prometheus Web Console -> Status -> Targets. Pastikan Endpoint sudah bertambah node-exporter-localhost dan berstate up seperti ini:
NEWs