Gereksinimler
Gereksinimler
1.1- Zabbix’in Gereksinimleri
1.1.1- Donanım
Hafıza
Zabbix hem fiziksel hem de disk belleği gerektirir. Gerekli disk belleği miktarı açıkça izlenen ana bilgisayar ve parametre sayısına bağlıdır. İzlenen parametrelerin uzun bir geçmişini tutmayı planlıyorsanız, geçmişi veri tabanında depolamak için yeterli alana sahip olmak için en azından birkaç gigabayt düşünmelisiniz. Her Zabbix daemon işlemi bir veri tabanı sunucusuna birkaç bağlantı gerektirir. Bağlantı için ayrılan bellek miktarı veri tabanı motorunun yapılandırmasına bağlıdır.
Not: Fiziksel belleğiniz ne kadar fazlaysa, veri tabanı (ve dolayısıyla Zabbix) o kadar hızlı çalışır.
İşlemci
Zabbix ve özellikle Zabbix veri tabanı, izlenen parametre sayısına ve seçilen veri tabanı motoruna bağlı olarak önemli miktarda CPU kaynağı gerektirebilir.
Diğer Donanımlar
Zabbix'te SMS bildirim desteğini kullanmak için seri haberleşme portu ve seri GSM modem gereklidir. USB-seri dönüştürücü de işe yarayacaktır.
Donanım Yapılandırma Örnekleri
Tabloda Linux/BSD/Unix platformu varsayılarak donanım yapılandırmasına dair örnekler verilmiştir.
Bunlar başlamak için boyut ve donanım yapılandırma örnekleridir. Her Zabbix kurulumu benzersizdir. Zabbix kurulumunu üretim ortamına dağıtmadan önce gereksinimlerinizi tam olarak anlayabilmeniz için Zabbix sisteminizin performansını bir hazırlama veya geliştirme ortamında kıyasladığınızdan emin olun.
Kurulum Boyutu |
İzlenen Metric’ler |
CPU/vCPU Çekirdekleri |
Bellek (GiB) |
Veri Tabanı |
Amazon EC2 |
Küçük |
1.000 |
2 |
8 |
MySQL Server, Percona Server, MariaDB Server, PostgreSQL |
m6i.large/m6g.large |
Orta |
10.000 |
4 |
16 |
MySQL Server, Percona Server, MariaDB Server, PostgreSQL |
m6i.xlarge/m6g.xlarge |
Büyük |
100.000 |
16 |
64 |
MySQL Server, Percona Server, MariaDB Server, PostgreSQL, Oracle |
m6i.4xlarge/m6g.4xlarge |
Çok Büyük |
1.000.000 |
32 |
96 |
MySQL Server, Percona Server, MariaDB Server, PostgreSQL, Oracle |
m6i.8xlarge/m6g.8xlarge |
İzlenen Metric’ler: 1 metric = 1 item + 1 trigger + 1 graph
Amazon EC2: ARM64 veya x86_64 mimarisini kullanan Amazon genel amaçlı EC2 örnekleri için, üretim ortamına kurulumdan önce Zabbix kurulum değerlendirmesi ve testi sırasında Compute/Memory/Storage için optimize edilmiş uygun bir örnek türü seçilmelidir.
Not: Gerçek yapılandırma etkin öğelerin sayısına ve yenileme hızlarına çok bağlıdır. Büyük kurulumlar için veri tabanını ayrı bir sunucuda çalıştırmanız şiddetle önerilir.
Desteklenen Platformlar
Güvenlik gereksinimleri ve izleme sunucusunun kritik görev yapısı nedeniyle UNIX, gerekli performansı, hata toleransını ve dayanıklılığı sürekli olarak sağlayabilen tek işletim sistemidir. Zabbix, pazar lideri sürümlerde çalışır.
Zabbix bileşenleri aşağıdaki platformlar için mevcuttur ve test edilmiştir:
Platform |
Server |
Agent |
Agent2 |
Linux |
X |
X |
X |
IBM AIX |
X |
X |
- |
FreeBSD |
X |
X |
- |
NetBSD |
X |
X |
- |
OpenBSD |
X |
X |
- |
HP-UX |
X |
X |
- |
Mac OS X |
X |
X |
- |
Solaris |
X |
X |
- |
Windows |
- |
X |
X |
Not: Zabbix server/agent diğer Unix benzeri işletim sistemlerinde de çalışabilir. Zabbix agent XP'den (64 bit sürüm) itibaren tüm Windows masaüstü ve sunucu sürümlerinde desteklenir. Zabbix agent 6.1 TL07 / AIX 7.1 TL01 sürümlerinin altındaki AIX platformlarında çalışmaz. Zabbix agent 2'deki kritik güvenlik açıklarını önlemek için yalnızca desteklenen Go sürümleriyle derlenir. Go 1.21 itibarıyla, gereken minimum Windows sürümleri yükseltilmiştir, bu nedenle Zabbix agent 2 için minimum Windows sürümü Windows 10/Server 2016'dır.
Zabbix, şifreleme ile derlenmişse çekirdek dökümlerini devre dışı bırakır ve sistem çekirdek dökümlerinin devre dışı bırakılmasına izin vermiyorsa başlamaz.
Gerekli Yazılım
Zabbix, modern web sunucuları, önde gelen veri tabanı motorları ve PHP betik dili etrafında oluşturulmuştur.
Third-party External Surrounding Yazılımı
Zorunlu olarak belirtilirse, gerekli yazılım/kütüphane kesinlikle gereklidir. İsteğe bağlı olanlar, belirli bir işlevi desteklemek için gereklidir.
Yazılım |
Zorunluluk Durumu |
Desteklenen Sürümler |
Açıklama |
MySQL/Percona |
Biri zorunlu |
8.0.30-8.4.X |
MySQL (veya Percona) Zabbix arka uç veritabanı olarak kullanılıyorsa gereklidir. InnoDB motoru gereklidir.
MySQL sürümleri için destek eklendi: - Zabbix 7.0.1'den beri 8.4.X. Sunucu/proxy oluşturmak için C API (libmysqlclient) Kitaplığını kullanmanızı öneririz. |
MariaDB |
10.5.00-11.4.X |
InnoDB motoru gereklidir.
Önerilen sürüm 10.5'tir. server/proxy oluşturmak için MariaDB Connector/C Kütüphanesini kullanmanızı öneririz. MariaDB sürümleri için destek eklendi: Zabbix 7.0.1'den itibaren 11.4.X. |
|
Oracle |
19c - 21c |
Oracle, Zabbix arka uç veritabanı olarak kullanılıyorsa gereklidir. Oracle DB desteği Zabbix 7.0'dan beri kullanım dışıdır. |
|
PostgreSQL |
13.0-16.X |
PostgreSQL, Zabbix arka uç veri tabanı olarak kullanılıyorsa gereklidir. Kurulum boyutuna bağlı olarak, belirli bir işlem için veri tabanı tarafından kullanılan bellek miktarının yeterli olması ve sorgu yürütmenin çok fazla zaman almaması için PostgreSQL work_mem yapılandırma özelliğinin (varsayılan değer 4MB) artırılması gerekebilir. |
|
TimescaleDB for PostgreSQL |
2.13.0-2.15.X |
TimescaleDB, PostgreSQL veri tabanı uzantısı olarak kullanılıyorsa gereklidir. Sıkıştırmayı destekleyen TimescaleDB Community Edition'ı yüklediğinizden emin olun.
PostgreSQL 15'in TimescaleDB 2.10'dan beri desteklendiğini unutmayın. PostgreSQL ve TimescaleDB sürüm uyumluluğuyla ilgili ayrıntılar için resmi belgelere de başvurabilirsiniz. TimescaleDB sürümleri için destek eklendi: Zabbix 7.0.1'den itibaren 2.15.X |
|
SQLite |
İsteğe bağlı |
3.3.5-3.34.X |
SQLite yalnızca Zabbix proxy'leriyle desteklenir. SQLite'ın Zabbix proxy veri tabanı olarak kullanılması durumunda gereklidir. |
smartmontools |
7.1 veya üzeri |
Zabbix Agent 2 için gereklidir. |
|
who |
|
Kullanıcı sayısı eklentisi için gereklidir. |
|
dpkg |
|
system.sw.packages eklentisi için gereklidir. |
|
pkgtool |
|
system.sw.packages eklentisi için gereklidir. |
|
rpm |
|
system.sw.packages eklentisi için gereklidir. |
|
pacman |
|
system.sw.packages eklentisi için gereklidir. |
|
q applets |
|
Gentoo Linux üzerinde, system.sw.packages eklentisi için qlist ve qsize, q applets bileşeninin bir parçası olarak gereklidir |
Not: Zabbix, işletim sistemlerinde bulunan veri tabanlarıyla çalışabilse de en iyi deneyim için resmi veri tabanı geliştirici depolarından yüklenen veri tabanlarını kullanmanızı öneririz.
Başlangıç Aşaması
Zabbix ön yüzü için desteklenen minimum ekran genişliği 1200 pikseldir.
Zorunlu olarak belirtilirse, gerekli yazılım/kütüphane kesinlikle gereklidir. İsteğe bağlı olanlar, belirli bir işlevi desteklemek için gereklidir.
Yazılım |
Zorunluluk Durumu |
Sürüm |
Açıklama |
Apache |
Biri zorunlu |
2.4 veya üzeri |
|
Nginx |
1.20 veya üzeri |
|
|
PHP |
Zorunlu |
8.0.0 - 8.3.X |
|
PHP extensions: |
|||
gd |
Zorunlu |
2.0.28 veya üzeri |
PHP GD uzantısı PNG resimlerini ( --with-png-dir ), JPEG ( --with-jpeg-dir ) resimlerini ve FreeType 2'yi ( --with-freetype-dir ) desteklemelidir. Bazı ön uç dilleri için grafiklerde olası metin örtüşmelerini önlemek için 2.3.0 veya sonraki bir sürüm gerekebilir . |
bcmath |
|
php-bcmath ( --enable-bcmath ) |
|
ctype |
|
php-ctype ( --enable-ctype ) |
|
libXML |
2.6.15 veya üzeri |
Dağıtıcı tarafından ayrı bir paket olarak sağlanmışsa php-xml. |
|
xmlreader |
|
Dağıtıcı tarafından ayrı bir paket olarak sağlanmışsa php-xmlreader. |
|
xmlwriter |
|
Dağıtıcı tarafından ayrı bir paket olarak sağlanmışsa php-xmlwriter. |
|
session |
|
Dağıtıcı tarafından ayrı bir paket olarak sağlanmışsa php-session. |
|
sockets |
|
php-net-socket ( --enable-sockets ). Kullanıcı betiği desteği için gereklidir. |
|
mbstring |
|
php-mbstring ( --enable-mbstring ) |
|
gettext |
|
php-gettext ( --with-gettext). Çevirilerin çalışması için gereklidir. |
|
ldap |
Zorunlu değil |
|
php-ldap. Yalnızca ön uçta LDAP kimlik doğrulaması kullanılıyorsa gereklidir. |
openssl |
|
php-openssl. Yalnızca ön uçta SAML kimlik doğrulaması kullanılıyorsa gereklidir. |
|
mysqli |
|
Zabbix arka uç veri tabanı olarak MySQL kullanılıyorsa gereklidir. |
|
oci8 |
|
Zabbix arka uç veri tabanı olarak Oracle kullanılıyorsa gereklidir. |
|
pgsql |
|
PostgreSQL'in Zabbix arka uç veri tabanı olarak kullanılması durumunda gereklidir. |
|
curl |
|
php-curl. Yüklü değilse, ön uç her zamanki gibi çalışacaktır, ancak Duo Universal Prompt çok faktörlü kimlik doğrulama seçeneği kullanılamayacaktır. |
Zabbix ile birlikte sağlanan üçüncü taraf frontend kitaplıkları:
Kütüphane |
Zorunluluk Durumu |
Minimum Versiyon |
Açıklama |
jQuery JavaScript Library |
Zorunlu |
3.6.0 |
Tarayıcılar arası geliştirme sürecini basitleştiren JavaScript kütüphanesi. |
jQuery UI |
1.12.1 |
JQuery üzerine kurulu bir dizi kullanıcı arayüzü etkileşimi, efekt, widget ve tema. |
|
OneLogin's SAML PHP Toolkit |
4.0.0 |
Zabbix'e giriş yapabilmek için SAML 2.0 kimlik doğrulama desteği ekleyen bir PHP araç takımı. |
|
Symfony Yaml Component |
5.1.0 |
Zabbix yapılandırma öğelerinin YAML biçiminde dışa ve içe aktarılmasına yönelik destek ekler. |
Not: Zabbix, Apache, MySQL, Oracle ve PostgreSQL'in önceki sürümlerinde de çalışabilir.
Varsayılan DejaVu dışındaki diğer yazı tipleri için PHP işlevi imagerotate gerekebilir. Eksikse, bir grafik görüntülendiğinde bu yazı tipleri yanlış işlenebilir. Bu işlev yalnızca PHP, Debian ve diğer dağıtımlarda olmayan bir şekilde paketlenmiş GD ile derlendiğinde kullanılabilir.
Zabbix frontend kodunu yazmak ve hata ayıklamak için kullanılan third-party kütüphaneler:
Kütüphane |
Zorunluluk Durumu |
Minimum Versiyon |
Açıklama |
Composer |
Zorunlu değil |
2.4.1 |
PHP için, PHP yazılımlarının ve gerekli kütüphanelerin bağımlılıklarını yönetmek için standart bir format sağlayan uygulama düzeyinde bir paket yöneticisidir. |
PHPUnit |
8.5.29 |
Zabbix frontend’ini test etmek için bir PHP unit testing framework’üdür. |
|
SASS |
3.4.22 |
Cascading Style Sheets (CSS) yorumlanan ve derlenen bir ön işlemci betik dilidir. |
İstemci Tarafında Web Tarayıcısı
Çerezler ve JavaScript etkinleştirilmelidir.
Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari ve Opera'nın en son kararlı sürümleri desteklenmektedir.
Not: IFrames için aynı kökenli politika uygulanır, bu da Zabbix'in farklı bir etki alanındaki frame’lere yerleştirilemeyeceği anlamına gelir.
Yine de bir Zabbix frame’ine yerleştirilen sayfalar, frame’e yerleştirilen sayfa ve Zabbix frontend aynı etki alanındaysa Zabbix frontend’ine (JavaScript aracılığıyla) erişebilir. Eğer http://secure-zabbix.com/cms/page.html gibi bir sayfa http://secure-zabbix.com/zabbix/ panolarına yerleştirilirse, Zabbix'e tam JS erişimi olacaktır.
Server/proxy
Zorunlu olarak belirtilirse, gerekli yazılım/kütüphane kesinlikle gereklidir. İsteğe bağlı olanlar, belirli bir işlevi desteklemek için gereklidir.
Gereksinimler |
Zorunluluk Durumu |
Açıklama |
libpcre/libpcre2 |
Biri zorunlu |
Perl Compatible Regular Expression (PCRE) desteği için PCRE/PCRE2 kütüphanesi gereklidir. Adlandırma, GNU/Linux dağıtımına bağlı olarak farklılık gösterebilir, örneğin 'libpcre3' veya 'libpcre1'. PCRE v8.x ve PCRE2 v10.x desteklenir. |
libevent |
Zorunlu |
İşlemler arası iletişim için 1.4 veya üzeri sürüm gereklidir. |
libevent-pthreads |
İşlemler arası iletişim için gereklidir. |
|
libpthread |
Mutex ve okuma-yazma kilidi desteği için gereklidir (libc'nin bir parçası olabilir). |
|
libresolv |
DNS çözümlemesi için gereklidir (libc'nin bir parçası olabilir). |
|
libiconv |
Metin kodlama/format dönüşümü için gereklidir (libc'nin bir parçası olabilir). Linux'taki Zabbix sunucusu için zorunludur. |
|
libz |
Sıkıştırma desteği için gereklidir. |
|
libm |
Matematik kütüphanesi. Yalnızca Zabbix sunucusu tarafından gereklidir. |
|
libmysqlclient |
Biri zorunlu |
MySQL kullanılıyorsa gereklidir. |
libmariadb |
MariaDB kullanılıyorsa gereklidir. |
|
libclntsh |
Oracle kullanılıyorsa gereklidir; libclntsh sürümü kullanılan Oracle veri tabanının sürümüyle eşleşmeli veya daha yüksek olmalıdır. |
|
libpq5 |
PostgreSQL kullanılıyorsa gereklidir; libpq5 sürümü kullanılan PostgreSQL veri tabanının sürümüyle eşleşmeli veya daha yüksek olmalıdır. |
|
libsqlite3 |
Sqlite kullanılıyorsa gereklidir. Yalnızca Zabbix proxy için gereklidir. |
|
libOpenIPMI |
Zorunlu değil |
IPMI desteği için gereklidir. Yalnızca Zabbix sunucusu için gereklidir. |
libssh2 or libssh |
1.0 veya üzeri (libssh2); 0.9.0 veya üzeri (libssh) sürümler SSH kontrolleri için gereklidir. |
|
libcurl |
Web izleme, VMware izleme, SMTP kimlik doğrulaması, web.page.*Zabbix aracı öğeleri , HTTP aracı öğeleri ve Elasticsearch (kullanılıyorsa) için gereklidir. 7.19.1 veya üzeri sürüm gereklidir (7.28.0 veya üzeri önerilir). Libcurl sürüm gereksinimleri: - SMTP kimlik doğrulaması: 7.20.0 veya üzeri sürüm - Elasticsearch: 7.28.0 veya üzeri sürüm Yükseltilmiş cURL özelliklerini kullanmak için Zabbix sunucusunu/proxy'sini ve aracısını (web.page.*öğeler için) yeniden başlatın. |
|
libxml2 |
VMware izleme ve XML XPath ön işleme için gereklidir. |
|
net-snmp |
5.3.0 veya üzeri sürümlerde SNMP desteği için gereklidir. Güçlü şifreleme protokollerinin (AES192/AES192C, AES256/AES256C) desteği net-snmp kütüphanesi 5.8'den itibaren mevcuttur; RHEL 8+ tabanlı sistemlerde net-snmp 5.8.15 veya üzeri sürümlerin kullanılması önerilir. |
|
libunixodbc |
Veri tabanı izleme için gereklidir. |
|
libgnutls or libopenssl |
Şifreleme kullanılırken gereklidir. Minimum sürümler: libgnutls - 3.1.18, libopenssl - 1.0.1 |
|
libldap |
LDAP desteği için gereklidir. |
|
fping |
ICMP ping öğeleri için gereklidir. |
Agent
Gereksinimler |
Zorunluluk Durumu |
Açıklama |
libpcre/libpcre2 |
Biri zorunlu |
Perl Compatible Regular Expression (PCRE) desteği için PCRE/PCRE2 kütüphanesi gereklidir. Adlandırma, GNU/Linux dağıtımına bağlı olarak farklılık gösterebilir, örneğin 'libpcre3' veya 'libpcre1'. PCRE v8.x ve PCRE2 v10.x desteklenir. Günlük izleme için gereklidir. Windows'ta da gereklidir. |
libpthread |
Zorunlu |
Mutex ve okuma-yazma kilidi desteği için gereklidir (libc'nin bir parçası olabilir). Windows'ta gerekli değildir. |
libresolv |
DNS çözümlemesi için gereklidir (libc'nin bir parçası olabilir). Windows'ta gerekli değildir. |
|
libiconv |
Günlük öğelerinde, dosya içeriğinde, dosya regex'inde ve regmatch öğelerinde UTF-8'e metin kodlaması/biçim dönüşümü için gereklidir (libc'nin bir parçası olabilir). Windows'ta gerekli değildir. |
|
libgnutls or libopenssl |
Zorunlu değil |
Şifreleme kullanılıyorsa gereklidir. Minimum sürümler: libgnutls - 3.1.18, libopenssl - 1.0.1 Microsoft Windows'da OpenSSL 1.1.1 veya üzeri sürümler gereklidir. |
libldap |
LDAP kullanılıyorsa gereklidir. Windows'da desteklenmez. |
|
libcurl |
web.page.*Zabbix agent öğeleri için gereklidir. Windows'ta desteklenmez. 7.19.1 veya üzeri sürümleri gereklidir (7.28.0 veya üzeri sürümler önerilir). Yükseltilmiş cURL özelliklerini kullanmak için Zabbix agent’i yeniden başlatın. |
|
libmodbus |
Yalnızca Modbus izleme kullanılıyorsa gereklidir. 3.0 veya üzeri sürümler. |
Agent 2
Gereksinimler |
Zorunluluk Durumu |
Açıklama |
libpcre/libpcre2 |
Biri zorunlu |
Perl Compatible Regular Expression (PCRE) desteği için PCRE/PCRE2 kütüphanesi gereklidir. Adlandırma, GNU/Linux dağıtımına bağlı olarak farklılık gösterebilir, örneğin 'libpcre3' veya 'libpcre1'. PCRE v8.x ve PCRE2 v10.x desteklenir. Günlük izleme için gereklidir. Windows'ta da gereklidir. |
libopenssl |
Zorunlu değil |
Şifreleme kullanılırken gereklidir. UNIX platformlarında OpenSSL 1.0.1 veya üzeri sürümler gereklidir. OpenSSL kitaplığında PSK desteği etkinleştirilmiş olmalıdır. LibreSSL desteklenmez. Microsoft Windows sistemlerinde OpenSSL 1.1.1 veya üzeri sürümler gereklidir. |
Kütüphaneler
Gereksinimler |
Zorunluluk Durumu |
Minimum Versiyon |
Açıklama |
git.zabbix.com/ap/plugin-support |
Zorunlu |
1.X.X |
Çoğunlukla eklentiler için Zabbix'in kendi destek kütüphanesi. |
github.com/BurntSushi/locker |
0.0.0 |
Adlandırılmış okuma/yazma kilitleri, erişim senkronizasyonu. |
|
github.com/chromedp/cdproto |
0.0.0 |
Chrome DevTools Protokolü etki alanları için oluşturulan komutlar, türler ve olaylar. |
|
github.com/chromedp/chromedp |
0.6.0 |
Chrome DevTools Protokolü desteği (rapor oluşturma). |
|
github.com/dustin/gomemcached |
0.0.0 |
Go için bir memcached ikili protokol araç takımı. |
|
github.com/eclipse/paho.mqtt.golang |
1.2.0 |
MQTT bağlantılarını yönetmek için bir kütüphane. |
|
github.com/fsnotify/fsnotify |
1.4.9 |
Go için platformlar arası dosya sistemi bildirimleri. |
|
github.com/go-ldap/ldap |
3.0.3 |
Go programlama dili için temel LDAP v3 işlevselliği. |
|
github.com/go-ole/go-ole |
1.2.4 |
Go için Win32 ole uygulaması. |
|
github.com/godbus/dbus |
4.1.0 |
D-Bus için yerel Go bağlamaları. |
|
github.com/go-sql-driver/mysql |
1.5.0 |
MySQL sürücüsü. |
|
github.com/godror/godror |
0.20.1 |
Oracle DB sürücüsü. |
|
github.com/mattn/go-sqlite3 |
2.0.3 |
Sqlite3 sürücüsü. |
|
github.com/mediocregopher/radix/v3 |
3.5.0 |
Redis istemcisi. |
|
github.com/memcachier/mc/v3 |
3.0.1 |
Binary Memcached istemcisi. |
|
github.com/miekg/dns |
1.1.43 |
DNS kütüphanesi. |
|
github.com/omeid/go-yarn |
0.0.1 |
Gömülebilir dosya sistemi eşlenmiş key-string deposu. |
|
github.com/goburrow/modbus |
0.1.0 |
Modbus'un hata toleranslı uygulaması. |
|
golang.org/x/sys |
0.0.0 |
İşletim sistemiyle düşük seviyeli etkileşimler için Go paketleri. Ayrıca eklenti destek kütüphanesinde kullanılır. MongoDB ve PostgreSQL eklentilerinde kullanılır. |
|
github.com/Microsoft/go-winio |
Windows’da zorunlu (dolaylı) |
0.6.0 |
Windows adlandırılmış pipe uygulaması. Ayrıca eklenti destek kütüphanesinde kullanılır. MongoDB ve PostgreSQL eklentilerinde kullanılır. |
github.com/goburrow/serial |
Zorunlu (dolaylı) |
0.1.0 |
Modbus için seri kütüphane. |
golang.org/x/xerrors |
0.0.0 |
Hataları manipüle etmeye yarayan fonksiyonlar. |
|
gopkg.in/asn1-ber.v1 |
1.0.0 |
ASN1 BER için kodlama/kod çözme kütüphanesi. |
|
github.com/go-stack/stack |
Zorunlu değil (dolaylı) |
1.8.0 |
|
github.com/golang/snappy |
0.0.1 |
|
|
github.com/klauspost/compress |
1.13.6 |
|
|
github.com/xdg-go/pbkdf2 |
1.0.0 |
|
|
github.com/xdg-go/scram |
1.0.2 |
|
|
github.com/xdg-go/stringprep |
1.0.2 |
|
|
github.com/youmark/pkcs8 |
0.0.0 |
|
Not: Tablodaki dolaylı ifadesi; agent’in kullandığı kütüphanelerden birinde kullanıldığı anlamına gelir. Zabbix paketi kullanan kütüphaneyi kullandığı için gereklidir.
Yüklenebilir eklentiler için plugin’ler:
- · PostgreSQL
- · MongoDB
Java Gateway
Eğer Zabbix'i kaynak deposundan veya bir arşivden aldıysanız, gerekli bağımlılıklar zaten kaynak ağacında mevcuttur.
Eğer Zabbix'i dağıtımınızın paketinden aldıysanız, gerekli bağımlılıklar zaten paketleme sistemi tarafından sağlanmıştır.
Yukarıdaki her iki durumda da yazılım kullanıma hazırdır ve ek bir indirme işlemine gerek yoktur.
Ancak, bu bağımlılıkların sürümlerini sağlamak isterseniz (örneğin, bir Linux dağıtımı için bir paket hazırlıyorsanız), Java gateway’in çalıştığı bilinen kütüphanelerin sürümlerinin listesi aşağıdadır. Zabbix, bu kütüphanelerin diğer sürümleriyle de çalışabilir.
Aşağıdaki tabloda orijinal kodda Java gateway’i ile birlikte gelen JAR dosyaları listelenmektedir:
Kütüphane |
Zorunluluk Durumu |
Minimum Versiyon |
Açıklama |
android-json |
Zorunlu |
4.3r1 |
JSON (JavaScript Object Notation) hafif bir veri değişim biçimidir. Bu, Android SDK'dan çıkarılan org.json uyumlu Android uygulamasıdır. |
logback-classic |
1.2.9 |
|
|
logback-core |
1.2.9 |
|
|
slf4j-api |
1.7.32 |
|
Java gateway Oracle Java veya açık kaynaklı OpenJDK (1.6 veya üzeri sürümler) kullanılarak oluşturulabilir. Zabbix tarafından sağlanan paketler OpenJDK kullanılarak derlenir. Aşağıdaki tablo, dağıtıma göre Zabbix paketleri oluşturmak için kullanılan OpenJDK sürümleri hakkında bilgi sağlar:
Dağıtım |
OpenJDK sürümü |
RHEL 8 |
1.8.0 |
RHEL 7 |
1.8.0 |
SLES 15 |
11.0.4 |
Debian 10 |
11.0.8 |
Ubuntu 20.04 |
11.0.8 |
Ubuntu 18.04 |
11.0.8 |
Varsayılan Port Numaraları
Varsayılan yapılandırma için bileşen başına açık portların aşağıdaki listesi geçerlidir:
Zabbix Bileşeni |
Port Numarası |
Protokol |
Bağlantı Türü |
Zabbix agent |
10050 |
TCP |
Talep üzerine |
Zabbix agent 2 |
10050 |
TCP |
Talep üzerine |
Zabbix server |
10051 |
TCP |
Talep üzerine |
Zabbix proxy |
10051 |
TCP |
Talep üzerine |
Zabbix Java gateway |
10052 |
TCP |
Talep üzerine |
Zabbix web service |
10053 |
TCP |
Talep üzerine |
Zabbix frontend |
80 |
HTTP |
Talep üzerine |
443 |
HTTPS |
Talep üzerine |
|
Zabbix trapper |
10051 |
TCP |
Talep üzerine |
Not: Zabbix iletişimlerini etkinleştirmek için port numaralarının güvenlik duvarında açık olması gerekir. Giden TCP bağlantıları genellikle açık güvenlik duvarı ayarları gerektirmez.
Veri Tabanı Boyutu
Zabbix yapılandırma verileri sabit miktarda disk alanı gerektirir ve çok fazla büyümez.
Zabbix veri tabanı boyutu esas olarak depolanan geçmiş verilerin miktarını tanımlayan şu değişkenlere bağlıdır:
- · Saniyede işlenen değer sayısı:
Bu, Zabbix sunucusunun her saniye aldığı yeni değerlerin ortalama sayısıdır. Örneğin, 60 saniyelik yenileme hızıyla izlenecek 3000 öğemiz varsa, saniye başına değer sayısı 3000/60 = 50 olarak hesaplanır.
Bu, Zabbix veri tabanına saniye başı 50 yeni değerin eklendiği anlamına geliyor.
- · Tarih için Yönetici Ayarları:
Zabbix değerleri sabit bir süre boyunca, normalde birkaç hafta veya ay boyunca tutar. Her yeni değer, veri ve dizin için belirli miktarda disk alanı gerektirir.
Yani 30 günlük bir geçmişi tutmak istersek ve saniyede 50 değer alırsak, toplam değer sayısı yaklaşık ( 30 *24*3600)* 50 = 129.600.000 yani yaklaşık 130M değer olacaktır.
Kullanılan veri tabanı motoruna, alınan değerlerin türüne (kayan noktalı sayılar, tam sayılar, dizeler, günlük dosyaları, vb.) bağlı olarak, tek bir değeri tutmak için gereken disk alanı 40 bayttan yüzlerce bayta kadar değişebilir. Normalde sayısal öğeler için değer başına yaklaşık 90 bayttır. Bizim durumumuzda, 130M değerin 130M * 90 bayt = 10,9GB disk alanı gerektireceği anlamına gelir.
Not: Metin/log öğesi değerlerinin boyutunu tam olarak tahmin etmek imkansızdır ancak değer başına yaklaşık 500 bayt bekleyebilirsiniz.
- · Trendler için Yönetici Ayarları:
Zabbix, trendler tablosundaki her öğe için 1 saatlik maksimum/min/ort/sayı değer kümesi tutar. Veriler trend ve uzun dönemli grafikler için kullanılır. Bir saatlik dönem özelleştirilemez.
Zabbix veri tabanı, veri tabanı türüne bağlı olarak, her toplam için yaklaşık 90 bayt gerektirir. Trend verilerini 5 yıl boyunca saklamak istediğimizi varsayalım. 3000 öğe için değerler yılda 3000*24*365* 90 = 2,2 GB veya 5 yıl için 11 GB gerektirecektir.
- · Etkinlikler için Yönetici Ayarları:
Her Zabbix olayı yaklaşık 250 bayt disk alanı gerektirir. Zabbix tarafından günlük olarak üretilen olay sayısını tahmin etmek zordur. En kötü senaryoda, Zabbix'in saniyede bir olay ürettiğini varsayabiliriz.
Her kurtarılan olay için bir event_recovery kaydı oluşturulur. Normalde olayların çoğu kurtarılacağından olay başına bir event_recovery kaydı olduğunu varsayabiliriz. Bu, olay başına ek 80 bayt anlamına gelir.
İsteğe bağlı olarak olayların etiketleri olabilir, her etiket kaydı yaklaşık 100 bayt disk alanı gerektirir. Olay başına etiket sayısı (#etiketler) yapılandırmaya bağlıdır. Bu nedenle her birinin ek #etiketler * 100 bayt disk alanına ihtiyacı olacaktır.
Yani 3 yıllık etkinlikleri saklamak istiyorsak 3*365*24*3600* (250+80+#etiket*100) = ~30GB +#etiket*100B disk alanına ihtiyacımız olacaktır.
Tabloda Zabbix sistemi için gerekli disk alanını hesaplamak için kullanılabilecek formüller yer almaktadır:
Parametre |
Gerekli disk alanı formülü (bayt cinsinden) |
Zabbix configuration |
Sabit boyut. Normalde 10MB veya daha az. |
History |
günler*(öğeler/yenileme hızı)*24*3600*bayt öğeler: öğe sayısı günler: geçmişin saklanacağı gün sayısı yenileme hızı: öğelerin ortalama yenileme hızı baytlar: tek bir değeri saklamak için gereken bayt sayısı, veri tabanı motoruna bağlıdır, normalde ~90 bayttır. |
Trends |
günler*(öğe/3600)*24*3600*bayt öğeler : öğe sayısı günler : geçmişin saklanması gereken gün sayısı baytlar : tek bir eğilimi saklamak için gereken bayt sayısı, veri tabanı motoruna bağlıdır, normalde ~90 bayttır. |
Events |
günler*olaylar*24*3600*bayt olaylar: saniyedeki olay sayısı. En kötü senaryoda saniyede bir (1) olay. günler: geçmişi saklamak için gereken gün sayısı baytlar: tek bir eğilimi saklamak için gereken bayt sayısı, veri tabanı motoruna bağlıdır, normalde ~330 + olay başına ortalama etiket sayısı * 100 bayt. |
Yani, toplam gerekli disk alanı şu şekilde hesaplanabilir:
Yapılandırma + Geçmiş + Trendler + Olaylar
Disk alanı Zabbix kurulumundan hemen sonra kullanılmayacaktır. Veri tabanı boyutu büyüyecek ve daha sonra bir noktada büyümeyi durduracaktır; bu da yönetici ayarlarına bağlıdır.
Zaman Senkronizasyonu
Zabbix çalışırken sunucuda kesin sistem saatine sahip olmak çok önemlidir. ntpd, ana bilgisayarın saatini diğer makinelerin saatiyle senkronize eden en popüler daemon'dur. Zabbix bileşenlerinin çalıştığı tüm sistemlerde senkronize sistem saatinin korunması şiddetle önerilir.
Ağ Gereksinimleri
Varsayılan yapılandırma için bileşen başına açık portların listesi geçerlidir.
Portlar |
Bileşenler |
Frontend |
http on 80, https on 443 |
Server |
10051 (for use with active proxy/agents) |
Active Proxy |
10051 |
Passive Proxy |
10051 |
Agent2 |
10050 |
Trapper |
|
JavaGateway |
10053 |
WebService |
10053 |
Not: Zabbix ile harici iletişimleri etkinleştirmek için port numaralarının güvenlik duvarında açılması gerekir. Giden TCP bağlantıları genellikle açık güvenlik duvarı ayarları gerektirmez.