Zabbix: Nedir, Nasıl Çalışır ve Etkili Bir Şekilde Nasıl Kullanılır
Zabbix, bugün mevcut olan en güçlü açık kaynak izleme platformlarından biridir. İster bir avuç sunucuyu yönetiyor olun ister karmaşık bir kurumsal altyapıyı denetliyor olun, Zabbix sistemlerin sorunsuz çalışmasını sağlamak için ihtiyaç duyduğunuz görünürlük, uyarı ve analitikleri sunar. Bu kapsamlı kılavuzda, temel kavramlar ve mimariden kurulum, yapılandırma ve en iyi uygulamalara kadar her şeyi ele alacağız.
Zabbix Nedir?
Zabbix, sunucuların, ağların, uygulamaların, veritabanlarının, bulut hizmetlerinin ve sanal makinelerin performansını ve kullanılabilirliğini izlemek için tasarlanmış ücretsiz, açık kaynak bir izleme çözümüdür. İzlenen cihazlardan ölçümleri toplar, bu verileri gerçek zamanda analiz eder ve sezgisel panolar, grafikler ve raporlar aracılığıyla sunar.
Alexei Vladishev tarafından geliştirilen ve ilk olarak 2001’de yayınlanan Zabbix, başlangıçlardan Fortune 500 şirketlerine kadar binlerce kuruluş tarafından güvenilen kurumsal düzeyde bir platforma dönüşmüştür.
Temel Yetenekler Bir Bakışta
- Gerçek Zamanlı İzleme: Sunucuları, veritabanlarını, ağ cihazlarını, kapsayıcıları ve bulut altyapısını sürekli olarak izler
- Akıllı Uyarı: Eşikler aşıldığında e-posta, SMS, Slack, PagerDuty veya özel webhook’lar aracılığıyla bildirimler gönderir
- Veri Görselleştirmesi: Özelleştirilebilir panolar, trend grafikleri ve ağ haritaları anında durum farkındalığı sağlar
- Otomasyon: İnsan müdahalesi olmadan başarısız bir hizmeti yeniden başlatmak gibi otomatik düzeltme eylemlerini tetikler
- Açık Kaynak Esnekliği: Tam olarak özelleştirilebilir kaynak kodu, lisanslama ücreti veya satıcı bağımlılığı yok
Neden Zabbix Kullanmalısınız? Temel Faydalar Açıklandı
1. Kapsamlı Altyapı Kapsamı
Zabbix, IT yığınının neredeyse her katmanını izler — fiziksel sunucular, sanal makineler, ağ anahtarları, depolama sistemleri, veritabanları, web uygulamaları ve bulut iş yükleri. Bu genişlik, sistem yöneticileri için ideal bir tek cam pano çözümü yapar.
2. Sıfır Lisanslama Maliyeti
Datadog, New Relic veya SolarWinds gibi ticari alternatiflerden farklı olarak, Zabbix tamamen ücretsizdir. Konak başına ücret yoktur, özellik katmanları yoktur ve sürpriz faturalar yoktur. Sıkı bir bütçeyle çalışan kuruluşlar için bu önemli bir avantajdır.
3. Kurumsal Düzeyde Ölçeklenebilirlik
Zabbix, ölçeklenebilirlik için tasarlanmıştır. Tek bir Zabbix sunucusu on binlerce cihazı izleyebilir. Daha büyük ortamlar için, Zabbix Proxy’leri kullanarak dağıtılmış izleme, birden fazla veri merkezi veya coğrafi bölge arasında yatay olarak ölçeklemenizi sağlar.
4. Esnek Uyarı ve Otomasyon
Zabbix’in tetikleyici ifadeleri kullanarak karmaşık uyarı koşulları tanımlayın. Birden fazla ölçümü birleştirin, bağımlılık zincirleri ayarlayın ve yükseltme ilkeleri yapılandırın. Otomasyon eylemleri, belirli koşullar karşılandığında uzak komutları yürütebilir, bildirimler gönderebilir veya harici betikleri çağırabilir.
5. Aktif Topluluk ve Ticari Destek
Zabbix, büyük ve aktif bir açık kaynak topluluğundan ve Zabbix LLC’den resmi bir ticari destek sunumundan yararlanarak kuruluşlara her iki dünyanın da en iyisini sunar.
Zabbix Nasıl Çalışır: Mimariye Genel Bakış
Dağıtımdan önce Zabbix’in mimarisini anlamak gereklidir. Platform, birbirine bağlı birkaç bileşen etrafında inşa edilmiştir:
Zabbix Sunucusu
Merkezi işleme motoru. Zabbix Sunucusu, aracılardan ve harici kaynaklardan veri toplar, tetikleyici koşullarını değerlendirir, uyarılar oluşturur ve her şeyi arka uç veritabanında depolar. Tüm yapılandırma ve mantık burada bulunur.
Zabbix Aracısı
İzlenen ana bilgisayarlara (Linux, Windows, macOS ve daha fazlası) doğrudan yüklenen hafif bir daemon. Aracı, CPU kullanımı, bellek tüketimi, disk I/O, çalışan işlemler, günlük dosyası girdileri gibi ayrıntılı sistem ölçümlerini toplar ve bunları Zabbix Sunucusuna geri bildirir.
Zabbix Proxy’si
Dağıtılmış ortamlar için isteğe bağlı ancak güçlü bir bileşen. Proxy’ler uzak ana bilgisayarlardan veri toplar ve merkezi sunucuya iletir, ağ yükünü azaltır ve güvenlik duvarları veya yavaş WAN bağlantıları arasında izlemeyi sağlar.
Veritabanı Arka Ucu
Tüm toplanan veriler, yapılandırmalar ve geçmiş kayıtlar ilişkisel bir veritabanında depolanır. Zabbix resmi olarak şunları destekler:
- MySQL / MariaDB — En yaygın olarak kullanılan
- PostgreSQL — Yüksek performans ve büyük ölçekli dağıtımlar için önerilen
- Oracle Veritabanı — Kurumsal ortamlar için
Web Ön Ucu
Grafik kullanıcı arayüzünü sağlayan PHP tabanlı bir web uygulaması. Yöneticiler bunu ana bilgisayarları yapılandırmak, izleme şablonları tanımlamak, panolar oluşturmak, kullanıcıları yönetmek ve uyarıları gözden geçirmek için kullanır.
Aracısız İzleme
Aracı yüklemesinin mümkün olmadığı cihazlar (ağ anahtarları, yazıcılar, eski donanım) için Zabbix aracısız izlemeyi destekler:
- SNMP — Ağ cihazları için
- IPMI — Sunucu donanımı sensörleri için
- JMX — Java uygulaması izlemesi için
- HTTP/HTTPS kontrolleri — Web hizmeti kullanılabilirliği için
Ubuntu’da Zabbix Kurulumu: Adım Adım Kılavuz
Aşağıdaki izlenecek yol, veritabanı arka ucu olarak MySQL kullanarak Ubuntu 22.04 LTS’de standart bir Zabbix kurulumunu kapsar. Bu kurulum, bir VPS Hosting planında veya bir Dedicated Server‘da üretim kullanımı için uygundur.
Ön Koşullar
- Ubuntu 22.04 LTS (yeni kurulum önerilir)
- Root veya sudo erişimi
- En az 2 GB RAM ve 2 CPU çekirdeği (üretim için 4+ GB RAM önerilir)
- MySQL veya MariaDB yüklü
Adım 1: Sistem Paketlerini Güncelleyin
Bağımlılık çatışmalarını önlemek için her zaman tam olarak güncellenmiş bir sistemle başlayın.
sudo apt update && sudo apt upgrade -yAdım 2: Resmi Zabbix Deposunu Ekleyin
Ubuntu 22.04 için resmi Zabbix depo paketini indirin ve yükleyin:
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 updateAdım 3: Zabbix Sunucusu, Ön Ucu ve Aracısını Yükleyin
sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agentAdım 4: MySQL Veritabanını Yapılandırın
MySQL’de oturum açın ve Zabbix için ayrılmış bir veritabanı ve kullanıcı oluşturun:
CREATE DATABASE zabbixdb CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'zabbixuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT ALL PRIVILEGES ON zabbixdb.* TO 'zabbixuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;İlk Zabbix şemasını içe aktarın:
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbixuser -p zabbixdbAdım 5: Zabbix Sunucusu Yapılandırma Dosyasını Düzenleyin
Ana yapılandırma dosyasını açın:
sudo nano /etc/zabbix/zabbix_server.confVeritabanı kurulumunuzla eşleşecek şekilde aşağıdaki parametreleri güncelleyin:
DBName=zabbixdb
DBUser=zabbixuser
DBPassword=StrongPassword123!Kaydedin ve çıkın (Ctrl+X, sonra Y, sonra Enter).
Adım 6: Zabbix Hizmetlerini Başlatın ve Etkinleştirin
sudo systemctl start zabbix-server zabbix-agent apache2
sudo systemctl enable zabbix-server zabbix-agent apache2Hizmetlerin çalıştığını doğrulayın:
sudo systemctl status zabbix-server
sudo systemctl status zabbix-agentAdım 7: Web Tabanlı Kurulum Sihirbazını Tamamlayın
Tarayıcınızı açın ve şu adrese gidin:
http://your-server-ip/zabbixÖn koşulları onaylamak, veritabanı bağlantısını yapılandırmak ve sunucu saat dilimini ayarlamak için ekrandaki kurulum sihirbazını izleyin. Tamamlandıktan sonra varsayılan kimlik bilgilerini kullanarak oturum açın:
- Kullanıcı Adı:
Admin - Şifre:
zabbix
> ⚠️ Güvenlik Uyarısı: İlk oturum açmadan hemen sonra varsayılan şifreyi değiştirin. Kullanıcı Ayarları → Şifreyi Değiştir‘e gidin ve güçlü, benzersiz bir şifre ayarlayın.
Zabbix’te İzleme Kurulumu
Zabbix yüklü ve çalışır durumda olduğuna göre, izleme ortamınızı yapılandırmanın zamanı gelmiştir.
Ana Bilgisayarlar Ekleme
Zabbix terminolojisinde bir “ana bilgisayar”, izlemek istediğiniz herhangi bir cihaz veya sistem — bir sunucu, sanal makine, ağ anahtarı veya bulut örneğidir.
- Yapılandırma → Ana Bilgisayarlar‘a gidin
- Ana Bilgisayar Oluştur‘u tıklayın
- Ana Bilgisayar Adı, IP Adresi ve Port‘u doldurun (varsayılan aracı portu: 10050)
- Ana bilgisayarı bir Ana Bilgisayar Grubuna atayın (örn. “Linux Sunucuları”, “Veritabanları”)
- Kaydetmek için Ekle‘yi tıklayın
İzleme Şablonlarını Uygulama
Şablonlar, belirli kullanım durumları için önceden oluşturulmuş öğe, tetikleyici, grafik ve pano koleksiyonlarıdır. Zabbix, şunları kapsayan yüzlerce yerleşik şablonla birlikte gelir:
- Linux ve Windows OS ölçümleri
- Apache, Nginx ve IIS web sunucuları
- MySQL, PostgreSQL ve Oracle veritabanları
- Cisco, Juniper ve genel SNMP ağ cihazları
- Docker kapsayıcıları ve Kubernetes kümeleri
Bir şablon uygulamak için:
- Ana bilgisayar yapılandırmasını açın
- Şablonlar sekmesine gidin
- Uygun şablonu arayın ve seçin (örn.
Template OS Linux by Zabbix agent) - Güncelle‘yi tıklayın
Özel Öğeleri Yapılandırma
Yerleşik şablonlar belirli metriğinizi kapsamıyorsa, özel bir izleme öğesi oluşturun:
- Yapılandırma → Ana Bilgisayarlar → Öğeler‘e gidin
- Öğe Oluştur‘u tıklayın
- Anahtar‘ı (ne ölçüleceği), Türü‘nü (Zabbix aracısı, SNMP, HTTP, vb.) ve Güncelleme aralığını tanımlayın
- Değer Türü‘nü ayarlayın (sayısal, metin, günlük, vb.)
Uyarıları ve Tetikleyicileri Yapılandırma
Tetikleyiciler, uyarı oluşturan koşulları tanımlar. Tetikleyici, toplanan verileri bir eşik ifadesine karşı değerlendirir.
Tetikleyici Oluşturma
- Yapılandırma → Ana Bilgisayarlar → Tetikleyiciler‘e gidin
- Tetikleyici Oluştur‘u tıklayın
- Bir tetikleyici ifadesi yazın, örneğin:
last(/your-host/system.cpu.util)>85Bu, CPU kullanımı son toplanan değerde %85’i aştığında bir uyarı tetikler.
- Önem Derecesi‘ni ayarlayın (Bilgi, Uyarı, Orta, Yüksek, Felaket)
- Ekle‘yi tıklayın
Bildirim Eylemlerini Ayarlama
- Yapılandırma → Eylemler → Tetikleyici Eylemleri‘ne gidin
- Eylem Oluştur‘u tıklayın
- Koşulları tanımlayın (hangi tetikleyiciler bu eylemi etkinleştirir)
- İşlemler altında, bildirim adımları ekleyin — kime bildirim yapılacağı, hangi medya türü aracılığıyla ve hangi yükseltme aşamasında
Medya Türlerini Yapılandırma
Medya türleri, Zabbix’in bildirimleri nasıl ilettiğini tanımlar:
- Yönetim → Medya Türleri‘ne gidin
- E-posta (SMTP sunucusu ayrıntıları), SMS veya Webhook entegrasyonlarını yapılandırın
- Yönetim → Kullanıcılar → Medya altında medya türlerini kullanıcılara atayın
Popüler webhook entegrasyonları arasında Slack, Microsoft Teams, Telegram ve PagerDuty bulunur — tümü Zabbix’in yerleşik webhook şablonları aracılığıyla yapılandırılabilir.
Zabbix’te Veri Görselleştirmesi
Zabbix’in en güçlü özelliklerinden biri, ham ölçümleri işlem yapılabilir zekaya dönüştüren görselleştirme araç takımıdır.
Panolar
Zabbix panoları tamamen özelleştirilebilir. Şunlar için widget’lar ekleyin:
- Sorun listeleri — Önem derecesine göre sıralanmış etkin uyarılar
- Grafikler — Herhangi bir izlenen metrik için zaman serisi grafikleri
- Göstergeler ve saatler — Bir bakışta durum göstergeleri
- Haritalar — Görsel ağ topolojisi diyagramları
- En iyi ana bilgisayarlar — Kaynak tüketimine göre sıralanmış
Farklı takımlar için role özgü panolar oluşturun — NOC ekibiniz için bir ağ operasyonları panosu, DBA ekibiniz için bir veritabanı performansı panosu ve yönetim için bir yönetici özeti panosu.
Grafikler
Herhangi bir ana bilgisayar için önceden oluşturulmuş grafikleri görüntülemek için İzleme → Ana Bilgisayarlar → Grafikler‘e gidin. Ayrıca birden fazla ölçümü kaplayan özel grafikler oluşturabilirsiniz — örneğin, CPU kullanımını bellek tüketimi ve ağ aktarım hızı ile birlikte tek bir grafikte çizme.
Ağ Haritaları
Zabbix Haritaları, ağ topolojinizin görsel bir temsilini sağlar. Şunları yapabilirsiniz:
- Ana bilgisayar simgelerini özel bir arka plan görüntüsüne yerleştirme
- Cihazlar arasında bağlantılar çizme
- Gerçek zamanlı duruma göre bağlantıları renk kodlama
- Harita görünümünden bireysel cihazlara detaya gitme
Zabbix Bakımı ve Performans Ayarlaması
Zabbix’i Güncel Tutun
Güvenlik yamaları, hata düzeltmeleri ve yeni özelliklerden yararlanmak için Zabbix’i düzenli olarak güncelleyin:
sudo apt update && sudo apt upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent -yVeritabanı Büyümesini Yönetin
Zabbix veritabanları büyük ortamlarda hızla büyüyebilir. Eski verileri otomatik olarak temizlemek için yerleşik Housekeeper‘ı kullanın:
- Yönetim → Genel → Housekeeping‘e gidin
- Geçmiş ve trend verisi için saklama dönemlerini ayarlayın (örn. geçmiş için 30 gün, trend’ler için 365 gün)
- Otomatik temizleme için İç housekeeping’i etkinleştir‘i etkinleştirin
Çok büyük dağıtımlar için, geliştirilmiş sorgu performansı için MySQL veya PostgreSQL veritabanı tablolarınızı bölümlemeyi düşünün.
Zabbix’in Kendisini İzleyin
İzleme platformunun kendis
