Skip to content

emka.web.id

writing knowledge, recording civilization

Menu
  • Home
  • Tutorial
  • Search
Menu

Tutorial Membuat Sistem Monitoring dengan Grafana & Prometheus di Debian 12

Posted on May 11, 2024

Grafana adalah platform visualisasi data sumber terbuka dan multi-platform yang dikembangkan oleh Grafana Labs. Grafana menyediakan aplikasi web visualisasi data interaktif yang mencakup grafik, diagram, dan peringatan. Dengan Grafana, Anda dapat melakukan kueri, visualisasi, mengatur peringatan, dan menjelajahi metrik, log, dan jejak dari TSDB. Ini adalah alat yang kuat yang mengubah data time-series database (TSDB) menjadi grafik dan visualisasi yang informatif.

Di Grafana, Anda dapat menambahkan data basis data time-series Anda melalui ‘Data Source’. Grafana mendukung beberapa sumber data seperti Prometheus, InfluxDB, PostgreSQL, Loki, Jaeger, Graphite, Google Cloud Monitoring, AWS CloudWatch, Azure Monitor, dan banyak lagi.

Dalam panduan ini, Anda akan menginstal Grafana pada server Debian 12 dengan Nginx sebagai reverse proxy, kemudian menambahkan Prometheus sebagai sumber data dan mengonfigurasi Dasbor Grafana untuk pemantauan sistem.

Persyaratan
Sebelum Anda melanjutkan, pastikan Anda memiliki hal berikut:

  1. Server Debian 12 untuk instalasi Grafana.
  2. Server Debian 12 dengan Prometheus dan Node Exporter Terinstal – Cara Menginstal Prometheus dan Node Exporter di Debian 12.
  3. Pengguna non-root dengan hak istimewa administrator sudo.

Menambahkan Repositori Grafana
Dalam panduan ini, Anda akan menginstal Grafana melalui repositori resmi Grafana. Untuk melakukannya, Anda harus menambahkan repositori Grafana ke server Debian Anda.

Untuk memulai, jalankan perintah berikut untuk menginstal dependensi dasar ke mesin Debian Anda.

sudo apt install gnupg2 apt-transport-https software-properties-common wget

Sekarang tambahkan kunci GPG Grafana dan repositori dengan menjalankan perintah berikut.

curl -fsSL https://packages.grafana.com/gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/grafana.gpg
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/grafana.gpg] https://packages.grafana.com/oss/deb stable main' | sudo tee /etc/apt/sources.list.d/grafana.list

Terakhir, perbarui dan segarkan indeks paket Debian Anda untuk menerapkan perubahan.

sudo apt update

Menginstal Grafana
Sekarang setelah Anda menambahkan repositori Grafana, Anda akan menginstal Grafana melalui APT. Kemudian, Anda akan mengonfigurasi pengguna administrator dan kata sandi untuk instalasi Grafana Anda.

Instal Grafana ke sistem Debian Anda menggunakan perintah berikut. Masukkan y untuk melanjutkan dengan instalasi.

sudo apt install grafana

Setelah instalasi selesai, muat ulang manajer systemd dengan mengeksekusi perintah berikut.

sudo systemctl daemon-reload

Kemudian, mulai dan aktifkan layanan grafana-server menggunakan perintah di bawah ini.

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

Saat layanan grafana-server berjalan, verifikasi menggunakan perintah di bawah ini. Jika semuanya berjalan lancar, Anda harus melihat grafana-server diaktifkan dan berjalan.

sudo systemctl status grafana-server

Terakhir, buka peramban web Anda dan kunjungi alamat IP server Anda dengan port Grafana default 3000, seperti http://192.168.5.20:3000/. Masukkan pengguna admin dan kata sandi admin default, lalu klik Masuk.

Sekarang ubah kata sandi admin default dengan kata sandi baru. Lalu klik Kirim untuk mengonfirmasi.

Ketika proses selesai, Anda seharusnya melihat dasbor Grafana seperti berikut:

Mengonfigurasi Grafana
Dengan Grafana terinstal, langkah selanjutnya adalah mengonfigurasi Grafana dengan memodifikasi konfigurasi default /etc/grafana/grafana.ini dan mengatur http_addr menjadi localhost, http_port menjadi 3000, dan domain dengan nama domain lokal grafana.hwdomain.io.

Buka konfigurasi Grafana default /etc/grafana/grafana.ini menggunakan perintah editor nano berikut.

sudo nano /etc/grafana/grafana.ini

Ubah konfigurasi default dengan baris berikut. Dalam contoh ini, Anda akan menjalankan Grafana di localhost dan dengan nama domain lokal grafana.hwdomain.io.

[server]
# The IP address to bind to, empty will bind to all interfaces
http_addr = localhost

# The http port  to use
http_port = 3000

# The public facing domain name used to access grafana from a browser
domain = grafana.hwdomain.io

Ketika Anda selesai, simpan dan keluar dari file.

Sekarang jalankan perintah systemctl berikut untuk me-restart grafana-server dan menerapkan perubahan. Dengan ini, instalasi Grafana Anda berjalan hanya pada localhost.

sudo systemctl restart grafana-server

Menginstal Nginx sebagai Reverse Proxy
Dalam panduan ini, Anda akan menjalankan Grafana dengan Nginx sebagai reverse proxy. Sekarang, lengkapi tugas berikut untuk menginstal dan mengonfigurasi Nginx sebagai reverse proxy untuk instalasi Grafana Anda.

Jalankan perintah berikut untuk menginstal server web Nginx ke mesin Debian Anda. Masukkan y untuk melanjutkan dengan instalasi.

sudo apt install nginx

Setelah Nginx terinstal, jalankan perintah editor nano berikut untuk membuat file blok server baru /etc/nginx/sites-available/grafana.conf.

sudo nano /etc/nginx/sites-available/grafana.conf

Sisipkan konfigurasi berikut dan pastikan untuk mengubah nama domain dalam parameter server_name.

# This is required to proxy Grafana Live WebSocket connections.
map $http_upgrade $connection_upgrade {
    default upgrade;
    '' close;
}

server {
    listen      80;
    server_name grafana.hwdomain.io;

    root /usr/share/nginx/html;
    index index.html index.htm;

    access_log /var/log/nginx/grafana-access.log;
    error_log /var/log/nginx/grafana-error.log;

    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://localhost:3000/;
    }

    # Proxy Grafana Live WebSocket connections.
    location /api/live {
        rewrite  ^/(.*)  /$1 break;
        proxy

_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
        proxy_set_header Host $http_host;
        proxy_pass http://localhost:3000/;
    }
}

Simpan dan tutup file ketika selesai.

Selanjutnya, jalankan perintah berikut untuk mengaktifkan file blok server /etc/nginx/sites-available/grafana.conf. Kemudian, verifikasi sintaks Nginx Anda untuk memastikan bahwa Anda memiliki sintaks yang benar.

sudo ln -s /etc/nginx/sites-available/grafana.conf /etc/nginx/sites-enabled/
sudo nginx -t

Jika Anda memiliki sintaks Nginx yang benar, Anda harus mendapatkan keluaran ‘test is successful – syntax is ok’.

Terakhir, jalankan perintah systemctl berikut untuk me-restart layanan Nginx dan menerapkan perubahan. Lalu, verifikasi Nginx untuk memastikan bahwa layanan tersebut berjalan.

sudo systemctl restart nginx
sudo systemctl status nginx

Pada output berikut, Anda harus melihat layanan Nginx sedang berjalan.

Untuk mengakses server Grafana Anda, Anda dapat memodifikasi file /etc/hosts pada mesin lokal Anda jika Anda pengguna Linux atau MacOS. Untuk pengguna Windows, edit file C:\Windows\System32\drivers\etc\hosts sebagai administrator.

Masukkan konfigurasi berikut ke dalam file.

192.168.5.15    grafana.hwdomain.io

Simpan dan tutup file ketika selesai.

Sekarang kembali ke peramban web Anda dan kunjungi nama domain lokal untuk server Grafana, seperti http://grafana.hwdomain.io/. Jika konfigurasi Anda berhasil, Anda akan diarahkan ke halaman login Grafana.

Masuk dengan pengguna admin dan kata sandi Anda, lalu klik Masuk untuk mengonfirmasi.

Setelah itu, Anda harus mendapatkan dasbor admin Grafana.

Menambahkan Autentikasi ke Server Prometheus
Sebelum menambahkan Prometheus ke Grafana, Anda akan menyiapkan autentikasi dasar untuk Prometheus. Anda akan membuat kata sandi autentikasi dasar dengan apache2-utils, lalu mengaktifkan basic_auth untuk server Prometheus.

Dalam contoh ini, Prometheus dan Node Exporter diinstal di server yang berbeda dengan alamat IP 192.168.5.15 dan nama host prometheus.

Masuk ke server Prometheus dan instal paket apache2-utils melalui perintah apt di bawah ini.

sudo apt install apache2-utils -y

Setelah itu, hasilkan kata sandi baru untuk autentikasi dasar Prometheus. Masukkan kata sandi Anda dan salin kata sandi yang dihasilkan ke catatan Anda.

htpasswd -nB promadmin

Sekarang, buat konfigurasi Prometheus baru /etc/prometheus/web.yml menggunakan perintah editor nano berikut.

sudo nano /etc/prometheus/web.yml

Tambahkan konfigurasi berikut untuk mengamankan dasbor administrasi Prometheus dengan modul basic_auth.

# basic_auth
basic_auth_users:
  promadmin: $2y$05$UlvHd4An.oQRt2UdUXzr9eZ6ShRLe3xYbMhw8ePfvGeLuu0khO4Bu

Simpan dan tutup file ketika selesai.

Selanjutnya, buka konfigurasi Prometheus default /etc/prometheus/prometheus.yml menggunakan perintah editor nano berikut.

sudo nano /etc/prometheus/prometheus.yml

Tambahkan konfigurasi basic_auth di bawah ini dalam pekerjaan Prometheus. Pastikan untuk mengubah detail pengguna dan kata sandi dengan data Anda.

scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
    # Add settings for certificate and authentication
    scheme: http
    basic_auth:
      username: 'promadmin'
      password: 'password'

Simpan dan tutup file ketika Anda selesai.

Berikutnya, jalankan perintah berikut untuk mengedit file layanan prometheus.

sudo systemctl edit --full prometheus

Ubah opsi ExecStart default dengan yang berikut.

ExecStart=/usr/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --web.config.file=/etc/prometheus/web.yml

Simpan dan tutup file ketika selesai.

Sekarang, jalankan perintah systemctl berikut untuk me-reload manajer systemd dan menerapkan perubahan. Lalu, restart layanan prometheus.

sudo systemctl daemon-reload
sudo systemctl restart prometheus

Verifikasi layanan prometheus menggunakan perintah berikut.

sudo systemctl status prometheus

Dalam bagian ExecStart, perintah telah berubah seperti berikut.

Terakhir, buka peramban web Anda dan kunjungi alamat IP Prometheus dengan port 9090 (misalnya: http://192.168.10.15:9090/). Anda akan diminta untuk masuk dengan basic_auth Prometheus, masukkan pengguna admin dan kata sandi Anda, lalu klik Masuk.

Jika konfigurasi Anda berhasil, Anda harus melihat dasbor Prometheus seperti berikut.

Mengintegrasikan Prometheus dengan Dasbor Grafana
Setelah mengonfigurasi autentikasi Dasar pada Prometheus, Anda dapat menambahkan Prometheus sebagai sumber data ke dasbor Grafana. Ada dua langkah yang harus Anda selesaikan: menambahkan Prometheus sebagai sumber data dan kemudian mengimpor atau membuat dasbor Grafana untuk pemantauan sistem.

Menambahkan Sumber Data Prometheus
Kembali ke Dasbor Grafana, klik menu Koneksi, dan pilih Sumber data.

Klik Tambahkan sumber data untuk melanjutkan.

Pilih basis data deret waktu Prometheus.

Masukkan nama sumber data baru dan tuan rumah Prometheus ke http://192.168.5.15:9090/. Dalam bagian Autentikasi, pilih Otentikasi Dasar dan masukkan nama pengguna dan kata sandi untuk Prometheus.

Gulir ke bawah dan klik Simpan & uji untuk mengonfirmasi. Output ‘Berhasil mengkueri API Prometheus.’ mengkonfirmasi bahwa Prometheus telah ditambahkan ke Grafana.

Mengimpor Pemantauan Dasbor
Klik menu + di kanan atas dan pilih Impor Dasbor.

Temukan Dasbor yang Anda inginkan di https://grafana.com/grafana/dashboards/. Kemudian, salin dan tempel ID dasbor, lalu klik Muat untuk mengon

firmasi. Dalam hal ini, kami akan menggunakan ID Dasbor 15172.

Masukkan nama dasbor dan pilih sumber data Prometheus. Lalu klik Impor untuk mengonfirmasi.

Berikut adalah contoh Dasbor Grafana yang ditingkatkan dengan Prometheus untuk memantau sistem.

Anda sekarang berhasil menginstal Grafana pada server Debian 12 dengan Nginx sebagai reverse proxy, menambahkan Prometheus sebagai sumber data ke Grafana, dan mengimpor dasbor Grafana untuk pemantauan sistem.

Terbaru

  • Fixing Windows Error 0x80070005 Hyper-V Export Access Denied Error the Right Way
  • Fixing Hyper V Export Errors and Building a Better Virtual Machine Setup (error 0x80070002, 0x80070005)
  • Fixing the Dreaded Windows Audio Service Stuck on Stopping Error
  • Windows SIM Error, Unknown error 0xc1420127
  • How I’m Building a Cat Breeding Management App with Python Qt6 + Microsoft Litebox, in 1 Week
  • Why Windows Keeps Nuking Your GPU Drivers (And How to Take Back Control)
  • Copy Prompt: A Modern Men’s Casual Fashion Studio Shoot
  • Why I Finally Ditched Mainstream Windows Cleaners (And Why I Use ‘Kudu’ Instead)
  • AI Made Everything Faster, Including Bad Decisions
  • Raspberry Pi Desktop Available of PC and Mac, Based on Debian 13
  • Why I Stopped Yelling at My PC When Error; Getting Windows 11 Voice Isolation and Access to Actually Work
  • Berobat Kanker ke Malaysia: Berapa Biayanya dan Apa Saja yang Perlu Disiapkan?
  • Stop Sending Every Prompt to the Biggest AI Model You Can Find
  • Stop Building AI Agents from Scratch: My Pick for the Best Native Windows Setup
  • Jev Is Faster and Cheaper, But I Still Recommend Clef. Here’s Why.
  • Weird XCP-NG Bug or Feature? Enable Maintenance Mode = Host Not Enough Memory
  • Vinix OS: Another OS That Want to Beat Linux, Try it!
  • Trying NVX, An Ultra-Light Micro-VM Sandbox from Microsoft
  • Learning NocoDB from Scratch: Creating a Simple Greenhouse App
  • How RHEL 10.2 Quietly Turned Into an Absolute Security Beast
  • Grab Videos from Anywhere with ReClip (Can Running Locally)
  • Jumped onto Ubuntu 26.04 LTS? Here’s How to Add a New User Account
  • Tutorial Cara Install WPS Office di Linux (Alternatif Microsoft Office)
  • Tutorial Upgrade Server Ubuntu 24.04 LTS ke Ubuntu 26.04 LTS dengan Aman
  • Inilah Alasan kenapa akun TikTok dibatasi tidak bisa klaim koin dan masalah pembatasan lainnya?
  • Apa penyebab gagal kirim SMS ke 89888 padahal pulsa masih ada?
  • Mengenal Donghua: Kenapa Animasi dari Tiongkok Ini Lagi Naik Daun Banget
  • OpenAI Bocorin Data Gambar Pengguna? Ini Kabar Terbaru Soal Insiden AI yang Bikin Heboh
  • Kenapa Postingan Instagram Kalian Sepi Like Padahal Followers Udah Banyak? Ini Rahasianya
  • Cara Menambah View Story Instagram Gratis Biar Nggak Sia-sia
  • Canonical: Ubuntu coming soon to Snapdragon X2 Series platforms
  • Finally, wolfSSL adds post-quantum algorithms!
  • How to Run Gemma Embedding Models Using Docker
  • Deploy Nginx Rootful Container with Podman
  • How to Sandboxing Browser on Linux Desktop with Flatpak
  • Trying Nemotron 3.5 Super VL: NVIDIA’s Open Multimodal Model Built for Agents That Actually See and Act
  • Pruna AI Release their Qwen-Image 2.1 LoRA Adapter, 6x Faster than Regular Qwen
  • The Rise and Fall of the Coding Holy Grail: Is Stack Overflow Just AI Fuel Now?
  • Zyphra is The Pioneer, Why Everyone is Suddenly Obsessed with AMD and Not Just Nvidia Anymore
  • Stop Trusting Your Prompts to Save Your Business Data
  • Lagi rame bahas film horor Pirunduk, ternyata ini arti aslinya dalam bahasa Banjar
  • Kabar duka, pengacara senior Kamaruddin Simanjuntak meninggal dunia, sempat berjuang lawan penyakit ginjal
  • Kabar duka dari keluarga Marsha Aruan, Bunda Lisa meninggal dunia setelah sebelumnya sempat dirawat di rumah sakit
  • Lagi rame cari Mod Drag Bike 201m Sunmori, mending pakai yang resmi atau nekat download APK modifikasi?
  • Lagi ramai bahas tugas sekolah soal lingkungan, ternyata tiap profesi punya peran penting buat jaga kota tetap sehat

©2026 emka.web.id | Design: Newspaperly WordPress Theme