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:
- Instalação do agent no Windows a partir do MSI
- Instalação do agent no macOS a partir do PKG
- Binários legados (para sistemas mais antigos/menos comuns, como HP-UX, NetBSD, Tru64 e versões mais antigas do SLES)
Notas sobre a instalação de pacotes
As seguintes notas se aplicam a todos os sistemas:
- Se estiver usando PostgreSQL,
DBHost=localhost(ou um endereço IP) na configuração do Zabbix server/proxy faz com que o PostgreSQL use um socket de rede em vez de um socket UNIX local; veja Configuração do SELinux para instruções relacionadas. - Se estiver usando TimescaleDB, veja a configuração adicional do TimescaleDB.
- Se estiver instalando o Java gateway do Zabbix (para monitorar aplicações JMX), veja instruções adicionais de configuração para sistemas baseados em RHEL e sistemas baseados em Debian.
- Para executar o agent do Zabbix como root, veja Executando o agent como root.
As seguintes notas se aplicam ao RHEL e seus derivados:
- Se você ativou o repositório EPEL para EL9, que também fornece pacotes do Zabbix, ele deve ser excluído da resolução de pacotes antes de instalar os pacotes oficiais do Zabbix; veja Instalação acidental de pacotes Zabbix do EPEL.
- Para instalar pacotes do Zabbix em ambientes Red Hat UBI, veja Pacotes Zabbix para RHEL em ambientes Red Hat UBI.
- Para usar itens de ping ICMP, pacotes para
fpingtambém estão disponíveis no Repositório Oficial do Zabbix.
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.repoe definaenabled=1para a seçãozabbix-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.repoe definaenabled=1para a seçãozabbix-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