Zabbix Enterprise seviyesinde Network ve Networke bağlı cihazları izleyebilme, ölçebilme, raporlama ve alarm sistemi yapabildiğimiz açık kaynaklı ve ücretsiz bir çözümdür.
Cihazları izlemek için bir çok seçenek sunar, başlıca şunlardır.
- Zabbix agent (Windows, Linux)
- SNMP v1, v2, v3 ve trap
- Database (SQL sorguları ile)
- Log (Log dosyası ile)
- JMX (Java)
- SSH (komutlar ile)
- Telnet (komutlar ile)
- IPMI agent (Akıllı Platform Yönetimi)
- ICMP (ping)
İzlemek istediğiniz cihaz bu seçeneklerden herhangi birini destekliyor ise izleme, raporlama, ölçme ve alarm oluşturma seçeneklerin hepsini yapabilirsiniz. Bunların yanında Web senaryo oluşturabilme, Network haritası çıkarabilme ve haritadan monitor edebilme gibi özellikleri de bulunmaktadır. Kişisel görüşüm ise bence harika bir sistem. Sizi tek uğraştıracak kısım izlenecek her cihaz için bir kere uğraşmak gerekecektir. Özellikle SNMP ile izlemeniz gereken cihazların MIB dosyalarına çok ihtiyacınız olacaktır. Gerçi bu tüm monitor sistemlerinde karşılaşılan bir durum.
Yakında Zabbix 3 versyonuda çıkacak şuanda stabil bir sistem değil. Arayüz olarak çok gelişmiş görünüyor. İlk stabil sistemi çıktığında yine bu blogtan yazacağım.
Sistem gereksinimleri resmi sitesinden tavsiye edilen bilgiye göre şöyledir;
Sistem gereksinimleri resmi sitesinden tavsiye edilen bilgiye göre şöyledir;
Büyüklük | İşletim Sistemi | İşlemci / Hafıza | Veri Tabanı | İzlenecek Cihaz |
---|---|---|---|---|
Küçük | CentOS | 1 çekirdek/1GB | MySQL InnoDB | 100'e kadar |
Orta | CentOS | 2 çekirdek/2GB | MySQL InnoDB | 500'e kadar |
Büyük | RedHat Enterprise Linux | 4 çekirdek/8GB | RAID10 MySQL InnoDB veya PostgreSQL | 1000'e kadar |
Çok Büyük | RedHat Enterprise Linux | 8 çekirdek/16GB | Hızlı RAID10 MySQL InnoDB veya PostgreSQL | 10000'e kadar |
Eğer CentOS'u bu sistem için temiz bir kurulum yapacaksanız, minimal kurulum yapmanız yeterlidir. Zabbix uygulama deposu Centos üzerinde gelmiyor bu yüzden ilk önce EPEL ve daha sonra Zabbix uygulama depolarını sistemimize yüklüyoruz. Daha sonra güncelleyip yeniden başlatalım
yum install epel-release
yum -y update
reboot
Daha sonra Zabbix deposu için gerekli olan anahtarı sistemimize aktarıyoruz.
rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIXRepo dosyamızı oluşturacağız, bunun için repo klasörüne giriş yapalım.
cd /etc/yum.repos.d/Daha sonra nano editörü ile yeni bir repo dosyası oluşturup içeriğine girelim. (nano benim favori metin düzenleyicimdir. İsterseniz vi editörüde kullanabilirsiniz. Nano'yu centosa yüklemek için yum install nano komutunu çalıştırmanız yeterlidir.)
nano zabbix.repoİçeriğine yazacağımız satırlar şöyledir.
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://repo.zabbix.com/zabbix/2.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
Bu satırları yazarken son srümü 2.4.6 idi. Eğer siz bunları yaparken 2.4'ten daha yeni sürüm çıktı ise o baseurl adresini yazın. http://repo.zabbix.com/zabbix/ adresinden ilgili depoyu görebilirsiniz. Bundan sonraki kodları yazarken versiyonda kullanılıyorsa kendi yüklediğiniz versiyonu kullanmalısınız buna dikkat edin.
Zabbix için gerekli olan uygulamaları yükleyelim. Ben komutları sırayla yazıyorum siz tek tek uygulayarak yükleyip başlatılmasını sağlayın.
Zabbix için gerekli olan uygulamaları yükleyelim. Ben komutları sırayla yazıyorum siz tek tek uygulayarak yükleyip başlatılmasını sağlayın.
yum install httpdVeritabanının ayarlarını yapmamız gerekli
systemctl start httpd.service
systemctl enable httpd.service
yum install mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb.service
yum install php
yum install php-mysqli
yum install php-gd
yum install php-bcmath
yum install php-xml
yum install php-mbstring
yum install OpenIPMI
yum install fping
yum install net-snmp
systemctl restart httpd.service
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
mysql_secure_installationBir yükleme scripti çalışacaktır burada veritabanı root parolasını belirliyoruz tam olarak şöyle bir görüntü olacaktır. Kırımızı işaretlediklerim verdiğim yanıtlardır
[root@zabbix ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Zabbix server, agent ve gerekli olan diğer paketleri kuruyoruz. Otomatik olarak yüklenmesi gereken paketler ve bağımlılıklarda yüklenecektir.
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-java-gateway
Saat dilimini değiştiriyoruz
nano /etc/httpd/conf.d/zabbix.conf
Aşağıdaki kısmı bu şekilde değiştirmeliyiz.
Web sunucuyu yeniden başlatıyoruz.
php_value date.timezone Europe/Istanbul
Web sunucuyu yeniden başlatıyoruz.
systemctl restart httpd
Veritabanını hazırlıyoruz.
mysql -u root -p
Oluşturduğunuz parolayı girin. Aşağıdaki kırmızı ile yazdığım yerleri doldurun
Enter password:Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.44-MariaDB MariaDB Server
Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to 'zabbixu'@'localhost' identified by 'Parola1234';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
Parolamızı girdikten sonra zabbix adında bir veritabanı oluşturuyoruz. Daha sonra zabbixu diye bir kullanıcı oluşturup, parolasını belirleyerek bu vertitabanına tüm yetkilerini atıyoruz ve yetkileri yeniden yüklüyoruz. Artık veri tabanına tabloları oluşturabiliriz.
Agentın ayarlarını yapıyoruz.
Karşılama ekranına ulaşıyoruz.
Tüm ayarların sonunda OK yazdığından emin olun.
Veritabanı adı,kullanıcı adı, parola yazıp teste basın OK yazar ise devam edin. (yukarıda oluşturmuştuk)
Sunucu adını yazıp devam edin.
Ayarlarımızın sonucunu görüyoruz.
Ve yüklemeyi bitiyoruz.
Kullanıcı adı ve parola varsayılan olarak admin / zabbix tir.
Giriş yaptığınızda Dashboard ekranına ulaşacaksınız.
Configuration > Hosts altından sunucudaki agent'ı aktif edin. Disabled üstüne tıklayarak aktif edebilirsiniz. Bir süre sonra availability altındaki Z logosu yeşile dönecek ve veriler gelecektir.
Triggers, Latest Data, Events, Graphs, Screens altından gelen verileri görebilirsiniz. Bu ekranları kullanabilmeniz için bazılarında filtreleme yapmanız gerekmektedir. Bununla ilgili bir kaç resim paylaşıyorum.
Daha sonra bu blogta Zabbix agent. SNMP ve diğer yollarla izleme teknikleri, cihaz ekleme, raporlama, grafikleştirme/ölçme, şablon oluşturma, ağ haritası/ekran oluşturma ve alarm/trigger gibi uygulamaları da göstereceğim.
mysql -u zabbixu -p zabbix < /usr/share/doc/zabbix-server-mysql-2.4.6/create/schema.sqlParola soracaktır bu parola bir önceki zabbixu kullanıcısı için oluşturduğumuz paroladır. Burada 2.4.6 yazan yere sürüm numaranız ne ise onu yazmalısınız aksi taktirde sql sorgularının bulunduğu dosyayı bulamayıp işlem yapmayacaktır. Çalıştırdıktan sonra bitene kadar bekleyin. Daha sonraki iki işlem içinde aynısını yapıyoruz.
mysql -u zabbixu -p zabbix < /usr/share/doc/zabbix-server-mysql-2.4.6/create/images.sqlVeritabanı bilgilerini zabbix'in ayar dosyasına yazıyoruz
mysql -u zabbixu -p zabbix < /usr/share/doc/zabbix-server-mysql-2.4.6/create/data.sql
/etc/zabbix/zabbix_server.confAşağıdaki gibi alanların değiştirilmesi gerekli gerekli.
nano /etc/zabbix/zabbix_agentd.confAşağıdaki satırları bulup değiştirmeniz gerekli
[...]Php.ini ayarlarını yapıyoruz.
## Satır 85 - Specify Zabbix server ##
Server=127.0.0.1
[...]
## Satır 126 - Specify Zabbix server ##
ServerActive=127.0.0.1
[...]
## Satır 137 - Specify Zabbix server Hostname or IP address ##
Hostname=Zabbix server
[...]
nano /etc/php.iniAşağıdaki satırları bulup değiştirmeniz gerekiyor. Bu işlem biraz sıkıcı olabilir. (Eğer değiştirdiğiniz satırın başında noktalı virgül ; var ise kaldırınız)
max_execution_time = 600Gerekli portları açıyoruz.
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = Europe/Istanbul
firewall-cmd --permanent --add-port=10050/tcpŞimdi ise servisleri yeniden başlatıyoruz.
firewall-cmd --permanent --add-port=10051/tcp
systemctl restart firewalld
setsebool -P httpd_can_connect_zabbix=1
systemctl start zabbix-serverArtık arayüz kurulumuna geçiyoruz herhangi internet browser adres çubuğuna http://ipadres/zabbix veya http://domainadı/zabbix yazarak sisteme bağlanıyoruz.
systemctl start zabbix-agent
systemctl restart httpd
systemctl restart mariadb
systemctl enable zabbix-server
systemctl enable zabbix-agent
Karşılama ekranına ulaşıyoruz.
Tüm ayarların sonunda OK yazdığından emin olun.
Veritabanı adı,kullanıcı adı, parola yazıp teste basın OK yazar ise devam edin. (yukarıda oluşturmuştuk)
Sunucu adını yazıp devam edin.
Ayarlarımızın sonucunu görüyoruz.
Ve yüklemeyi bitiyoruz.
Kullanıcı adı ve parola varsayılan olarak admin / zabbix tir.
Giriş yaptığınızda Dashboard ekranına ulaşacaksınız.
Configuration > Hosts altından sunucudaki agent'ı aktif edin. Disabled üstüne tıklayarak aktif edebilirsiniz. Bir süre sonra availability altındaki Z logosu yeşile dönecek ve veriler gelecektir.
Triggers, Latest Data, Events, Graphs, Screens altından gelen verileri görebilirsiniz. Bu ekranları kullanabilmeniz için bazılarında filtreleme yapmanız gerekmektedir. Bununla ilgili bir kaç resim paylaşıyorum.
Daha sonra bu blogta Zabbix agent. SNMP ve diğer yollarla izleme teknikleri, cihaz ekleme, raporlama, grafikleştirme/ölçme, şablon oluşturma, ağ haritası/ekran oluşturma ve alarm/trigger gibi uygulamaları da göstereceğim.
Harika elinize sağlık
YanıtlaSilzappix importu https olmadan çalıştırmıyor bilginize :)
YanıtlaSil