Cara Monitoring Server Menggunakan Grafana dan Promotheus

Hai, Sobat! Monitoring server dan jaringan sangat penting dilakukan untuk memastikan sistem berjalan pada performa terbaik tanpa ada aktivitas mencurigakan. Tanpa monitoring, kamu ibarat mengemudi tanpa dashboard, tidak tahu kecepatan yang ditempuh, sisa bahan bakar, atau bahaya di depan.

Monitoring dapat dilakukan secara real-time menggunakan aplikasi open source seperti Grafana dan Promotheus. Dengan dua tools ini kamu tidak perlu memantau server terus-menerus di depan layar komputer karena hasil pemantauan kinerja server dan jaringan dilakukan secara otomatis.

Artikel kali ini akan membahas cara monitoring server menggunakan Grafana dan Promotheus, mulai dari cara menginstal tools sampai mengkonfigurasi dashoboard pemantauannya.

Sebelum memulai simak informasi tentang pengertian dan konsep kedua tools tersebut, yuk!

Grafana

Grafana menampilkan data kinerja server dalam bentuk dashboard visual yang ramah dilihat. Tool ini sering digunakan pada SysAdmin dan profesional DevOps untuk mengetahui secara detail kinerja aplikasi, sistem, dan infrastruktur yang digunakan.

Fitur-fitur yang ditawarkan grafana antara lain:

  • Visualisasi data -> menampilkan data dalam bentuk grafik garis, batang, dan grafik lainnya yang bisa disesuaikan dengan kebutuhan admin server
  • Dashboard menarik -> karena dapat membuat dashboard dinamis dengan berbagai widget dan filter sesuai kebutuhan
  • Multi-source -> mendukung berbagai sumber data termasuk Promotheus, InfluxDB, Graphite, Elasticsearch, MySQL, PostgreSQL, dll
  • Alert -> tersedia notifikasi peringatan bahaya berdasarkan metrik yang dipantau dan bisa dikirimi melalui tools seperti email, telegram
  • Query editor -> query editor yang fleksibel untuk mengelolah data dari berbagai server yang tersedia
  • Plugin -> untuk menambah fungsionalitas kamu bisa menggunakan plugin untuk keperluan data source, panel visualisasi, maupun aplikasi

Dengan kemampuan dan fitur-fitur tersebut, memungkinkan tim dengan cepat mengidentifikasi dan menyelesaikan masalah dengan informasi visuali yang menarik dan mudah dipahami.

Tool monitoring promotheus bekerja untuk mengumpulkan, menyimpan, dan mengelola data dari berbagai server yang ada dan menampilkannya ke dalam metrik melalui Node Exporter. Data hasil scraping dari node exporter akan dikumpulkan pada database promotheus.

Promotheus juga memantau kinerja sistem, aplikasi, layanan dan infrastruktur secara real-time. Data monitoring yang disimpan di promotheus menggunakan model data time series (dalam urutan waktu) sehingga kamu bisa melihat kinerja sistem di masa lalu.

Terdapat fitur alert yang akan mengirim pemberitahuan berdasarkan aturan yang sudah ditentukan pengguna jadi kamu bisa segera menindak lanjut bila ada aktivitas yang tidak biasa.

Node exporter adalah salah satu komponen Promotheus yang digunakan untuk mengumpulkan data dan melaporkan data dari server linux ke promotheus. Fitur-fitur utama node exporter yaitu:

  • Mengumpulkan data atau metrik CPU, memori, disk, jaringan, dan sistem file.
  • Mengekspos metrik tersebut melalui HTTP endpoint yang diambil oleh promotheus.

Instalasi dan Konfigurasi

Untuk memonitoring server secara real-time, pertama-tama kamu harus menginstal tools yang ingin digunakan. Berikut cara instal tools Grafana dan Promotheus di server VPS Almalinux.

Buat koneksi SSH ke VPS kamu melalui terminal. Jika menggunakan sistem operasi Windows, kamu bisa menggunakan PuTTY. Detail informasi awal layanan kamu, bisa diakses seperti pada Informasi Awal Layanan VM.

1-informasi-detail-alamalinux

Instal Node Exporter

Unduh package binary atau node exporter menggunakan perintah berikut:

				
					sudo dnf update -y
sudo dnf install wget curl sudo tar nano
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz

				
			

Lalu, ekstrak paket node exporter dan pindahkan ke direktori /usr/local/bin

				
					tar xvf node_exporter-*.tar.gz
cd node_exporter-1.7.0.linux-amd64
sudo cp node_exporter /usr/local/bin

				
			

Apabila sudah dipindahkan ke /usr/bin maka perlu membuat user node exporter dan melakukan set binary mode ke user node exporter.

				
					sudo useradd --no-create-home --shell /bin/false node_exporter
sudo chown node_exporter:node_exporter /usr/local/bin/node_exporter

				
			

Setelah itu, buat file sevice systemd node exporter.

				
					sudo nano /etc/systemd/system/node_exporter.service
				
			

Dan isi konfigurasi file node_exporter.service dengan script kode berikut.

				
					[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/usr/local/bin/node_exporter
Restart=always
RestartSec=3
[Install]

WantedBy=multi-user.target

				
			

Ctrl+X, Y lalu Enter untuk menyimpan lalu jalankan node exporter.

				
					sudo systemctl daemon-reload
sudo systemctl enable node_exporter
sudo systemctl start node_exporter

				
			
3-menjalankan-node-exporter

Untuk memastikan node exporter telah berjalan, akses halaman website melalui http://ip-address:9100/metrics

4-buka-node-exporter

Instalasi Prometheus

Prometheus digunakan untuk menyimpan dan mengeola data metrik.

Buat user dan group untuk mencegah adanya unauthorized access. Sebagai contoh di sini akan membuat user bernama prometheus.

				
					sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus

				
			

Selanjutnya, buat direktori untuk menyimpan file konfigurasi prometheus pada /etc dan /var/lib

				
					sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
sudo mkdir /etc/prometheus/consoles
sudo mkdir /etc/prometheus/console_libraries

				
			

Setelah membuat folder prometheus, selanjutnya mendownload package prometheus menggunakan perintah wget.

				
					cd /tmp
wget https://github.com/prometheus/prometheus/releases/download/v2.43.0/prometheus-2.43.0.linux-amd64.tar.gz

				
			

Jika download selesai, langkah berikutnya adalah melakukan ekstrak package dan memindahkan ke direktori /usr/local/ dan mengatur ownership.

				
					tar xvf prometheus-*.tar.gz
cd prometheus-2.43.0.linux-amd64

sudo cp prometheus /usr/local/bin/
sudo cp promtool /usr/local/bin/

sudo chmod +x /usr/local/bin/prometheus
sudo chmod +x /usr/local/bin/promtool
sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool

				
			

Berikutnya memindahkan konfigurasi file prometheus dan menyesuaikan permission folder dan filenya.

				
					sudo cp -r consoles /etc/prometheus
sudo cp -r console_libraries /etc/prometheus
sudo cp prometheus.yml /etc/prometheus
sudo chown -R prometheus:prometheus /etc/prometheus
sudo chown -R prometheus:prometheus /var/lib/prometheus

				
			

File konfigurasi prometheus terdapat pada /etc/prometheus/prometheus.yml lalu sesuaikan file tersebut supaya dapat terhubung dengan node exporter dan grafana.

				
					sudo nano /etc/prometheus/prometheus.yml
				
			

Tambah job node exporter pada akhir baris untuk node exporter.

				
					  - job_name: "nodeexporter"
    static_configs:
      - targets: ["localhost:9100"]

				
			
5-tambah-job-exporter

Buat service prometheus menggunakan perintah:

				
					sudo nano /etc/systemd/system/prometheus.service
				
			

Lalu isi dengan konfigurasi prometheus.

				
					[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
Group=prometheus
Type=simple
ExecStart=/usr/local/bin/prometheus \
  --config.file=/etc/prometheus/prometheus.yml \
  --storage.tsdb.path=/var/lib/prometheus \
  --web.console.templates=/etc/prometheus/consoles \
  --web.console.libraries=/etc/prometheus/console_libraries

[Install]
WantedBy=multi-user.target

				
			
6-konfigurasi-prometheus

Apabila sudah membuat file systemd prometheus, selanjutnya jalankan prometheuss.

				
					sudo systemctl daemon-reload
sudo systemctl enable prometheus
sudo systemctl start prometheus

				
			
7-jalankan-prometheus

Lalu, periksa apakah prometheus berjalan dengan baik menggunakan perintah:

				
					sudo systemctl status prometheus
				
			
cek-status-prometheus

Sampai di sini instalasi prometheus selesai dan coba akses halaman prometheus melalui http://ip-address:9090/graph

8-buka-web-prometheus

Instalasi Grafana

Data yang dikumpulkan dan dianalisa pada prometheus akan ditampilkan menjadi dashboad visual menggunakan grafana.

Langkah pertama yang perlu dilakukan adalah menambahkan repository resmi grafana.

				
					sudo nano /etc/yum.repos.d/grafana.repo
				
			

Kemudian isi file repository grafana dengan script kode berikut:

				
					[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key

				
			

Selanjutnya instal grafana menggunakan perintah berikut:

				
					sudo dnf install grafana -y
				
			
10-complete-instal-grafana

Jalankan grafana menggunakan perintah:

				
					sudo systemctl start grafana-server
sudo systemctl enable grafana-server

				
			
11-jalankan-grafana

Instalasi grafana sudah selesai dan kamu bisa memeriksa melalui URL http://ip-address:3000/

12-buka-grafana-di-browser

Untuk login, gunakan credential default dari grafana yaitu username: admin dan password: admin. Tapi, mungkin kamu akan mendapatkan pesan “Continuing to use the default password exposes yout to security risks” yang artinya diminta untuk mengganti password defaultnya. Klik Skip apabila ingin tetap menggunakan password default dari grafana.

13-peringatan-ganti-password-grafana

Berikut merupakan tampilan dashboard grafana setelah berhasil login.

14-dashboard-grafana

Menambahkan Server ke Sistem Monitoring

Setelah menginstal tools yang diperlukan, berikutnya adalah menambahkan VPS yang sudah terinstal node exporter ke dashboard grafana.

Untuk menambahkan node exporter, masuk ke menu Data sources pada grafana.

15-menu-data-sources-grafana

Kemudian tambahkan data source dari prometheus yang telah diinstal sebelumnya.

16-pilih-prometheus

Isi konfigurasi prometheus dengan http://localhost:9090 apabila server grafana dan prometheus dalam 1 node server yang sama.

17-url-konfigurasi-prometheus

Jika sudah klik Save dan Exit.

18-save-and-test

Apabila berhasil terhubung akan muncul notifikasi sukses berwarna hijau.

19-notifikasi-sukses

Nah, sekarang kamu bisa membuat dashboard secara mandiri menggunakan analisis query prometheus atau dapat mengimport dashboard tampilan yang sudah disediakan oleh grafana.

Kembali masuk ke menu Data sources dan sekarang kamu akan melihat data source dari promotheus yang sudah ditambahkan tadi > klik Build a dashboard.

20-klik-build-a-dashboard

Pada opsi Import a Dashboard klik Import Dashboard.

21-import-dashboard

Di pop-up konfirmasi menambahkan dashboard baru ini klik Save dashboard.

22-save-dashboard

Dan lengkapi form detail dashboard yang akan dibuat , misalnya seperti berikut lalu klik Save.

23-tambah-dashboard

Klik Import dashboard seperti di sebelumnya tadi.

21-import-dashboard

Artikel ini akan mendemokan menggunakan import dashboard yang sudah tersedia yaitu node-exporter full dengan kode 1860. Jadi, masukkan seperti gambar di bawah ini lalu klik Load.

24-tulis-id-lalu-load

Setelah klik Load, akan muncul konfirmasi instalasi dashboard. Di halaman ini pilih data source: promotheus, hasilnya terlihat seperti gambar di bawah ini lalu klik Import.

25-import-dashboard

Tunggu sebentar sampai dashboard monitoring server tampil dengan sempurna. Sekarang kamu bisa memeriksa seluruh resource server dengan mudah, Sob.

26-dashboard-monitoring-server

Demikian cara menginstal grafana, prometheus, dan node exporter untuk melakukan monitoring server. Kamu bisa menyesuaikan tampilan monitoring sesuai kebutuhan. Selamat mencoba, Sob.

Kalau ada yang masih bikin bingung, jangan ragu hubungi Tim Support Jagoan Hosting melalui Live Chat atau Open Ticket, Sob!

Related Posts
Panduan Lengkap Grafana

Grafana merupakan aplikasi web multi-platform sumber terbuka untuk analitik dan visualisasi interaktif. Aplikasi ini dapat menghasilkan grafik, bagan, dan peringatan Read more

Cara Membuat Dashboard dan Panel Grafana

Halo, Sob! Di artikel ini, kita akan belajar cara membuat dashboard dan panel di Grafana. Langkah-langkahnya simpel dan mudah diikuti. Read more

Tutorial Mendapatkan Informasi Login ke Grafana

Halo, Sob! Di artikel ini, kita akan membahas cara mendapatkan informasi login ke Grafana. Yuk, simak bersama-sama! Step 1 : Read more

Cara Reset Password Admin Grafana

Halo Sob! Lagi bingung karena lupa password admin Grafana? Tenang, kamu tidak sendirian. Di artikel ini, kita akan membahas langkah-langkah Read more