Pada post sebelumnya saya sudah menjelaskan tutorial Installasi Grafana, Prometheus dan Node Exporter pada STB HG680P.
Untuk tutorial kali ini adalah lanjutan dari tutorial sebelumnya yaitu mengunakan STB HG680P sebagai monitoring untuk server.
Disini saya mengunakan Dell Optiplex 5055 yang terinstall Proxmox dengan 3 VM didalamnya
- Debian 12 : 192.168.9.107 (web-server)
- Linux Mint: 192.168.9.116 (remote vm)
- Synology: 192.168.9.105 (NAS)
Installasi Node Exporter kedapa setiap VM
Saya akan melakukan demonstrasi Installasi node exporter di Linux Mint kemudian mengkoneksikanya ke prometheus dan grafana
Lakukan akses ssh pada Linux Mint
Download Node Exporter dengan cara mengunjungi website https://prometheus.io/download/
Pada bagian Operating system pilih Linux, dan Architecture pilih amd64
Scroll kebawah cari node exporter dan copy link
Kembali ke terminal ketikan perintah wget dan paste link yang telah dicopy tadi
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
Extract file tar.gz untuk node exporter dengan perintah berikut
tar xvf node_exporter-1.7.0.linux-amd64.tar.gz
Buat group prometheus
sudo groupadd --system prometheus
Buat user prometheus dan assign ke group prometheus
sudo useradd --system -s /sbin/nologin -g prometheus prometheus
Pindah ke folder Node exporter yang sudah kita extract dari file tar gz sebelumnya
cd node_exporter-1.7.0.linux-amd64/
Pindahkan binary file node exporter ke folder /usr/local/bin/
sudo mv node_exporter /usr/local/bin/
Membuat service daemon untuk node exporter
sudo nano /etc/systemd/system/node-exporter.service
Copy dan paste code berikut kemudian SAVE
[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
Lakukan daemon-reload setelah menambahkan service baru
sudo systemctl daemon-reload
Aktifkan Enable auto start agar setelah stb baru nyala service node-exporter akan auto start juga
sudo systemctl enable --now node-exporter.service
Check node exporter mengunakan browser dengan cara akses Ip address:9100 (192.168.9.116:9100)
Sekarang lakukan remote SSH ke STB HG680
Edit file config prometheus.yml dengan menambahkan ip dari Linux Mint dan port node exporter agar prometheus di STB HG680P bisa mengambil data matric dari node exporter di Linux Mint
sudo nano /etc/prometheus/prometheus.yml
Sebelum ditambahkan
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "node-exporter"
static_configs:
- targets: ["localhost:9100"]
Setelah ditambahkan, penambahan Ip dan port untuk linux mint dibagian Job Node Exporter
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "node-exporter"
static_configs:
- targets: ["localhost:9100"]
- targets: ["192.168.9.116:9100"]
Setelah menambahkan config untuk node exporter, lakukan restart pada prometheus
sudo systemctl restart prometheus.service
Sekarang akses Grafana dari browser, click menu Home -> Dashboards -> Node Exporter Full
Pada bagian Host, ganti ke Ip yang baru saja kita tambahkan
Tunggu beberapa saat hingga data resource dari VM yang baru saja kita tambahkan masuk ke dalam Grafana di STB HG680P
Untuk mempersingkat tutorial, saya akan langsung menambahkan vm – vm yang lain yang sudah saya install node exporter sebelumnya.
global:
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "node-exporter"
static_configs:
- targets: ["localhost:9100"]
- targets: ["192.168.9.116:9100"]
- targets: ["192.168.9.105:9100"]
- targets: ["192.168.9.107:9100"]
Debian 12 : 192.168.9.107 (web-server)
Linux Mint: 192.168.9.116 (remote vm)
Synology: 192.168.9.105 (NAS)
Saya juga telah melakukan setup node exporer untuk Proxmox saya, dari Grafana ini saya bisa memonitoring dan mengetahui bahwa Ram usage pada Server Proxmox saya mencapai 94%
Filter time range
Selain itu terdapat informasi lainya seperti Informasi Hardware temperature
Masih banyak featrue yang bisa dixplorasi dari Tools monitoring ini, dan juga kita juga bisa melakukan setup Alert atau notifikasi pada kondisi tertentu, misal ram usage lebih dari 90% maka grafana akan mengirim notifikasi ke kita (email, telegram, dll)