Monitoring Server Linux dengan Prometheus dan Node Exporter

Oleh Ita Sugiharti
Monitoring Server Linux dengan Prometheus dan Node Exporter

Halo DomaiNesians! Monitoring server adalah salah satu fondasi penting dalam menjaga stabilitas sistem, terutama jika kalian mengelola aplikasi yang terus-menerus menerima traffic atau menjalankan banyak service sekaligus. Tanpa monitoring yang baik, masalah seperti lonjakan CPU, memory leak, disk penuh, atau bottleneck jaringan sering kali baru diketahui setelah aplikasi mulai lambat atau bahkan down.

Pada server Linux standar, informasi performa sering kali hanya dapat dilihat menggunakan perintah manual seperti top, htop, free, iostat, atau df. Meskipun bermanfaat, metode ini tidak praktis untuk analisis jangka panjang. Di sinilah peran Prometheus menjadi penting sebagai solusi monitoring modern, scalable, dan mudah diintegrasikan dengan berbagai komponen.

Pada artikel kali ini, kita akan membahas secara lengkap bagaimana cara instalasinya, cara kerjanya, hingga bagaimana sistem monitoring ini digunakan untuk meningkatkan visibilitas performa server kalian.

Apa Itu Sistem Monitoring Server Prometheus?

Prometheus adalah sistem monitoring open-source berbasis time-series database yang fokus pada reliability, efisiensi, dan fleksibilitas. Dikembangkan oleh SoundCloud dan kini menjadi bagian dari Cloud Native Computing Foundation (CNCF), Prometheus telah menjadi standar industri dalam observability karena integrasinya yang sangat luas.

Ada beberapa alasan mengapa sistem monitoring ini banyak digunakan:

1. Model Pull-Based yang Lebih Aman dan Konsisten

Sistem monitoring yang satu ini mengambil data dari target (exporter) secara berkala melalui protokol HTTP. Pendekatan ini memberi kontrol penuh terhadap endpoint apa saja yang ingin dimonitor.

2. Query Language yang Kuat (PromQL)

PromQL memungkinkan kalian melakukan analisis mendalam seperti rate, sum, histogram, atau aggregasi kompleks. Query bisa dipakai untuk dashboard, alerting, atau troubleshooting performa.

3. Mudah Ditambahkan Exporter Tambahan

Hampir semua service populer seperti MySQL, Redis, Nginx, Kubernetes, Docker, HAProxy, hingga hardware metrics punya exporter bawaan atau komunitas.

4. Self-contained

Sistem monitoring yang satu ini juga tidak membutuhkan database eksternal untuk menyimpan data. Ini membuat instalasi lebih sederhana.

5. Mendukung Alerting

Dengan Alertmanager, kamu bisa mendapatkan notifikasi ke Telegram, Slack, Email, WhatsApp API, dan lainnya.

Sistem monitoring ini juga dirancang untuk mengumpulkan metrik berbasis time-series, yaitu data yang disimpan berdasarkan waktu sehingga sangat cocok untuk analisis performa, grafik tren, dan peringatan (alerting).

Baca Juga:  Drone CI: Solusi Workflow Dev yang Efisien

Cara Kerja Prometheus

Cara kerjanya, Prometheus akan melakukan “scrape”, yaitu proses mengambil data dari endpoint HTTP (biasanya /metrics) yang disediakan oleh server atau aplikasi. Kemudian, ia akan menyimpan data ini di time-series database internal yang dioptimalkan untuk query cepat.

Berikut proses utama yang dilakukan:

  1. Mengambil metrik dari endpoint /metrics
  2. Menyimpan data ke database time-series
  3. Menjalankan evaluasi rule untuk alert
  4. Menyediakan UI untuk eksplorasi data
  5. Menyediakan API bagi Grafana atau tools lain

Mengenal Node Exporter

Prometheus tidak dapat memonitor sistem operasi Linux secara langsung. Di sinilah Node Exporter berperan. Node Exporter adalah agent kecil yang berjalan di background dan menyediakan metrik hardware dan OS, seperti:

  • CPU usage (per core)
  • Memory usage
  • Disk usage & I/O
  • Network traffic
  • Load average
  • File system usage
  • Kernel metrics
  • Hardware info
  • Process states

Endpoint exporter ini biasanya berada di:

Exporter ini juga sangat ringan dan dapat berjalan di hampir semua distro Linux tanpa konfigurasi rumit.

Contoh Metrik dari Node Exporter

  • node_cpu_seconds_total
  • node_load1
  • node_memory_MemAvailable_bytes
  • node_filesystem_avail_bytes
  • node_network_receive_bytes_total

Semua metrik tersebut dapat diproses menjadi grafik maupun alert di Prometheus dan Grafana.

Arsitektur Monitoring Menggunakan Prometheus

Agar kita lebih memahami alur monitoring menggunakan Prometheus dan Node Exporter, berikut adalah gambaran arsitektur umumnya:

Monitoring Server Linux dengan Prometheus dan Node Exporter 1

Keterangan:

  • Node Exporter mengumpulkan metrik server.
  • Prometheus mengambil (scrape) metrik setiap 5–15 detik.
  • Grafana membaca data dari Prometheus untuk menampilkan dashboard.

Persiapan & Persyaratan

Sebelum memulai instalasi, pastikan kamu sudah menyiapkan hal-hal berikut:

  1. Memiliki server atau VPS yang menjalankan Linux (Ubuntu, Debian, CentOS).
  2. Akses SSH ke server untuk instalasi komponen monitoring.
  3. Akses root atau sudo untuk membuat service dan menyalakan exporter.
  4. Untuk keamanan, pastikan firewall dan konfigurasi keamanan (iptables, ufw, SELinux) dikonfigurasi agar endpoint metrik dapat diakses oleh Prometheus.
  5. Firewall tidak memblokir port:
    • 9090 (Prometheus)
    • 9100 (Node Exporter)

Cara Instalasi Node Exporter

Agar server kita bisa dipantau, kita perlu memasang “exporter” yang mengekspos metrik sistem (CPU, memori, disk, network) dalam format yang bisa di-scrape oleh Prometheus. Salah satu exporter populer adalah node_exporter.

Exporter ini nantinya akan berjalan sebagai service background yang berperan dalam mengekspos metrik di port default 9100. Langkah-langkah instalasi node_exporter di Ubuntu/Debian:

1. Masuk ke server melalui SSH:

2. Download & ekstrak exporter:

Baca Juga:  Cara Cek Log Aktivitas Server di Plesk Panel (Log Browser)

Sebagai catatan, ganti 1.10.2 dengan versi terbaru. Cek di GitHub release untuk mendapatkan versi paling up-to-date.

3. Buat service systemd

systemd berfungsi agar exporter otomatis berjalan saat server reboot:

Buat file /etc/systemd/system/node_exporter.service dengan perintah berikut:

Isi file dengan konfigurasi berikut:

Monitoring Server Linux dengan Prometheus dan Node Exporter 2

4. Aktifkan dan jalankan service:

Monitoring Server Linux dengan Prometheus dan Node Exporter 3

5. Uji akses metrik

Jalankan perintah berikut untuk mengetahui apakah exporter sudah berjalan:

Jika muncul output panjang yang berisi data metrik dalam format teks (prometheus text exposition), maka itu tandanya exporter sudah berjalan.

Monitoring Server Linux dengan Prometheus dan Node Exporter 4

Cara Instalasi Prometheus

Dalam instalasi Prometheus, kamu bisa menjalankannya di server yang sama atau di server monitoring terpisah (lebih disarankan untuk skalabilitas dan keamanan).

1. Download & ekstrak Prometheus:

Sebagai catatan, ganti 3.7.3 dengan versi terbaru. Cek di GitHub release atau jalankan perintah berikut untuk mendapatkan versi paling up-to-date.

2. Edit Konfigurasi

Sesuaikan konfigurasi agar bisa digunakan untuk scraping exporter. Caranya, buka file prometheus.yml:

Edit file konfigurasi tersebut dengan konfigurasi berikut:

Monitoring Server Linux dengan Prometheus dan Node Exporter 5

Baca Juga:  Cara Install Nikto Untuk Pengujian Kerentanan di VPS Ubuntu

Jika exporter berjalan di server lain, cukup ganti IP-nya:

3. Jalankan Prometheus secara manual:

Monitoring Server Linux dengan Prometheus dan Node Exporter 6

4. (Opsional) Buat service systemd:

Agar sistem monitoring ini dapat otomatis jalan saat reboot:

Monitoring Server Linux dengan Prometheus dan Node Exporter 7

Lalu jalankan:

Monitoring Server Linux dengan Prometheus dan Node Exporter 8

5. Akses Tampilan

Setelah sistem monitoring berjalan, kalian bisa membuka tampilan websitenya dengan cara buka browser ke http://<IP-Server-Kamu>:9090 lalu buka tab Status > Targets. Pastikan job_name: node_exporter muncul dan statusnya UP.

Monitoring Server Linux dengan Prometheus dan Node Exporter 9

Di sini kalian bisa:

  • melihat target monitoring (Status > Targets)
  • menjalankan query PromQL
  • melihat grafik metrik sederhana
  • mengecek status scraping

Beberapa contoh query PromQL:

  • CPU usage total

  • Memory available

  • Disk read/write

Kesimpulan

Dengan Node Exporter sebagai penyedia metrik sistem dan Prometheus sebagai pengumpul serta penyimpan data time-series, kalian bisa memahami perilaku server dengan lebih akurat. Mulai dari CPU, memori, disk, network, proses, hingga container, semuanya bisa dimonitor secara real-time maupun historis.

Setelah sistem terpasang, kalian dapat menambah Grafana untuk membuat dashboard visual yang informatif dan mudah dipahami. Monitoring semacam ini akan sangat membantu untuk troubleshooting, capacity planning, dan meningkatkan keandalan sistem secara keseluruhan.

Jika kalian membutuhkan performa server yang lebih stabil, resource yang fleksibel, dan lingkungan ideal untuk menjalankan stack monitoring seperti Prometheus, Node Exporter, dan Grafana, pertimbangkan menggunakan Cloud VPS DomaiNesia. Infrastruktur cepat dan scalable dari DomaiNesia akan membantu monitoring kalian berjalan optimal dan responsif, bahkan pada beban tinggi.

Ita Sugiharti

If this post has reached you, then I hope it helps. If you have any questions or feedback, just leave a comment.

Berlangganan Artikel

Dapatkan artikel, free ebook dan video
terbaru dari DomaiNesia

{{ errors.name }} {{ errors.email }}
Migrasi ke DomaiNesia

Migrasi Hosting ke DomaiNesia Gratis 1 Bulan

Ingin memiliki hosting dengan performa terbaik? Migrasikan hosting Anda ke DomaiNesia. Gratis jasa migrasi dan gratis 1 bulan masa aktif!

Ya, Migrasikan Hosting Saya