4 Instalação a partir de pacotes

Visão geral

Os pacotes oficiais do Zabbix 7.0 estão disponíveis no site do Zabbix, onde você pode selecionar seu sistema operacional e o componente do Zabbix para gerar instruções de instalação adequadas ao seu ambiente. Veja também as notas de instalação do pacote nesta página para informações adicionais importantes, bem como a seção Instalação e configuração.

Os pacotes estão disponíveis para as seguintes distribuições Linux:

  • Red Hat Enterprise Linux e seus derivados: AlmaLinux, Amazon Linux 2023, CentOS Stream, CentOS, Oracle Linux, Rocky Linux
  • Debian, Ubuntu, Raspberry Pi OS, Raspbian
  • SUSE Linux Enterprise Server, openSUSE Leap

Algumas distribuições de SO (em particular, distribuições baseadas em Debian) fornecem seus próprios pacotes do Zabbix. Esses pacotes não são suportados pelo Zabbix e podem estar desatualizados ou sem os recursos e correções de bugs mais recentes. Recomenda-se usar apenas pacotes oficiais do Repositório Oficial do Zabbix. Se você instalou anteriormente o Zabbix a partir do repositório do seu sistema operacional, veja as etapas para atualizar pacotes do Zabbix a partir de repositórios do SO.

Os pacotes suportam banco de dados MySQL/PostgreSQL e servidor web Apache/Nginx. Observe que o Zabbix server e o proxy não podem compartilhar o mesmo banco de dados; use nomes de banco de dados diferentes se ambos estiverem instalados no mesmo host.

Se necessário, pacotes separados para Zabbix agent/agent 2, Zabbix get e Zabbix sender estão disponíveis no Repositório Oficial do Zabbix.

Desde o Zabbix 7.0.5, os pacotes do Zabbix agent 2 não estão mais disponíveis para RHEL 6 devido ao Go 1.22 (e mais recente) ser incompatível com o GCC 4.4.7 fornecido pelo RHEL 6, o que resulta em erros de compilação. Observe, no entanto, que os pacotes do Zabbix agent ainda são suportados.

O Zabbix também fornece binários pré-compilados do Zabbix agent para sistemas operacionais não-Linux; veja:

Notas sobre a instalação de pacotes

As seguintes notas se aplicam a todos os sistemas:

As seguintes notas se aplicam ao RHEL e seus derivados:

Configuração do SELinux

O Zabbix utiliza comunicação entre processos baseada em socket. Em sistemas onde o Security-Enhanced Linux (SELinux) está habilitado, pode ser necessário adicionar regras do SELinux para permitir que o Zabbix crie/utilize sockets de domínio UNIX no diretório SocketDir. Os arquivos de socket são usados pelo Zabbix server (alerter, preprocessing, IPMI) e pelo Zabbix proxy (IPMI), e estão presentes enquanto o processo está em execução.

Com o SELinux habilitado no modo enforcing, execute os seguintes comandos para habilitar a comunicação entre o Zabbix frontend e o server:

Para RHEL 7 (e posteriores), AlmaLinux, CentOS Stream, Oracle Linux, Rocky Linux 8 (e posteriores):

setsebool -P httpd_can_connect_zabbix on

Se o banco de dados for acessado pela rede (incluindo localhost para PostgreSQL), também permita que o Zabbix frontend se conecte ao banco de dados:

setsebool -P httpd_can_network_connect_db on

Para RHEL anterior ao 7:

setsebool -P httpd_can_network_connect on
setsebool -P zabbix_can_network on

Após aplicar as configurações do SELinux, reinicie o Apache:

systemctl restart httpd

Opcionalmente, você pode instalar um pacote pré-definido zabbix-selinux-policy do Repositório Oficial do Zabbix. Este pacote é fornecido para todas as versões de SO suportadas para simplificar a implantação do Zabbix e evitar que os usuários desativem o SELinux devido à complexidade da configuração.

Para máxima segurança, recomenda-se definir configurações personalizadas do SELinux.

O pacote zabbix-selinux-policy contém uma política básica do SELinux, permitindo que o Zabbix crie e utilize sockets e habilitando a conexão HTTPd ao PostgreSQL (usado pelo frontend).

O arquivo fonte zabbix_policy.te contém as seguintes regras:

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;

Pacotes Debuginfo

Os pacotes Debuginfo contêm símbolos de depuração para os binários do Zabbix. Eles não são necessários para a instalação ou operação normal, mas são úteis para solução de problemas avançada.

Para habilitar o repositório zabbix-debuginfo:

  • No RHEL 6 ou 7, edite /etc/yum.repos.d/zabbix.repo e defina enabled=1 para a seção zabbix-debuginfo:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/7.0/stable/rhel/7/$basearch/debuginfo/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1
  • No SUSE, edite /etc/zypp/repos.d/zabbix.repo e defina enabled=1 para a seção zabbix-debuginfo:
[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo
type=rpm-md
baseurl=https://repo.zabbix.com/zabbix/7.0/stable/sles/15/x86_64/debuginfo/
gpgcheck=1
gpgkey=https://repo.zabbix.com/zabbix/7.0/stable/sles/15/x86_64/debuginfo/repodata/repomd.xml.key
enabled=0
update=1

Uma vez habilitado, instale os pacotes:

  • No RHEL, instale um único pacote com informações de depuração para todos os componentes do Zabbix:
dnf install zabbix-debuginfo
  • No SUSE, instale pacotes debuginfo específicos para cada componente:
zypper install zabbix-<component>-debuginfo