Zabbix Setup Mudah Dan Cepat : 5 Langkah Deploy Zabbix Docker Universal ampuh untuk Monitoring Lintas Distribusi Linux

5 Langkah Deploy Zabbix Docker Universal untuk Monitoring Lintas Distribusi Linux

Kamu sysadmin yang harus jagain server campur aduk, ada yang Ubuntu, ada yang CentOS, ada juga yang Arch? Tenang, Zabbix Docker dirancang buat menghadapi skenario kayak gini. Satu server monitoring pusat, bisa narik data dari puluhan distribusi Linux berbeda sekaligus.

Artikel ini bakal ngajak kamu deploy Zabbix Docker dengan arsitektur yang benar-benar applicable di lapangan kerja beneran. Dua mesin fisik, jaringan lokal, dan target monitoring yang fleksibel mau OS apapun. Yuk langsung kita bedah dari fondasi arsitekturnya.

Keunggulan utama Zabbix Docker dibanding instalasi manual adalah portabilitas dan kemudahan maintenance jangka panjang. Kamu tinggal simpan file docker-compose.yml, dan seluruh stack bisa direplikasi ke server lain dalam hitungan menit.

1. Arsitektur Mesin Fisik untuk Pemantauan Global

Sebelum masuk konfigurasi teknis, kamu wajib paham dulu topologi lapangan yang kita pakai di sini. Semua ini murni bare-metal, bukan simulasi virtualisasi di satu laptop doang.

Mesin 1: Host Zabbix Server

Mesin pertama adalah komputer atau laptop fisik utama yang berperan sebagai otak dari seluruh sistem. Mesin ini bisa menjalankan Windows Host dengan Docker Desktop, atau alternatifnya Linux Host seperti Arch Linux atau Artix dengan Docker engine native.

Mesin ini bertugas menjalankan Docker lewat docker-compose, dengan web interface yang bisa diakses lewat port 8080. IP mesin ini kita set statis di 192.168.33.254 supaya konfigurasi agent di sisi lain nggak putus koneksi kalau IP berubah-ubah.

Mesin 2: Server Target dengan Distribusi Linux Bebas

Mesin kedua adalah server fisik terpisah yang murni berperan sebagai target pemantauan. Yang menarik, mesin ini bisa menjalankan distribusi Linux apa saja, entah itu Ubuntu, Debian, Arch, CentOS, sampai RHEL.

Fleksibilitas ini adalah kekuatan utama Docker. Selama target OS-nya masih Linux dan bisa install Zabbix Agent2, sistem monitoring kamu akan tetap berjalan konsisten tanpa peduli distro apa yang dipakai.

IP mesin target ini kita set ke 192.168.33.253. Kedua mesin terhubung secara fisik lewat kabel LAN ke switch yang sama, murni jaringan lokal tanpa router tambahan di tengahnya.

2. Setup dan Troubleshooting Jaringan Fisik / Firewall Global

Fase ini paling sering bikin pemula stuck. Container udah jalan mulus, tapi Zabbix Server tetap nggak bisa narik metrik dari agent di server target.

Kendala Firewall Berbeda-beda Tergantung OS

Penyebab kegagalan koneksi biasanya beda-beda tergantung kombinasi OS yang kamu pakai di kedua mesin. Berikut rincian kendala umum yang sering ditemui di lapangan:

  • Kalau Mesin 1 pakai Windows Host, biasanya Windows Firewall memblokir koneksi masuk ke port yang di-bind Docker Desktop
  • Kalau Mesin 1 pakai Linux Host seperti Arch atau Artix, cek rule iptables atau nftables yang mungkin drop paket dari subnet lokal
  • Kalau server target pakai Ubuntu atau Debian, UFW sering aktif default dan memblokir port 10050
  • Kalau server target pakai CentOS atau RHEL, Firewalld biasanya jadi biang keladinya, bukan iptables langsung

Untuk server target berbasis Debian/Ubuntu, buka port dengan perintah berikut.

sudo ufw allow from 192.168.33.254 to any port 10050 proto tcp
sudo ufw reload

Kalau server target kamu pakai CentOS atau RHEL dengan Firewalld aktif, gunakan perintah berikut sebagai gantinya.

sudo firewall-cmd --permanent --add-port=10050/tcp
sudo firewall-cmd --reload

Verifikasi IP dan Subnet Kedua Mesin

Sebelum menyalahkan firewall, pastikan dulu kedua mesin fisik ini benar-benar satu subnet. Cek IP Mesin 1 dengan ipconfig di Windows atau ip addr show di Linux Host.

Pastikan hasilnya menunjukkan 192.168.33.254/24. Lakukan hal serupa di server target, pastikan hasilnya 192.168.33.253/24.

Kalau subnet mask keduanya /24, secara teori kedua mesin bisa saling ngobrol tanpa routing tambahan. Kalau masih gagal setelah verifikasi ini, hampir pasti masalahnya murni di lapisan firewall.

Pembuktian Konektivitas dengan Ping Paket Besar

Untuk memastikan kualitas kabel LAN dan redaman sinyal bagus, kita test pakai paket berukuran besar, bukan ping default yang kecil.

ping -s 4000 192.168.33.253

Kalau koneksi fisik kamu sehat, hasilnya konsisten tanpa timeout, mirip log berikut.

4008 bytes from 192.168.33.253: icmp_seq=156 ttl=64 time=0.592 ms
4008 bytes from 192.168.33.253: icmp_seq=157 ttl=64 time=0.487 ms
4008 bytes from 192.168.33.253: icmp_seq=158 ttl=64 time=0.601 ms

Latency di bawah 1ms itu wajar buat koneksi kabel LAN langsung. Kalau kamu lihat icmp_seq yang hilang atau time yang melompat-lompat tinggi, curigai kualitas kabel atau port switch kamu.

Zabbix-server

Deskripsi: “Output terminal ping dengan paket besar antar dua mesin fisik menunjukkan latency stabil di bawah satu milidetik tanpa packet loss.”

3. Deployment Zabbix Docker Compose dan Konfigurasi Agent2

Sekarang kita masuk ke bagian teknis inti: menyusun file docker-compose.yml standar industri dan konfigurasi agent di sisi target.

Struktur Docker Compose Standar Industri

Buat folder kerja khusus di mesin 1, lalu susun file compose yang memuat tiga komponen utama: database, Zabbix server core, dan web interface.

mkdir -p ~/zabbix-docker/db-data

cd ~/zabbix-docker

nano docker-compose.yml
Konfigurasi ini bisa pakai PostgreSQL maupun MySQL, tapi kita contohkan dengan PostgreSQL karena lebih ringan untuk skala menengah.

Dan kalian bisa Download Filenya Disini kemudian di configurasi sendiri dan Jalankan seluruh stack Docker ini dengan perintah berikut.

docker compose up -d

Cek status seluruh container dengan docker ps, pastikan ketiganya berstatus “Up” sebelum lanjut ke instalasi agent.Zabbix-Server

Instalasi Zabbix Agent2 Lintas Distribusi

Bagian serunya, instalasi Agent2 ini bisa disesuaikan dengan package manager dari distribusi Linux yang dipakai server target kamu. Berikut variasinya.

Untuk distro berbasis Debian/Ubuntu, gunakan apt:

wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb
sudo dpkg -i zabbix-release_6.4-1+ubuntu22.04_all.deb
sudo apt update
sudo apt install zabbix-agent2

Untuk distro berbasis Arch Linux, gunakan pacman:

sudo pacman -Sy zabbix-agent2

Untuk distro berbasis RHEL/CentOS, gunakan dnf:

sudo rpm -Uvh https://repo.zabbix.com/zabbix/6.4/rhel/9/x86_64/zabbix-release-6.4-1.el9.noarch.rpm
sudo dnf clean all
sudo dnf install zabbix-agent2

Setelah terinstall, langkah konfigurasinya seragam di semua distro. Edit file /etc/zabbix/zabbix_agent2.conf dan ubah tiga parameter krusial berikut.

sudo nano /etc/zabbix/zabbix_agent2.conf
  • Server=192.168.33.254
  • ServerActive=192.168.33.254
  • Hostname=nama-server-target

 

Simpan file, lalu restart service Agent2 sesuai init system yang dipakai distro tersebut.

sudo systemctl restart zabbix-agent2

sudo systemctl enable zabbix-agent2

Zabbix-Server

4. Solusi “No Matches Found” Saat Menambahkan Host

Ini bug pemahaman yang paling sering bikin pemula frustrasi ketika baru pertama kali pakai Docker. Kita akses lewat browser dengan alamat http://192.168.33.254:8080.

Setelah login, masuk ke menu Data collection > Hosts, klik Create host. Semua lancar sampai bagian Templates, terus muncul pesan “No matches found”.

 

 

 

Kenapa Error Ini Muncul?

Banyak pemula ngetik langsung di kolom pencarian Templates, berharap “Linux by Zabbix agent” muncul otomatis. Penyebabnya adalah kolom Template Group yang belum di-set dengan benar, jadi pencarian terbatas pada grup yang salah.

Langkah Solusi Step-by-Step

Ikuti urutan ini persis supaya template kamu ketemu, apapun distribusi Linux target kamu:

  1. Klik tombol Select di samping kolom Templates, jangan ketik manual di kolom pencarian
  2. Di popup yang muncul, ubah dropdown Host Group menjadi Templates/Operating systems
  3. Centang manual template “Linux by Zabbix agent”
  4. Klik tombol Select untuk mengonfirmasi pilihan
  5. Isi bagian Interfaces, pilih Agent, masukkan IP fisik server target 192.168.33.253
  6. Klik tombol Add di pojok bawah untuk menyimpan host

 

Zabbix Server Zabbix_Server Zabbix Zabbix_serv Zabbix-serv Zabbix-ser Zabbix-ser Zabbix-bro Zabbix-mw zabbix-gg zabbix-anjay

Setelah langkah ini, cek menu Monitoring > Latest data. Kalau data mulai muncul dari host target, berarti Zabbix Docker kamu sudah berhasil menarik metrik dari agent, nggak peduli distro apa yang dipakai server tersebut.

5. Analisis Metrik Grafik Utama Sistem Operasi (Baseline Performance)

20260717 153228

Setelah host aktif dan data mulai mengalir, kamu perlu paham cara membaca grafik baseline yang muncul di menu Latest Data. Ini fondasi penting sebelum kamu bisa mendeteksi anomali di kemudian hari.

Membaca Grafik “Linux: System load”

Grafik ini menampilkan tiga metrik utama: Load Average 1m avg, 5m avg, dan 15m avg. Ketiganya menggambarkan rata-rata antrean instruksi yang menunggu diproses CPU dalam rentang waktu berbeda.

  • 1m avg paling reaktif, langsung naik begitu ada lonjakan beban mendadak
  • 5m avg memberi gambaran tren jangka menengah, membantu kamu bedakan spike sesaat dengan beban berkelanjutan
  • 15m avg paling stabil, cocok untuk melihat tren beban jangka panjang server

Kalau ketiga garis ini konsisten rendah dan berdekatan, itu tandanya server dalam kondisi sehat. Tapi kalau 1m avg jauh lebih tinggi dari 15m avg, artinya baru saja terjadi lonjakan beban mendadak.

Membaca Grafik “Linux: CPU usage”

Grafik ini membedah persentase beban CPU ke dalam beberapa kategori waktu. Memahami perbedaannya penting banget buat diagnosis akar masalah.

  • CPU user time menunjukkan beban dari proses aplikasi biasa yang berjalan di userspace, misalnya web server atau database
  • CPU system time menunjukkan beban dari operasi kernel, seperti manajemen memory atau syscall
  • CPU softirq time menunjukkan beban dari interupsi software, sering naik tajam saat sistem memproses banyak paket jaringan masuk sekaligus, termasuk trafik dari proses monitoring itu sendiri

Kalau kamu lihat softirq time yang tinggi terus-menerus padahal nggak ada aktivitas jaringan besar, itu bisa jadi indikasi awal ada sesuatu yang perlu diselidiki lebih lanjut.

Membaca Grafik “Linux: Memory usage” dan “Linux: Swap usage”

Dua grafik ini krusial untuk memastikan stabilitas layanan monitoring di level kernel Linux jangka panjang. Memory usage menunjukkan konsumsi RAM aktual, sedangkan Swap usage menunjukkan seberapa sering kernel terpaksa menggunakan disk sebagai memory tambahan.

Idealnya, swap usage tetap di angka nol atau sangat rendah. Kalau swap mulai naik terus-menerus, itu tanda RAM fisik server target sudah nggak mencukupi lagi untuk beban kerja yang berjalan.

Dengan memantau kombinasi keempat grafik ini secara rutin, kamu sebagai sysadmin bisa punya baseline yang jelas. Baseline inilah yang nantinya jadi patokan buat mendeteksi anomali, entah itu dari serangan jaringan atau sekadar beban aplikasi yang membengkak.

Menambahkan Lebih Banyak Server Target

Setelah satu host berhasil dimonitor, proses menambahkan server target berikutnya jadi jauh lebih cepat karena kamu tinggal mengulang langkah instalasi Agent2 dan pendaftaran host. Ini keuntungan besar dari arsitektur Zabbix yang tersentralisasi di satu Mesin 1.

Beberapa tips praktis kalau kamu mau scaling ke banyak server fisik sekaligus:

  • Kelompokkan host berdasarkan fungsi, misalnya “Web Servers”, “Database Servers”, atau “Application Servers” lewat menu Host Groups
  • Gunakan template yang sesuai OS masing-masing target, jangan paksa satu template generik untuk semua distribusi Linux
  • Aktifkan auto-discovery rule kalau jumlah host sudah mulai banyak, supaya kamu nggak perlu daftar manual satu-satu

Dengan pendekatan terstruktur seperti ini, Zabbix Docker kamu bisa berkembang dari monitoring dua mesin jadi monitoring puluhan server tanpa harus mengubah arsitektur dasarnya.

Kesimpulan: Zabbix Docker Siap Pantau Server Apapun Distronya

Kita sudah membahas tuntas cara deploy Zabbix Docker dengan arsitektur yang benar-benar applicable buat lingkungan kerja nyata. Mulai dari setup dua mesin fisik lewat jaringan lokal, troubleshooting firewall lintas OS baik Windows Host maupun Linux Host, sampai instalasi Zabbix Agent2 yang fleksibel di berbagai distribusi Linux.

Solusi step-by-step untuk error “No matches found” juga memastikan kamu nggak stuck di fase paling krusial saat mendaftarkan host baru. Ditambah lagi pemahaman mendalam soal cara membaca grafik baseline seperti System load, CPU usage, Memory usage, dan Swap usage yang jadi fondasi sebelum kamu bisa mendeteksi anomali lebih lanjut.

Buat kamu yang berkarier sebagai Network Engineer atau sysadmin, kemampuan deploy Zabbix Docker yang universal lintas distro seperti ini adalah nilai jual besar di dunia kerja. Kamu nggak akan terjebak cuma bisa monitoring satu jenis OS doang.

Ke depannya, kamu bisa eksplorasi lebih jauh soal auto-discovery rule untuk otomatis mendeteksi server fisik baru di jaringan, atau scaling Zabbix Docker kamu untuk menangani ratusan host sekaligus. Fondasi yang sudah kamu kuasai di artikel ini akan selalu jadi modal berharga untuk proyek monitoring skala lebih besar.

Intinya, Zabbix Docker bukan cuma soal instalasi cepat lewat docker-compose. Ini soal membangun fondasi observability yang solid, applicable di dunia kerja nyata, dan siap menghadapi kompleksitas infrastruktur lintas distribusi Linux sekalipun.

Dan Jika Kamu tertarik mikrotik kamu bisa klikĀ DI SINI

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top