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:

Uwagi dotyczące instalacji pakietów

Poniższe uwagi dotyczą wszystkich systemów:

Poniższe uwagi dotyczą RHEL i jego pochodnych:

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.repo i ustaw enabled=1 dla sekcji zabbix-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.repo i ustaw enabled=1 dla sekcji zabbix-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