Zabbix nedir demeden önce monitoring’i ele alalım. Monitoring, bilgisayar sistemlerinin, ağların ve altyapının sürekli olarak izlenmesi ve performansının değerlendirilmesi sürecidir. IT dünyasında, monitoring işlemi, sistemlerin düzgün çalışmasını sağlamak, performans sorunlarını tespit etmek ve hızlıca müdahale etmek için kritik bir öneme sahiptir. 7/24 izleme, potansiyel sorunların erken tespit edilmesini ve çözülmesini sağlayarak iş sürekliliğini ve verimliliği artırır.
Monitoring, sistem kaynaklarının kullanımını, ağ trafiğini, uygulama performansını, hataları ve güvenlik tehditlerini izleyerek veri toplar. Bu veriler, trend analizi yapılmasını, kapasite planlaması yapılmasını ve performans sorunlarının önceden belirlenmesini sağlar. Ayrıca, anlık bildirimler ve uyarılar sayesinde olası sorunlar hızla tespit edilir ve müdahale edilir.
Bu kritik işlevi yerine getirmek için birçok monitoring çözümü bulunmaktadır. Ancak, Zabbix, kapsamlı özellik seti, esnekliği ve geniş kullanıcı kitlesi ile öne çıkar. Zabbix, sistemlerinizi, ağlarınızı ve uygulamalarınızı etkin bir şekilde izlemenize olanak tanır, böylece performans sorunlarını hızlıca tanımlayabilir ve çözebilirsiniz.
Zabbix Nedir?
Zabbix, ağ sistemlerini, sunucuları ve uygulamaları izlemek ve yönetmek için kullanılan kapsamlı bir açık kaynaklı izleme ve yönetim aracıdır. Sistemlerin performansını sürekli olarak izleyerek sorunları tespit eder ve anlık bildirimler sağlar.
Zabbix Özellikleri Nelerdir?
Zabbix, günümüzde sektörde tercih edilen önemli bir monitoring yazılımıdır. SNMP, IPMI, JMX gibi çeşitli protokollerle uyumlu olmasının yanı sıra diğer IT yönetim araçlarına da kolaylıkla uyum sağlar. Kullanıcı dostu tasarımı sayesinde datalarınızı en ince ayrıntısına kadar görüntüleyebilirsiniz. Zabbix’in özellikleri genel anlamıyla şunlardır:
- Kullanım Kolaylığı: Basit kurulum ve kullanıcı dostu arayüz.
- Esnek İzleme: Farklı cihazlar üzerinde kapsamlı izleme imkanı.
- Alarm ve Bildirimler: Anlık uyarılar ve özelleştirilebilir bildirimler.
- Özelleştirilebilir Raporlar: Kişiselleştirilebilir rapor ve grafikler.
- Geniş Uygulama Desteği: Çeşitli platformlar ve cihazlarla uyumlu.
- Dağıtık Mimari: Büyük ağlar için optimize edilmiş dağıtık izleme.
- Güvenlik: Veri şifreleme ve yetkilendirme özellikleri.
Zabbix özelliklerini ele aldıktan sonra şimdi de ubuntu 22.04 zabbix kurulumu nasıl yapılır ona bir göz atalım.
Ubuntu 22.04 Zabbix Kurulumu
Öncelikle https://www.zabbix.com/download linkine gidip Zabbix’in download sayfasından Ubuntu 22.04 Jammy seçiyoruz. Frontend, Server, Agent modüllerini de yüklemek istediğimiz için onu da seçiyoruz. Database ve web server üzerinde yapınıza göre istediğiniz seçimi yapabilirsiniz. Yapımız içerisinde database olarak mysql ve web server olarak da Apache kullanmak istediğimizi varsayalım. Artık kuruluma başlayabiliriz.
Kurulum adımında öncelikle sırasıyla;
wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb
dpkg -i zabbix-release_6.4-1+ubuntu22.04_all.deb
komutlarıyla öncelikle zabbix reposunu Ubuntu sunucumuza kuralım. Çünkü Ubuntu içerisinde zabbix direkt olmadığı için zabbix repository’sini indirip kurmamız gerekiyor. Ardından,
apt update
komutunu kullanarak yüklediğimiz paketlerin updatelerini tekrar yapmış olalım. Güncel sürümse “yeni upgrade yok” diye uyaracaktır zaten.
Ardından zabbix frontend, server ve agent modüllerini aşağıdaki komutla kuruyorum.
apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
Bu kısmı da tamamladıktan sonra database’i mysql olarak belirlediğimiz için mysql’i yüklememiz gerekiyor.
apt install -y mysql-server
komutu ile mysql’i sunucumuza kuruyoruz.
Mysql’i de kurduğumuza göre artık database’imizi oluşturabiliriz.
mysql yazıp mysql’e bağlanıyorum.
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;
Ardından bu oluşturduğum schema ve table’ları database’ime yazdırıyorum. Aşağıdaki komutla da bunu uyguluyorum.
zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix (db_password)
nano /etc/zabbix/zabbix_server.conf
komutuyla zabbix_server config dosyasına db parolamı girip kaydedip çıkıyorum.
Daha sonra sırasıyla;
systemctl restart zabbix-server zabbix-agent apache2
systemctl enable zabbix-server zabbix-agent apache2
komutlarıyla zabbix ve apache2 servislerini aktif etmiş oluyorum. Browser’a http://<sunucu_ip>/zabbix yazıp Zabbix UI’a bağlanıyorum.
Default language kısmını English olarak bırakıp Next Step diyorum.
Database Type MySQL olarak kalmalı. Çünkü yapımızda MySQL mevcut. Database host localhost olacak çünkü database’imiz bu sunucunun içinde. Eğer yapınızda ayrı bir database sunucusu varsa onun ip’sini de girebiliriz. Port’u 0 olarak bırakabiliriz. Database name’i oluşturduğunuz şekilde girip user ve password bilgilerini yazıp Next Step dedikten sonra yaptığımız konfigürasyonun özetini gösteren ekranı da Next Step diyerek geçiyoruz. Artık Zabbix’e giriş yapabiliriz.
Zabbix kurulumu sonrasında ilk defa giriş yaparken default olarak username Admin, password de zabbix girmelisiniz. Giriş yaptıktan sonra şifreyi değiştirebilirsiniz.
Zabbix arayüzüne başarıyla giriş yaptıktan sonra şimdi sırada başka bir Ubuntu sunucusuna Zabbix agent kurulumu yapalım.
Zabbix Agent Kurulumu ve Zabbix Server’a Agent Host Eklenmesi
Zabbix agent kurmak için aynı şekilde https://www.zabbix.com/download linkine gidip Zabbix Component kısmını Agent olarak seçiyoruz.
wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb
dpkg -i zabbix-release_6.4-1+ubuntu22.04_all.deb
apt update
komutlarıyla host olarak eklenecek sunucumuza zabbix repository’i kurduktan sonra zabbix agent’ı aşağıdaki komutla kuruyoruz.
apt install zabbix-agent
Zabbix agent’ı kurduktan sonra zabbix agent servisini aşağıdaki komutlarla aktif ediyoruz.
systemctl start zabbix-agent
systemctl enable zabbix-agent
Ardından nano /etc/zabbix/zabbix_agentd.conf komutuyla zabbix agent konfig dosyasına giriyoruz.
ServerName = <zabbix server ip>
ServerActive = <zabbix server ip>
Hostname = <Host olarak eklenecek sunucunun hostname’i>
bilgileri girip kaydedip çıkıyoruz ve zabbix-agent servisini
systemctl restart zabbix-agent
komutuyla yeniden başlatıyoruz.
Bu adımlardan sonra artık diğer işlemi Zabbix arayüzünden yapmamız gerekiyor. Arayüzde sol menüden Data Collection > Hosts diyoruz.
Hostname kısmına mutlaka sunucunun ip’sini yazmanız gerekiyor. Visible name’i istediğiniz gibi yazabilirsiniz. Template group kısmını sunucu bir Linux distrosu olduğu için “Linux By Zabbix Agent” ı seçmelisiniz. Host groups kısmını Agent olarak bırakabilirsiniz. Interfaces’a tıkladıktan sonra Add seçeneğini tıklayarak açılan panelde alt kısma yine sunucunun ip’sini yazmalısınız.
Zabbix server, agent yüklü olan sunucudan data çekerken 10050 portunu kullanır. Eğer 10050 portu ufw üzerinde açılmazsa zabbix server dataları çekemeyecektir. Bu sebeple aşağıdaki komutlarla aktif etmeniz mümkün.
ufw enable
ufw allow ssh
ufw allow 10050/tcp
Bu komutları uyguladıktan sonra Success çıktısı alıyorsanız her şey sorunsuz demektir.
Ardından Add tuşuna bastığınızda agent kurulan host, zabbix servera eklenmiş olacaktır. Availability kısmında ZBX’in yeşil ise zabbix server dataları çekmeye başlar. Eğer kırmızıysa bir şeyler ters gidiyor demektir. Ayarları kontrol etmekte yarar var.
Hostu ekledikten sonra dataların gözükmesi için biraz beklemelisiniz çekilen datalardan bir sonuç elde etmek için. Agent yüklü sunucu hakkında CPU kullanımından disk kullanımına kadar pek çok datayı görebilirsiniz.
Zabbix nedir, ne değildir, nasıl kurulur, zabbix agent nasıl yüklenir teknik anlamda inceledik. Bir başka yazımızda görüşmek dileğiyle. Yazımızı beğenmeyi, paylaşmayı ve yorum yapmayı unutmayın. Keyifli okumalar.