4 Installation from packages
Przegląd
Oficjalne pakiety Zabbix 7.4 są dostępne na stronie Zabbix, gdzie można wybrać system operacyjny i komponent Zabbix, aby wygenerować wymagane instrukcje instalacji oraz polecenia. Upewnij się, że zapoznasz się z poniższymi uwagami dotyczącymi instalacji pakietów oraz stroną Instalacja i konfiguracja.
Pakiety są dostępne dla następujących dystrybucji Linux:
- Red Hat Enterprise Linux i jego pochodnych: AlmaLinux, Amazon Linux 2023, CentOS Stream, CentOS 7, Oracle Linux, Rocky Linux
- Debian, Ubuntu, Raspberry Pi OS, Raspbian
- SUSE Linux Enterprise Server, openSUSE Leap
Niektóre dystrybucje systemu operacyjnego (w szczególności dystrybucje oparte na Debianie) udostępniają własne pakiety Zabbix. Pakiety te nie są obsługiwane przez Zabbix i mogą być nieaktualne lub nie zawierać najnowszych funkcji oraz poprawek błędów. Zaleca się korzystanie wyłącznie z oficjalnych pakietów z Oficjalnego repozytorium Zabbix. Jeśli wcześniej zainstalowano Zabbix z repozytorium systemu operacyjnego, zobacz kroki dotyczące aktualizacji pakietów Zabbix z repozytoriów systemu operacyjnego.
Pakiety obsługują bazę danych MySQL/PostgreSQL oraz frontend WWW Apache/Nginx. Należy pamiętać, że serwer Zabbix i proxy nie mogą współdzielić tej samej bazy danych; użyj różnych nazw baz danych, jeśli oba są zainstalowane na tym samym host.
W razie potrzeby osobne pakiety dla Zabbix agent/agent 2, Zabbix get i Zabbix sender są dostępne w Oficjalnym repozytorium Zabbix.
Zabbix udostępnia również wstępnie skompilowane binaria Zabbix agent dla systemów innych niż Linux; zobacz:
- Instalacja agent dla Windows z MSI
- Instalacja agent dla macOS z PKG
- Starsze binaria (dla starszych lub mniej popularnych systemów, takich jak HP-UX, NetBSD, Tru64 oraz starsze wersje SLES)
Uwagi dotyczące instalacji pakietów
Poniższe uwagi dotyczą wszystkich systemów:
- Jeśli używasz PostgreSQL, ustawienie
DBHost=localhost(lub adresu IP) w konfiguracji Zabbix serwer/proxy powoduje, że PostgreSQL używa gniazda sieciowego zamiast lokalnego gniazda UNIX; zobacz Konfiguracja SELinux, aby uzyskać powiązane instrukcje konfiguracji. - Jeśli używasz TimescaleDB, zobacz dodatkowe informacje dotyczące konfiguracji TimescaleDB.
- Jeśli instalujesz Zabbix Java gateway (do monitorowania aplikacji JMX), zobacz dodatkowe instrukcje konfiguracji dla systemów opartych na RHEL oraz opartych na Debianie.
- Aby uruchamiać agent Zabbix jako root, zobacz Uruchamianie agenta jako root.
Poniższe uwagi dotyczą RHEL i jego pochodnych:
- Jeśli włączyłeś repozytorium EPEL dla EL9, które również dostarcza pakiety Zabbix, należy je wykluczyć z rozwiązywania zależności pakietów przed instalacją oficjalnych pakietów Zabbix; zobacz Przypadkowa instalacja pakietów Zabbix z EPEL.
- Aby instalować pakiety Zabbix w środowiskach Red Hat UBI, zobacz Pakiety Zabbix dla RHEL w środowiskach Red Hat UBI.
- Do używania pozycji ICMP ping pakiety dla
fpingsą również dostępne w Oficjalnym repozytorium Zabbix.
Konfiguracja SELinux
Zabbix używa komunikacji międzyprocesowej opartej na gniazdach. W systemach, w których włączony jest Security-Enhanced Linux (SELinux), może być konieczne dodanie reguł SELinux, aby umożliwić Zabbix tworzenie/używanie gniazd domeny UNIX w katalogu SocketDir. Pliki gniazd są używane przez serwer Zabbix (alerter, preprocessing, IPMI) oraz proxy Zabbix (IPMI) i są obecne, gdy proces jest uruchomiony.
Przy włączonym SELinux w trybie enforcing wykonaj następujące polecenia, aby umożliwić komunikację między frontendem Zabbix a serwerem:
Dla RHEL 7 (i nowszych), AlmaLinux, CentOS Stream, Oracle Linux, Rocky Linux 8 (i nowszych):
setsebool -P httpd_can_connect_zabbix on
Jeśli baza danych jest dostępna przez sieć (w tym localhost dla PostgreSQL), zezwól również frontendowi Zabbix na połączenie z bazą danych:
setsebool -P httpd_can_network_connect_db on
Dla RHEL wcześniejszych niż 7:
setsebool -P httpd_can_network_connect on
setsebool -P zabbix_can_network on
Po zastosowaniu ustawień SELinux uruchom ponownie Apache:
systemctl restart httpd
Opcjonalnie możesz zainstalować gotowy pakiet zabbix-selinux-policy z Oficjalnego repozytorium Zabbix.
Pakiet ten jest dostarczany dla wszystkich obsługiwanych wersji systemów operacyjnych, aby uprościć wdrożenie Zabbix i zapobiec wyłączaniu SELinux przez użytkowników z powodu złożoności konfiguracji.
Dla maksymalnego bezpieczeństwa zaleca się ustawienie niestandardowych ustawień SELinux.
Pakiet zabbix-selinux-policy zawiera podstawową politykę SELinux, która umożliwia Zabbix tworzenie i używanie gniazd oraz zezwala HTTPd na połączenie z PostgreSQL (używanym przez frontend).
Źródłowy plik zabbix_policy.te zawiera następujące reguły:
module zabbix_policy 1.2;
require {
type zabbix_t;
type zabbix_port_t;
type zabbix_var_run_t;
type postgresql_port_t;
type httpd_t;
class tcp_socket name_connect;
class sock_file { create unlink };
class unix_stream_socket connectto;
}
#============= zabbix_t ==============
allow zabbix_t self:unix_stream_socket connectto;
allow zabbix_t zabbix_port_t:tcp_socket name_connect;
allow zabbix_t zabbix_var_run_t:sock_file create;
allow zabbix_t zabbix_var_run_t:sock_file unlink;
allow httpd_t zabbix_port_t:tcp_socket name_connect;
#============= httpd_t ==============
allow httpd_t postgresql_port_t:tcp_socket name_connect;
Pakiety debuginfo
Pakiety Debuginfo zawierają symbole debugowania dla binariów Zabbix.
Nie są wymagane do standardowej instalacji ani działania, ale są przydatne podczas zaawansowanego rozwiązywania problemów.
Należy pamiętać, że pakiety Debuginfo są dostępne dla następujących wersji: Red Hat Enterprise Linux 7 i wcześniejszych (w tym pochodnych) oraz SUSE Linux Enterprise Server 15 i wcześniejszych (w tym pochodnych).
Aby włączyć repozytorium zabbix-debuginfo:
- W RHEL 7 edytuj
/etc/yum.repos.d/zabbix.repoi ustawenabled=1dla sekcjizabbix-debuginfo:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/7.4/stable/rhel/7/$basearch/debuginfo/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1
- W SUSE edytuj
/etc/zypp/repos.d/zabbix.repoi ustawenabled=1dla sekcjizabbix-debuginfo:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/7.4/stable/sles/15/$basearch/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/7.4/stable/sles/15/$basearch/debuginfo/repodata/repomd.xml.key
enabled=0
update=1
Po włączeniu zainstaluj pakiety:
- W RHEL zainstaluj pojedynczy pakiet z informacjami debugowania dla wszystkich komponentów Zabbix:
dnf install zabbix-debuginfo
- W SUSE zainstaluj pakiety debuginfo specyficzne dla komponentów:
zypper install zabbix-<component>-debuginfo