Visão Geral da Configuração
Este guia detalha o processo de instalação e configuração do Zabbix Server em um ambiente CentOS 7, utilizando MySQL 5.6 como backend de banco de dados. O Zabbix 3.0.12, uma versão de Suporte de Longo Prazo (LTS), é o foco, garantindo estabilidade e um ciclo de suporte estendido.
Requisitos do Ambiente
- Sistema Operacional: CentOS 7 (64-bit)
- Versão do Zabbix: 3.0.12
- Versão do MySQL: 5.6
É importante observar que o Zabbix 3.0 requer MySQL 5.0+, Apache 1.3+ e PHP 5.4+ para um funcionamento adequado.
Considerações sobre a Versão do Zabbix
A escolha de uma versão LTS (Long Term Support) é altamente recomendada para ambientes de produção devido ao suporte estendido. As versões LTS do Zabbix são lançadas a cada 18 meses e oferecem suporte por um período de cinco anos:
- Três anos de suporte completo, incluindo correções para problemas gerais, críticos e de segurança.
- Dois anos adicionais de suporte limitado, focando apenas em questões críticas e de segurança.
Para este guia, utilizaremos o Zabbix 3.0, que se enquadra na categoria LTS.
Passos para a Instalação
1. Desabilitar SELinux e Firewall
Para evitar conflitos durante a instalação e operação do Zabbix, é aconselhável desabilitar o SELinux e o firewall do sistema. Para desabilitar o firewall imediatamente e configurá-lo para não iniciar na inicialização:
sudo systemctl disable --now firewalld
Para o SELinux, desabilite-o temporariamente e, em seguida, permanentemente. Para desabilitar temporariamente:
sudo setenforce 0
Para desabilitar permanentemente, edite o arquivo /etc/selinux/config e altere a linha SELINUX=enforcing para SELINUX=disabled. Reinicie o sistema após a alteração para que ela seja aplicada.
2. Adicionar o Repositório Zabbix
Adicione o repositório Zabbix 3.0 para RHEL/CentOS 7, o que permitirá a instalação dos pacotes Zabbix via yum:
sudo rpm -vhi http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
3. Instalar Pacotes do Zabbix Server e Web Frontend
Com o repositório configurado, instale os pacotes principais do Zabbix Server com suporte a MySQL e a interface web:
sudo yum install -y zabbix-server-mysql zabbix-web-mysql
4. Instalar e Inicializar o MySQL Server
Instale o MySQL 5.6. É recomednável usar o repositório oficial da Oracle para MySQL, garantindo a versão correta. Para CentOS 7, o repositório pode ser adicionado da seguinte forma (verifique a URL mais recente para MySQL 5.6 para EL7 se houver problemas com o URL original, que era para EL6):
sudo rpm -ivh https://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo yum install -y mysql-community-server
sudo systemctl enable --now mysqld
sudo mysql_secure_installation
O comando mysql_secure_installation guiará você através de passos para definir uma senha de root, remover usuários aônimos, desabilitar login remoto do root e remover o banco de dados de teste.
5. Criar Banco de Dados e Usuário para o Zabbix
Acesse o prompt do MySQL como usuário root e crie o banco de dados zabbix com a codificação correta e um usuário específico para o Zabbix. Altere 'sua_senha_segura' para uma senha forte de sua escolha.
mysql -u root -p
# Digite a senha do root do MySQL quando solicitado.
mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
mysql> GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY 'sua_senha_segura';
mysql> FLUSH PRIVILEGES;
mysql> EXIT;
6. Importar Esquema Inicial do Banco de Dados Zabbix
Importe o esquema do banco de dados inicial do Zabbix, que contém as tabelas e dados essenciais para o funcionamento do sistema.
zcat /usr/share/doc/zabbix-server-mysql-3.0.12/create.sql.gz | mysql -u zabbix -p'sua_senha_segura' zabbix
Substitua 'sua_senha_segura' pela senha definida para o usuário zabbix no passo anterior. O comando zcat descompacta o arquivo SQL e o pipe (|) o envia para o cliente MySQL.
7. Configurar o Zabbix Server
Edite o arquivo de configuração do Zabbix Server para que ele possa se conectar ao banco de dados MySQL que acabamos de criar. Abra /etc/zabbix/zabbix_server.conf e ajuste os seguintes parâmetros:
# /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=sua_senha_segura
Certifique-se de que DBPassword corresponda à senha que você definiu para o usuário zabbix no MySQL.
8. Configurar o Apache para o Zabbix Web Frontend
Ajuste as configurações do PHP para o Zabbix Web Frontend. Edite o arquivo /etc/httpd/conf.d/zabbix.conf e defina os seugintes valores, prestando atenção à configuração do fuso horário para sua região (ex: America/Sao_Paulo).
# /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone America/Sao_Paulo
9. Iniciar e Habilitar Serviços
Inicie e configure o Apache HTTP Server e o Zabbix Server para iniciar automaticamente na inicialização do sistema:
sudo systemctl enable --now httpd
sudo systemctl enable --now zabbix-server
Você pode verificar se o Apache está escutando na porta 80:
netstat -an | grep 80 | grep LISTEN
10. Configuração Inicial do Zabbix Web Interface
Após os serviços estarem em execução, abra seu navegador e navegue até http://seu_IP_do_servidor/zabbix. Você será guiado por um assistente de configuração:
- Na tela de "Welcome", clique em "Next step".
- A tela "Check of pre-requisites" mostrará se todos os requisitos do PHP foram atendidos. Resolva quaisquer avisos ou erros antes de prosseguir. Clique em "Next step".
- Na tela "Configure DB connection", verifique se os detalhes da conexão do banco de dados estão corretos (Tipo de Banco de Dados: MySQL, Host do Banco de Dados: localhost, Porta: 0, Nome do Banco de Dados: zabbix, Usuário: zabbix, Senha: sua_senha_segura). Clique em "Next step".
- Na tela "Zabbix server details", você pode inserir o nome do host do servidor Zabbix e a porta, se necessário. Geralmente, os padrões são aceitáveis. Clique em "Next step".
- A tela "Pre-installation summary" exibirá um resumo das configurações. Confirme e clique em "Next step" para finalizar a instalação.
Após a conclusão, a interface web do Zabbix estará pronta para login.
11. Limpeza Pós-Instalação
Por questões de segurança, é recomendável remover ou renomear o arquivo setup.php da pasta web do Zabbix. Isso impede que o assistente de instalação seja executado novamente por usuários não autorizados:
cd /usr/share/zabbix/
sudo mv setup.php setup.php.bak
12. Primeiro Login e Alteração de Senha do Administrador
Acesse o Zabbix Web Frontend usando as credenciais padrão:
- Usuário: Admin
- Senha: zabbix
Após o login, a primeira ação deve ser alterar a senha padrão do usuário "Admin" para uma senha forte. No menu de navegação, vá para "Administration" -> "Users", selecione "Admin", clique na aba "Change password" e defina uma nova senha. Você também pode ajustar o tema da interface e o idioma nesta seção.