Skip to main content

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:

 

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.