[comment]: # ({02b10f8d-02b10f8d})
# 2 Wymagania

[comment]: # ({/02b10f8d-02b10f8d})

[comment]: # ({80330f65-80330f65})
#### Sprzęt

[comment]: # ({/80330f65-80330f65})

[comment]: # ({b619c2b7-4ae00568})
**Pamięć**

Zabbix wymaga zarówno pamięci fizycznej, jak i pamięci dyskowej.
Wymagana ilość pamięci dyskowej zależy oczywiście od liczby hostów i parametrów, które są monitorowane.
Jeśli planujesz przechowywać długą historię monitorowanych parametrów, powinieneś przewidzieć co najmniej kilka gigabajtów, aby mieć wystarczająco dużo miejsca na zapisanie historii w bazie danych.
Każdy proces demona Zabbix wymaga kilku połączeń z serwerem bazy danych.
Ilość pamięci przydzielonej dla połączenia zależy od konfiguracji silnika bazy danych.

::: noteclassic
Im więcej masz pamięci fizycznej, tym szybciej działa baza danych (a tym samym Zabbix).
:::

[comment]: # ({/b619c2b7-4ae00568})

[comment]: # ({69817f9c-7967309a})
**CPU**

Zabbix, a w szczególności baza danych Zabbix, może wymagać znacznych zasobów CPU w zależności od liczby monitorowanych parametrów i wybranego silnika bazy danych.

[comment]: # ({/69817f9c-7967309a})

[comment]: # ({cdbb8a16-1cbee7bf})
**Inny sprzęt**

Port komunikacji szeregowej oraz szeregowy modem GSM są wymagane do korzystania z obsługi powiadomień SMS w Zabbix.
Konwerter USB-do-portu-szeregowego również będzie działać.

[comment]: # ({/cdbb8a16-1cbee7bf})

[comment]: # ({16a741e9-42d1d93e})
#### Przykłady konfiguracji sprzętowej

Tabela zawiera przykłady konfiguracji sprzętowej, przy założeniu platformy **Linux/BSD/Unix**.

Są to przykładowe rozmiary i konfiguracje sprzętowe, od których można zacząć.
Każda instalacja Zabbix jest unikalna.
Upewnij się, że przetestujesz wydajność swojego systemu Zabbix w środowisku testowym lub deweloperskim, aby w pełni zrozumieć swoje wymagania przed wdrożeniem instalacji Zabbix do środowiska produkcyjnego.

|Rozmiar instalacji|Monitorowane metryki^**1**^|Rdzenie CPU/vCPU|Pamięć<br>(GiB)|Baza danych|Amazon EC2^**2**^|
|-|-|-|-|--|--|
|Mała|1 000|2|8|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL|m6i.large/m6g.large|
|Średnia|10 000|4|16|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL|m6i.xlarge/m6g.xlarge|
|Duża|100 000|16|64|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL,<br>Oracle|m6i.4xlarge/m6g.4xlarge|
|Bardzo duża|1 000 000|32|96|MySQL Server,<br>Percona Server,<br>MariaDB Server,<br>PostgreSQL,<br>Oracle|m6i.8xlarge/m6g.8xlarge|

^**1**^ 1 metryka = 1 pozycja + 1 wyzwalacz + 1 wykres<br>
^**2**^ Przykład z użyciem ogólnego przeznaczenia instancji Amazon EC2, z architekturą ARM64 lub x86_64; podczas oceny i testowania instalacji Zabbix przed wdrożeniem do środowiska produkcyjnego należy wybrać odpowiedni typ instancji, taki jak zoptymalizowany pod kątem obliczeń/pamięci/przestrzeni dyskowej.

::: noteclassic
Rzeczywista konfiguracja w bardzo dużym stopniu zależy od liczby aktywnych pozycji i częstotliwości odświeżania (szczegóły można znaleźć w sekcji [rozmiar bazy danych](#database-size) na tej stronie).
W przypadku dużych instalacji zdecydowanie zaleca się uruchomienie bazy danych na oddzielnym serwerze.
:::

[comment]: # ({/16a741e9-42d1d93e})

[comment]: # ({db40fc11-ad0c32cf})
#### Obsługiwane platformy

Ze względu na wymagania bezpieczeństwa oraz krytyczny charakter serwera monitoringu, UNIX jest jedynym systemem operacyjnym, który może stale zapewniać wymaganą wydajność, odporność na awarie i niezawodność.
Zabbix działa na wiodących na rynku wersjach systemów.

Komponenty Zabbix są dostępne i przetestowane dla następujących platform:

|Platforma|Serwer|Agent|Agent 2|Uwagi|
|-|-|-|-|------|
|Linux|x|x|x| |
|Windows|\-|x|x|Agent Zabbix jest obsługiwany we wszystkich desktopowych i serwerowych wersjach systemu od Windows XP (64-bit)/Server 2003.<br><br>Agent Zabbix 2 jest obsługiwany we wszystkich desktopowych i serwerowych wersjach systemu od Windows 10 (32-bit)/Server 2016, ponieważ jest kompilowany wyłącznie przy użyciu [obsługiwanej wersji Go](/manual/installation/requirements#agent-2), aby zapobiec krytycznym lukom bezpieczeństwa. Od Go 1.21 [minimalne wymagane wersje Windows](https://go.dev/wiki/MinimumRequirements#windowswindows) zostały podniesione, co sprawia, że Windows 10/Server 2016 jest minimalną wersją dla agenta Zabbix 2.|
|macOS|x|x|\-| |
|IBM AIX|x|x|\-|Agent Zabbix nie działa na platformach AIX w wersjach niższych niż 6.1 TL07 / 7.1 TL01.|
|FreeBSD|x|x|\-| |
|OpenBSD|x|x|\-| |
|Solaris|x|x|\-| |
|NetBSD|x|x|\-| |
|HP-UX|x|x|\-| |

::: noteclassic
Serwer/agent Zabbix może działać na innych systemach operacyjnych typu Unix.
:::

::: noteimportant
Zabbix wyłącza zrzuty core, jeśli został skompilowany z obsługą szyfrowania, i nie uruchamia się, jeśli system nie pozwala na wyłączenie zrzutów core.
:::

[comment]: # ({/db40fc11-ad0c32cf})

[comment]: # ({5f905dac-323b6241})
#### Wymagane oprogramowanie

Zabbix jest oparty na nowoczesnych serwerach WWW, wiodących silnikach baz danych oraz języku skryptowym PHP.

[comment]: # ({/5f905dac-323b6241})

[comment]: # ({83d8c78d-fd454df8})
##### Oprogramowanie zewnętrzne firm trzecich

Jeśli określono jako obowiązkowe, wymagane oprogramowanie/biblioteka jest bezwzględnie konieczne.
Opcjonalne elementy są potrzebne do obsługi niektórych konkretnych funkcji.

|Software|Mandatory status|Supported versions|Comments|
|--|-|-|------|
|*MySQL/Percona*|One of|8.0.30-9.6.X|Wymagane, jeśli MySQL (lub Percona) jest używany jako baza danych backendowa Zabbix. Wymagany jest silnik InnoDB.<br><br>Dodano obsługę wersji MySQL:<br>- 8.4.X od Zabbix 7.0.1;<br>- 9.0.X od Zabbix 7.0.2;<br>- 9.5.X od Zabbix 7.0.22;<br>- 9.6.X od Zabbix 7.0.25.<br><br>Zalecamy użycie biblioteki [C API (libmysqlclient)](https://dev.mysql.com/downloads/c-api/) do budowania serwer/proxy.|
|*MariaDB*|^|10.5.00-12.2.X|Wymagany jest silnik InnoDB.<br><br>Zalecana wersja to 11.4.<br><br>Zalecamy użycie biblioteki [MariaDB Connector/C](https://downloads.mariadb.org/connector-c/) do budowania serwer/proxy.<br><br>Dodano obsługę wersji MariaDB:<br>- 11.4.X od Zabbix 7.0.1;<br>- 11.5.X od Zabbix 7.0.4;<br>- 12.0.X od Zabbix 7.0.19;<br>- 12.2.X od Zabbix 7.0.25.<br><br>Zobacz także: [Possible deadlocks with MariaDB](/manual/installation/known_issues#possible-deadlocks-with-mysqlmariadb) oraz [Access to UI elements with MariaDB 10.5.1-10.5.9](/manual/installation/known_issues#access-to-ui-elements-with-mariadb-10.5.110.5.9).|
|*Oracle*|^|19c - 21c|Wymagane, jeśli Oracle jest używany jako baza danych backendowa Zabbix.<br>Obsługa Oracle DB jest **wycofana** od Zabbix 7.0.|
|*PostgreSQL*|^|13.0-18.X|Wymagane, jeśli PostgreSQL jest używany jako baza danych backendowa Zabbix.<br>W zależności od rozmiaru instalacji może być konieczne zwiększenie właściwości konfiguracyjnej PostgreSQL *work_mem* (domyślna wartość to 4 MB), aby ilość pamięci używanej przez bazę danych dla określonej operacji była wystarczająca, a wykonanie zapytania nie trwało zbyt długo.<br><br>Dodano obsługę wersji PostgreSQL:<br>- 17.X od Zabbix 7.0.6;<br>- 18.X od Zabbix 7.0.20.|
|*TimescaleDB* for PostgreSQL|^|2.13.0-2.26.X|Wymagane, jeśli TimescaleDB jest używany jako rozszerzenie bazy danych PostgreSQL. Upewnij się, że instalujesz TimescaleDB Community Edition, która obsługuje kompresję.<br><br>Zwróć uwagę, że PostgreSQL 15 jest obsługiwany od TimescaleDB 2.10.<br>Więcej informacji na temat zgodności wersji PostgreSQL i TimescaleDB można znaleźć w [dokumentacji TimescaleDB](https://docs.tigerdata.com/self-hosted/latest/upgrades/upgrade-pg/).<br><br>Dodano obsługę wersji TimescaleDB:<br>- 2.15.X od Zabbix 7.0.1;<br>- 2.16.X od Zabbix 7.0.4;<br>- 2.17.X od Zabbix 7.0.6;<br>- 2.18.X od Zabbix 7.0.10;<br>- 2.19.X od Zabbix 7.0.13;<br>- 2.20.X od Zabbix 7.0.17;<br>- 2.21.X od Zabbix 7.0.18;<br>- 2.22.X od Zabbix 7.0.20;<br>- 2.23.X od Zabbix 7.0.22;<br>- 2.24.X od Zabbix 7.0.23;<br>- 2.25.X od Zabbix 7.0.24;<br>- 2.26.X od Zabbix 7.0.25.|
|*SQLite*|Optional|3.3.5-3.53.X|SQLite jest obsługiwany tylko z proxy Zabbix. Wymagany, jeśli SQLite jest używany jako baza danych proxy Zabbix.<br><br>Obsługa wersji SQLite:<br>- 3.53.X od Zabbix 7.0.25.|
|*Elasticsearch*|^|7.X|Elasticsearch jest obsługiwany tylko z serwerami Zabbix, wyłącznie do przechowywania danych historycznych. Obsługa Elasticsearch jest obecnie eksperymentalna. Zobacz także wymagane oprogramowanie dla [serwer/proxy](#serverproxy).|
|*smartmontools*|^|7.1 or later|Wymagane dla Zabbix agent 2.|
|*who*|^| |Wymagane dla pluginu liczby użytkowników.|
|*dpkg*|^| |Wymagane dla pluginu system.sw.packages.|
|*pkgtool*|^| |Wymagane dla pluginu system.sw.packages.|
|*rpm*|^| |Wymagane dla pluginu system.sw.packages.|
|*pacman*|^| |Wymagane dla pluginu system.sw.packages.|
|*q applets*|^| |`qlist` i `qsize`, jako część [q applets](https://wiki.gentoo.org/wiki/Q_applets), są wymagane dla pluginu system.sw.packages w Gentoo Linux.|

::: noteclassic
Chociaż Zabbix może działać z bazami danych dostępnymi w systemach operacyjnych, dla najlepszych rezultatów zalecamy korzystanie z baz danych zainstalowanych z oficjalnych repozytoriów dostawcy bazy danych.
:::

[comment]: # ({/83d8c78d-fd454df8})

[comment]: # ({0987df3c-75f0586e})
##### frontend

Minimalna obsługiwana szerokość ekranu dla frontend Zabbix wynosi 1200 px.

Jeśli określono jako wymagane, wymagane oprogramowanie/biblioteka jest bezwzględnie konieczne.
Elementy opcjonalne są potrzebne do obsługi niektórych konkretnych funkcji.

|Software|Mandatory status|Supported versions|Comments|
|--|-|-|------|
|*PHP*|Yes|8.0.0 - 8.5.X|Dodano obsługę wersji PHP:<br>- 8.4.X od Zabbix 7.0.10;<br>- 8.5.X od Zabbix 7.0.25.|
|*Apache*|One of|2.4 or later| |
|*Nginx*|^|1.20 or later| |
|*MySQL*|One of|See [Third-party external surrounding software](/manual/installation/requirements#thirdparty-external-surrounding-software)| |
|*PostgreSQL*|^|^| |
|*Oracle*|^|^| |
|***Rozszerzenia PHP***|<|<|<|
|*mysqli*|Yes| |Wymagane, jeśli MySQL jest używany jako baza danych backendu Zabbix.|
|*pgsql*|^| |Wymagane, jeśli PostgreSQL jest używany jako baza danych backendu Zabbix.|
|*oci8*|^| |Wymagane, jeśli Oracle jest używany jako baza danych backendu Zabbix.|
|*bcmath*|^| |php-bcmath (*--enable-bcmath*)|
|*mbstring*|^| |php-mbstring (*--enable-mbstring*)|
|*sockets*|^| |php-net-socket (*--enable-sockets*); wymagane do obsługi skryptów użytkownika.|
|*gd*|^|2.0.28 or later|php-gd (jeśli dostarczany jako osobny pakiet przez dystrybutora); rozszerzenie PHP GD musi obsługiwać obrazy PNG (*--with-png-dir*), obrazy JPEG (*--with-jpeg-dir*) oraz FreeType 2 (*--with-freetype-dir*). Wersja 2.3.0 lub nowsza może być wymagana, aby uniknąć możliwego [nakładania się tekstu na wykresach](/manual/installation/known_issues#text-overlapping) w niektórych językach frontend.|
|*libxml*|^|2.6.15 or later|php-xml (jeśli dostarczany jako osobny pakiet przez dystrybutora)|
|*xmlwriter*|^| |php-xmlwriter (jeśli dostarczany jako osobny pakiet przez dystrybutora)|
|*xmlreader*|^| |php-xmlreader (jeśli dostarczany jako osobny pakiet przez dystrybutora)|
|*ctype*|^| |php-ctype (*--enable-ctype*)|
|*session*|^| |php-session (jeśli dostarczany jako osobny pakiet przez dystrybutora)|
|*ldap*|No| |php-ldap; wymagane do uwierzytelniania LDAP.|
|*openssl*|^| |php-openssl; wymagane do uwierzytelniania SAML.|
|*gettext*|^| |php-gettext (*--with-gettext*); wymagane do tłumaczeń.|
|*cURL*|^| |php-curl; wymagane dla Duo Universal Prompt [MFA](/manual/web_interface/frontend_sections/users/authentication/mfa).|

Biblioteki frontend innych firm dostarczane z Zabbix:

|Library|Mandatory status|Supplied version|Comments|
|--|-|-|------|
|[jQuery JavaScript Library](https://jquery.com/)|Yes|3.6.0|Biblioteka JavaScript, która upraszcza tworzenie aplikacji działających w różnych przeglądarkach.|
|[jQuery UI](https://jqueryui.com/)|^|1.12.1|Zestaw interakcji interfejsu użytkownika, efektów, widżetów i motywów zbudowany na bazie jQuery.|
|[SAML PHP Toolkit](https://github.com/onelogin/php-saml)|^|4.3.1|Zestaw narzędzi PHP, który dodaje obsługę uwierzytelniania SAML 2.0, umożliwiając logowanie do Zabbix.<br><br>Historia dostarczanych wersji:<br>- 4.0.0 od Zabbix 7.0.0;<br>- 4.3.1 od Zabbix 7.0.24 (zalecane).|
|[Duo Universal PHP library](https://github.com/duosecurity/duo_universal_php)|^|1.1.2|Biblioteka PHP, która dodaje obsługę uwierzytelniania wieloskładnikowego Duo Universal Prompt dla Zabbix.<br><br>Historia dostarczanych wersji:<br>- 1.0.2 od Zabbix 7.0.0;<br>- 1.1.0 od Zabbix 7.0.23;<br>- 1.1.2 od Zabbix 7.0.26 (zalecane).|
|[Symfony Yaml Component](https://symfony.com/doc/current/components/yaml.html)|^|5.1.0|Dodaje obsługę eksportu i importu elementów konfiguracji Zabbix w formacie YAML.|

::: noteclassic
Zabbix może również działać na wcześniejszych wersjach Apache, MySQL, Oracle i PostgreSQL.
:::

::: noteimportant
W przypadku innych czcionek niż domyślna DejaVu może być wymagane użycie funkcji PHP [imagerotate](http://php.net/manual/en/function.imagerotate.php).
Jeśli jej brakuje, czcionki te mogą być renderowane nieprawidłowo podczas wyświetlania wykresu.
Ta funkcja jest dostępna tylko wtedy, gdy PHP jest skompilowany z dołączonym GD, co nie ma miejsca w Debianie i innych dystrybucjach.
:::

Biblioteki innych firm używane do tworzenia i debugowania kodu frontend Zabbix:

|Library|Mandatory status|Minimum version|Description|
|--|-|-|------|
|[Composer](https://getcomposer.org/)|No|2.4.1|Menedżer pakietów na poziomie aplikacji dla PHP, który zapewnia standardowy format zarządzania zależnościami oprogramowania PHP i wymaganych bibliotek.|
|[PHPUnit](https://phpunit.de/)|^|8.5.29|Framework testów jednostkowych PHP do testowania frontend Zabbix.|
|[SASS](https://sass-lang.com/)|^|3.4.22|Język skryptowy preprocesora, który jest interpretowany i kompilowany do kaskadowych arkuszy stylów (CSS).|

[comment]: # ({/0987df3c-75f0586e})

[comment]: # ({8e3571e9-dda86afe})
##### Przeglądarka internetowa po stronie klienta

Pliki cookie i JavaScript muszą być włączone.

Obsługiwane są najnowsze stabilne wersje Google Chrome, Mozilla Firefox, Microsoft Edge, Apple Safari i Opera.

::: notewarning
Stosowana jest polityka same-origin dla IFrame, co oznacza, że Zabbix nie może być osadzony w ramkach w innej domenie.<br><br>
Jednak strony osadzone w ramce Zabbix będą miały dostęp do frontend Zabbix (przez JavaScript), jeśli strona osadzona w ramce i frontend Zabbix znajdują się w tej samej domenie.
Strona taka jak `http://secure-zabbix.com/cms/page.html`, jeśli zostanie umieszczona na pulpitach w `http://secure-zabbix.com/zabbix/`, będzie miała pełny dostęp JS do Zabbix.
:::

[comment]: # ({/8e3571e9-dda86afe})

[comment]: # ({b6a534aa-096d332c})
##### Server/proxy

Jeśli określono jako obowiązkowe, wymagane oprogramowanie/biblioteka jest bezwzględnie konieczne.
Opcjonalne są potrzebne do obsługi niektórych konkretnych funkcji.

|Requirement|Mandatory status|Description|
|--|-|-------|
|*libpcre/libpcre2*|One of|Biblioteka PCRE/PCRE2 jest wymagana do obsługi [Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE).<br>Nazwa może się różnić w zależności od dystrybucji GNU/Linux, na przykład 'libpcre3' lub 'libpcre1'. Obsługiwane są PCRE v8.x i PCRE2 v10.x.|
|*libevent*|Yes|Wymagana do komunikacji międzyprocesowej. Wersja 2.0.10 lub nowsza (od Zabbix 7.0.4; wcześniej 1.4).|
|*libevent-pthreads*|^|Wymagana do komunikacji międzyprocesowej.|
|*libpthread*|^|Wymagana do obsługi mutexów i blokad odczytu-zapisu (może być częścią libc).|
|*libresolv*|^|Wymagana do rozwiązywania nazw DNS (może być częścią libc).|
|*libiconv*|^|Wymagana do kodowania/konwersji formatów tekstu. Obowiązkowa dla serwera Zabbix w systemie Linux.|
|*libz*|^|Wymagana do obsługi kompresji.|
|*libm*|^|Biblioteka matematyczna. Wymagana tylko przez serwer Zabbix.|
|*libmysqlclient*|One of|Wymagana, jeśli używany jest MySQL.|
|*libmariadb*|^|Wymagana, jeśli używany jest MariaDB.|
|*libclntsh*|^|Wymagana, jeśli używany jest Oracle; wersja *libclntsh* musi być zgodna z wersją używanej bazy Oracle lub wyższa.|
|*libpq5*|^|Wymagana, jeśli używany jest PostgreSQL; wersja *libpq5* musi być zgodna z wersją używanej bazy PostgreSQL lub wyższa.|
|*libsqlite3*|^|Wymagana, jeśli używany jest SQLite. Wymagana tylko dla proxy Zabbix.|
|*libOpenIPMI*|No|Wymagana do obsługi IPMI. Wymagana tylko przez serwer Zabbix.|
|*libssh2* or *libssh*|^|Wymagana dla [kontroli SSH](/manual/config/items/itemtypes/ssh_checks#overview). Wersja 1.0 lub nowsza (libssh2); 0.9.0 lub nowsza (libssh).|
|*libcurl*|^|Wymagana dla następujących funkcji:<br>- pozycje [Web monitoring](/manual/web_monitoring), [VMware monitoring](/manual/vm_monitoring) i [HTTP agent](/manual/config/items/itemtypes/http) (dla wszystkich: wersja 7.19.1 lub nowsza);<br>- pozycje Zabbix agent [web.page.\*](/manual/config/items/itemtypes/zabbix_agent#web.page.get) (wersja 7.19.1 lub nowsza; zobacz też wymagania dla [agent](#agent));<br>- [SMTP authentication](/manual/config/notifications/media/email#configuration) (wersja 7.20.0 lub nowsza);<br>- [Elasticsearch](/manual/appendix/install/elastic_search_setup) (wersja 7.28.0 lub nowsza).<br>Zalecana jest wersja 7.28.0 lub nowsza dla wszystkich funkcji.<br>Aby używać zaktualizowanych funkcji cURL dla pozycji `web.page.*`, uruchom ponownie serwer/proxy Zabbix.<br>Do uwierzytelniania SMTP w czasie działania użyj pakietu `libcurl-full`.|
|*libxml2*|^|Wymagana do monitorowania VMware i wstępnego przetwarzania XML XPath.|
|*net-snmp*|^|Wymagana do obsługi SNMP. Wersja 5.3.0 lub nowsza.<br> Obsługa silnych protokołów szyfrowania (AES192/AES192C, AES256/AES256C) jest dostępna od biblioteki net-snmp w wersji 5.8; w systemach opartych na RHEL 8+ zaleca się używanie net-snmp 5.8.15 lub nowszej.|
|*libunixodbc*|^|Wymagana do monitorowania baz danych.|
|*libgnutls* or *libopenssl*|^|Wymagana podczas używania [szyfrowania](/manual/encryption#compiling-zabbix-with-encryption-support).<br>Minimalne wersje: *libgnutls* - 3.1.18, *libopenssl* - 1.0.1|
|*libldap*|^|Wymagana do obsługi LDAP.|
|*fping*|^|Wymagana dla [pozycji ICMP ping](/manual/config/items/itemtypes/simple_checks#icmp-pings).|
|*c-ares*|^|Wymagana do asynchronicznego rozwiązywania DNS, jeśli Zabbix jest skonfigurowany z opcją `--with-ares`. W przeciwnym razie użyta zostanie *libevent*.<br>Obsługiwana od Zabbix 7.0.11; minimalna wersja: 1.16.0|

[comment]: # ({/b6a534aa-096d332c})

[comment]: # ({649b444c-800c8308})
##### Agent

|Requirement|Mandatory status|Description|
|--|-|-------|
|*libpcre/libpcre2*|One of|Wymagana jest biblioteka PCRE/PCRE2 do obsługi [Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE).<br>Nazewnictwo może się różnić w zależności od dystrybucji GNU/Linux, na przykład 'libpcre3' lub 'libpcre1'. Obsługiwane są PCRE v8.x oraz PCRE2 v10.x.<br>Wymagana do monitorowania logów. Wymagana również w systemie Windows.|
|*libpthread*|Yes|Wymagana do obsługi mutexów i blokad odczytu-zapisu (może być częścią libc). Niewymagana w systemie Windows.|
|*libresolv*|^|Wymagana do rozwiązywania DNS (może być częścią libc). Niewymagana w systemie Windows.|
|*libiconv*|^|Wymagana do konwersji kodowania/formatu tekstu do UTF-8 w pozycjach logów, zawartości plików, wyrażeń regularnych plików oraz pozycjach regmatch (może być częścią libc). Niewymagana w systemie Windows.|
|*libgnutls* or *libopenssl*|No|Wymagana, jeśli używane jest [szyfrowanie](/manual/encryption#compiling-zabbix-with-encryption-support).<br>Minimalne wersje: *libgnutls* - 3.1.18, *libopenssl* - 1.0.1<br>W systemie Microsoft Windows wymagany jest OpenSSL 1.1.1 lub nowszy.|
|*libldap*|^|Wymagana, jeśli używany jest LDAP. Niewspierana w systemie Windows.|
|*libcurl*|^|Wymagana do rozszerzonej obsługi pozycji Zabbix agent [web.page.\*](/manual/config/items/itemtypes/zabbix_agent#web.page.get).<br>Bez libcurl dostępna jest podstawowa funkcjonalność (np. web.page.get\[http://example.com\]). Z libcurl agent obsługuje dodatkowe funkcje, takie jak adresy URL HTTP z poświadczeniami (np. http://user:password@example.com) oraz adresy URL HTTPS.<br>Wymagana jest wersja 7.19.1 lub nowsza (zalecana jest 7.28.0 lub nowsza).<br>Aby używać zaktualizowanych funkcji cURL, uruchom ponownie Zabbix agent.|
|*libmodbus*|^|Wymagana tylko wtedy, gdy używane jest monitorowanie Modbus.<br>Wersja 3.0 lub nowsza.|

[comment]: # ({/649b444c-800c8308})

[comment]: # ({916f997e-4aa86212})
##### Agent 2

|Requirement|Mandatory status|Description|
|--|-|-------|
|*Go*|Yes|Wymagane do zbudowania Zabbix agent 2 i jego wtyczek ze źródeł.<br>Obsługiwany jest Go 1.24.10 lub nowszy. Instrukcje instalacji znajdują się na [go.dev](https://go.dev/doc/install).<br>Biblioteki Go używane przez Zabbix agent 2 i jego wtyczki są wymienione w repozytorium Git Zabbix (biblioteki oznaczone jako `indirect` w repozytorium są zależnościami innych wymaganych bibliotek):<br>- [Zabbix agent 2](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/src/go/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [Plugin support](https://git.zabbix.com/projects/AP/repos/plugin-support/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [PostgreSQL](https://git.zabbix.com/projects/AP/repos/postgresql/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [MongoDB](https://git.zabbix.com/projects/AP/repos/mongodb/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [MSSQL](https://git.zabbix.com/projects/AP/repos/mssql/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [Ember+](https://git.zabbix.com/projects/AP/repos/ember-plus/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)<br>- [Example plugin](https://git.zabbix.com/projects/AP/repos/example/browse/go.mod?at=refs%2Fheads%2Frelease%2F7.0)|
|*libpcre/libpcre2*|One of|Biblioteka PCRE/PCRE2 jest wymagana do obsługi [Perl Compatible Regular Expression](https://en.wikipedia.org/wiki/Perl_Compatible_Regular_Expressions) (PCRE).<br>Nazwa może się różnić w zależności od dystrybucji GNU/Linux, na przykład „libpcre3” lub „libpcre1”. Obsługiwane są PCRE v8.x oraz PCRE2 v10.x.<br>Wymagane do monitorowania logów. Wymagane również w systemie Windows.|
|*libopenssl*|No|Wymagane podczas używania szyfrowania.<br>Na platformach UNIX wymagana jest biblioteka OpenSSL 1.0.1 lub nowsza.<br>Biblioteka OpenSSL musi mieć włączoną obsługę PSK. LibreSSL nie jest obsługiwany.<br>W systemach Microsoft Windows wymagany jest OpenSSL 1.1.1 lub nowszy.|

[comment]: # ({/916f997e-4aa86212})

[comment]: # ({5a0b77fe-3481c090})
##### Usługa web

Najnowsza stabilna wersja Google Chrome jest obsługiwana do generowania zaplanowanych raportów przy użyciu usługi web Zabbix.

Wymagana wersja Go do budowania usługi web jest taka sama jak ta używana dla [Zabbix agent 2](#agent-2).

[comment]: # ({/5a0b77fe-3481c090})

[comment]: # ({941b8937-149075a3})
##### Java gateway

Jeśli Zabbix został pozyskany z repozytorium kodu źródłowego lub z archiwum, wszystkie niezbędne zależności są już zawarte w drzewie źródeł.

Jeśli Zabbix został pozyskany z pakietu dostarczanego przez dystrybucję, wszystkie niezbędne zależności są już zapewniane przez system pakietów.

W obu powyższych przypadkach oprogramowanie jest gotowe do użycia i nie są wymagane żadne dodatkowe pliki do pobrania.

Jeśli jednak chcesz dostarczyć własne wersje tych zależności (na przykład podczas przygotowywania pakietu dla jakiejś dystrybucji Linuksa), poniżej znajduje się lista wersji bibliotek, z którymi Java gateway działa poprawnie.
Zabbix może również działać z innymi wersjami tych bibliotek.

Poniższa tabela zawiera listę plików JAR, które są obecnie dołączane do Java gateway w oryginalnym kodzie:

|Library|Mandatory status|Bundled version|Comments|
|--|-|-|------|
|[android-json](https://mvnrepository.com/artifact/com.vaadin.external.google/android-json)|Tak|4.3r1|JSON (JavaScript Object Notation) to lekki format wymiany danych. Jest to zgodna z org.json implementacja Androida wyodrębniona z Android SDK.|
|[logback-classic](https://mvnrepository.com/artifact/ch.qos.logback/logback-classic)|^|1.5.16| |
|[logback-core](https://mvnrepository.com/artifact/ch.qos.logback/logback-core)|^|1.5.16| |
|[slf4j-api](https://mvnrepository.com/artifact/org.slf4j/slf4j-api)|^|2.0.16| |

Java gateway można zbudować przy użyciu zarówno Oracle Java, jak i otwartego OpenJDK (wersja 1.6 lub nowsza).
Pakiety dostarczane przez Zabbix są kompilowane przy użyciu OpenJDK.
Poniższa tabela zawiera listę pakietów OpenJDK używanych do budowania pakietów Zabbix dla poszczególnych dystrybucji:

|Distribution|OpenJDK package|
|---|--------|
|AlmaLinux 9|`java-11-openjdk-devel` (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)|
|AlmaLinux 8|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.332.b09-2; arm64: 1.8.0.382.b05-2)|
|Amazon Linux 2023|`java-22-amazon-corretto-devel` (amd64, arm64: 22.0.2+9-1)|
|CentOS Stream 9|`java-11-openjdk-devel` (amd64, arm64: 11.0.18.0.10-3)|
|CentOS Stream 8|`java-1.8.0-openjdk-devel` (amd64, arm64: 1.8.0.362.b08-3)|
|CentOS 7|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.282.b08-1)|
|Debian 12|`default-jdk-headless` (amd64, arm64: 2:1.17-74)|
|Debian 11|`default-jdk-headless` (amd64: 2:1.11-72)|
|OpenSUSE Leap 15|`java-17-openjdk-devel` (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1)|
|Oracle Linux 9|`java-11-openjdk-devel` (amd64: 11.0.19.0.7-4.0.1; arm64: 11.0.20.0.8-2.0.1)|
|Oracle Linux 8|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.372.b07-4.0.1); `java-11-openjdk-devel` (arm64: 11.0.20.0.8-3.0.1)|
|Oracle Linux 7|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.282.b08-1)|
|Raspberry Pi OS 12|`default-jdk-headless` (arm64, armhf: 2:1.17-74)|
|Raspberry Pi OS 11|`default-jdk-headless` (arm64: 2:1.11-72; armhf: 2:1.11-72+b4)|
|RHEL 9|`java-11-openjdk-devel` (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)|
|RHEL 8|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.372.b07-4; arm64: 1.8.0.382.b05-2)|
|RHEL 7|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.282.b08-1)|
|Rocky Linux 9|`java-11-openjdk-devel` (amd64: 11.0.19.0.7-4; arm64: 11.0.20.0.8-3)|
|Rocky Linux 8|`java-1.8.0-openjdk-devel` (amd64: 1.8.0.372.b07-4; arm64: 1.8.0.382.b05-2)|
|SLES 15|`java-17-openjdk-devel` (amd64: 17.0.5.0-150400.3.9.3; arm64: 17.0.8.0-150400.3.27.1)|
|Ubuntu 24.04|`default-jdk-headless` (amd64, arm64: 2:1.21-75+exp1)|
|Ubuntu 22.04|`default-jdk-headless` (amd64, arm64: 2:1.11-72build2)|
|Ubuntu 20.04|`default-jdk-headless` (amd64, arm64: 2:1.11-72)|

[comment]: # ({/941b8937-149075a3})

[comment]: # ({77b8472e-c8024c35})
#### Domyślne numery portów

Poniższa lista otwartych portów dla poszczególnych komponentów ma zastosowanie do konfiguracji domyślnej:

|Komponent Zabbix|Numer portu|Protokół|Typ połączenia|
|-------|-------|-------|-------|
|Zabbix agent|10050|TCP|na żądanie|
|Zabbix agent 2|10050|TCP|na żądanie|
|Zabbix serwer|10051|TCP|na żądanie|
|Zabbix proxy|10051|TCP|na żądanie|
|Zabbix Java gateway|10052|TCP|na żądanie|
|Usługa internetowa Zabbix|10053|TCP|na żądanie|
|Zabbix frontend|80|HTTP|na żądanie|
|^|443|HTTPS|na żądanie|
|Zabbix trapper|10051 |TCP| na żądanie|

::: noteclassic
Numery portów powinny być otwarte w zaporze sieciowej, aby umożliwić komunikację Zabbix.
Wychodzące połączenia TCP zwykle nie wymagają jawnych ustawień zapory sieciowej.
:::

[comment]: # ({/77b8472e-c8024c35})

[comment]: # ({b4905495-1d73b238})
#### Rozmiar bazy danych

Dane konfiguracyjne Zabbix wymagają stałej ilości miejsca na dysku i nie zwiększają się znacząco.

Rozmiar bazy danych Zabbix zależy głównie od następujących zmiennych, które określają ilość przechowywanych danych historycznych:

-   Liczba przetwarzanych wartości na sekundę

Jest to średnia liczba nowych wartości, które serwer Zabbix otrzymuje co sekundę.
Na przykład, jeśli mamy 3000 pozycji do monitorowania z interwałem odświeżania 60 sekund, liczba wartości na sekundę jest obliczana jako 3000/60 = **50**.

Oznacza to, że co sekundę do bazy danych Zabbix dodawanych jest 50 nowych wartości.

-   Ustawienia housekeepera dla historii

Zabbix przechowuje wartości przez stały okres czasu, zwykle kilka tygodni lub miesięcy.
Każda nowa wartość wymaga określonej ilości miejsca na dysku na dane i indeks.

Jeśli więc chcemy przechowywać historię przez 30 dni i otrzymujemy 50 wartości na sekundę, całkowita liczba wartości wyniesie około (**30**\*24\*3600)\* **50** = 129.600.000, czyli około 130 mln wartości.

W zależności od używanego silnika bazy danych oraz typu otrzymywanych wartości (liczby zmiennoprzecinkowe, liczby całkowite, ciągi znaków, pliki logów itp.), ilość miejsca na dysku potrzebna do przechowywania pojedynczej wartości może wynosić od 40 bajtów do setek bajtów.
Zwykle dla numerycznych pozycji jest to około 90 bajtów na wartość^**2**^.
W naszym przypadku oznacza to, że 130 mln wartości będzie wymagać 130 mln \* 90 bajtów = **10.9GB** miejsca na dysku.

::: noteclassic
Rozmiaru wartości tekstowych/logów dla pozycji nie da się dokładnie przewidzieć, ale można przyjąć około 500 bajtów na wartość.
:::

-   Ustawienie housekeepera dla trendów

Zabbix przechowuje 1-godzinny zestaw wartości maks./min./śr./liczba dla każdej pozycji w tabeli **trends**.
Dane te są używane do analizy trendów i wykresów długookresowych.
Okres jednej godziny nie może być dostosowany.

Baza danych Zabbix, w zależności od typu bazy danych, wymaga około 90 bajtów dla każdego takiego zestawu.
Załóżmy, że chcemy przechowywać dane trendów przez 5 lat.
Wartości dla 3000 pozycji będą wymagać 3000\*24\*365\* **90** = **2.2GB** rocznie, czyli **11GB** przez 5 lat.

-   Ustawienia housekeepera dla zdarzeń

Każde zdarzenie Zabbix wymaga około 250 bajtów miejsca na dysku^**1**^.
Trudno oszacować liczbę zdarzeń generowanych codziennie przez Zabbix.
W najgorszym przypadku można założyć, że Zabbix generuje jedno zdarzenie na sekundę.

Dla każdego odzyskanego zdarzenia tworzony jest rekord event\_recovery.
Zwykle większość zdarzeń zostanie odzyskana, więc można założyć jeden rekord event\_recovery na zdarzenie.
Oznacza to dodatkowe 80 bajtów na zdarzenie.

Opcjonalnie zdarzenia mogą mieć tagi, przy czym każdy rekord tagu wymaga około 100 bajtów miejsca na dysku^**1**^.
Liczba tagów na zdarzenie (\#tags) zależy od konfiguracji.
Każde zdarzenie będzie więc wymagać dodatkowo \#tags \* 100 bajtów miejsca na dysku.

Oznacza to, że jeśli chcemy przechowywać zdarzenia przez 3 lata, będzie to wymagać 3\*365\*24\*3600\* (250+80+\#tags\*100) = **\~30GB**+\#tags\*100B miejsca na dysku^**2**^.

::: noteclassic
^**1**^ Więcej w przypadku nazw zdarzeń, tagów i wartości zawierających znaki spoza ASCII.<br>
^**2**^ Przybliżenia rozmiaru opierają się na MySQL i mogą się różnić w przypadku innych baz danych.
:::

Tabela zawiera wzory, które można wykorzystać do obliczenia ilości miejsca na dysku wymaganego przez system Zabbix:

|Parametr|Wzór na wymagane miejsce na dysku (w bajtach)|
|---------|------------------------------------------|
|*Konfiguracja Zabbix*|Stały rozmiar. Zwykle 10MB lub mniej.|
|*Historia*|days\*(items/refresh rate)\*24\*3600\*bytes<br>items : liczba pozycji<br>days : liczba dni przechowywania historii<br>refresh rate : średni interwał odświeżania pozycji<br>bytes : liczba bajtów wymagana do przechowywania pojedynczej wartości, zależy od silnika bazy danych, zwykle \~90 bajtów.|
|*Trendy*|days\*(items/3600)\*24\*3600\*bytes<br>items : liczba pozycji<br>days : liczba dni przechowywania historii<br>bytes : liczba bajtów wymagana do przechowywania pojedynczego trendu, zależy od silnika bazy danych, zwykle \~90 bajtów.|
|*Zdarzenia*|days\*events\*24\*3600\*bytes<br>events : liczba zdarzeń na sekundę. Jedno (1) zdarzenie na sekundę w najgorszym przypadku.<br>days : liczba dni przechowywania historii<br>bytes : liczba bajtów wymagana do przechowywania pojedynczego zdarzenia, zależy od silnika bazy danych, zwykle \~330 + średnia liczba tagów na zdarzenie \* 100 bajtów.|

Całkowite wymagane miejsce na dysku można więc obliczyć jako:

**Konfiguracja + Historia + Trendy + Zdarzenia**

Miejsce na dysku NIE zostanie wykorzystane natychmiast po instalacji Zabbix.
Rozmiar bazy danych będzie rósł, a następnie w pewnym momencie przestanie się zwiększać, w zależności od ustawień housekeepera.

[comment]: # ({/b4905495-1d73b238})

[comment]: # ({9c205fa1-520ea0fa})
#### Synchronizacja czasu

Bardzo ważne jest, aby na serwerze, na którym działa Zabbix, czas systemowy był precyzyjnie ustawiony.
[ntpd](http://www.ntp.org/) to najpopularniejszy demon synchronizujący czas hosta z czasem innych maszyn.
Zdecydowanie zaleca się utrzymywanie zsynchronizowanego czasu systemowego na wszystkich systemach,
na których działają komponenty Zabbix.

[comment]: # ({/9c205fa1-520ea0fa})

[comment]: # ({ec5f1545-9e23ba76})
#### Wymagania sieciowe

Poniższa lista otwartych portów dla poszczególnych komponentów ma zastosowanie do konfiguracji domyślnej.

|Components|Port|
|------------|---------------|
|Frontend|http na 80, https na 443|
|Server|10051 (do użycia z aktywnym proxy/agentami)|
|Active Proxy |10051|
|Passive Proxy|10051|
|Agent2|10050|
|Trapper| |
|JavaGateway|10052|
|WebService|10053|

::: noteclassic
Numery portów powinny być otwarte w zaporze sieciowej, aby umożliwić zewnętrzną komunikację z Zabbix.
Wychodzące połączenia TCP zwykle nie wymagają jawnych ustawień zapory sieciowej.
:::

[comment]: # ({/ec5f1545-9e23ba76})
