Como instalar o Zabbix no RHEL/CentOS e Debian/Ubuntu
Zabbix é um software empresarial de código aberto e de alto nível projetado para monitorar e rastrear redes, servidores e aplicativos em tempo real. Construído em um modelo servidor-cliente, o Zabbix pode coletar diferentes tipos de dados que são usados para criar gráficos históricos e gerar desempenho ou tendências de carga dos alvos monitorados.
O servidor tem a capacidade de verificar serviços de rede padrão (HTTP, FTP, SMTP, IMAP, etc) sem a necessidade de instalar software extra nos hosts monitorados.
Porém, para coletar dados e criar estatísticas sobre serviços locais ou outros recursos específicos do sistema que rodam em instâncias remotas, como CPU, discos, processos internos do sistema, RAM, etc, você precisa instalar e configurar um agente Zabbix.
A seguir está a série de 4 artigos sobre o aplicativo Zabbix Monitoring:
Este tutorial se concentrará em como instalar a versão mais recente do Zabbix Server no Debian/Ubuntu e RHEL/CentOS > /Fedora/Rocky Linux/AlmaLinux com banco de dados backend MySQL/MariaDB para armazenar dados coletados, PHP e Apache Web Server como interface principalmente web.
Importante: As instruções fornecidas pelo Zabbix também funcionam em todos os derivados do Debian e distros baseadas em RedHat, como RHEL/CentOS /Fedora e Rocky Linux/AlmaLinux.
Etapa 1: Instale o servidor Web Apache e PHP
1. Primeiro, atualize os pacotes de software e depois instale o Apache Web Server junto com o PHP e suas extensões para fornecer a funcionalidade baseada na web para Zabbix Server emitindo o seguinte comando.
--------------- On Debian/Ubuntu ---------------
sudo apt update && sudo apt upgrade
sudo apt install apache2 php php-mysql php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-pdo php-xml libapache2-mod-php
--------------- On RHEL-based Distros ---------------
yum update && yum upgrade
yum -y install epel-release
yum install httpd php php-mysqlnd php-ldap php-bcmath php-mbstring php-gd php-xml
2. Em seguida, você precisa ajustar o interpretador PHP e ajustar alguns valores para poder executar o Zabbix Server. Portanto, abra o arquivo de configuração Apache php.ini
para edição emitindo o seguinte comando:
sudo nano /etc/php/7.X/apache2/php.ini [On Debian/Ubuntu]
vi /etc/php.ini [On RHEL/CentOS/]
Agora, pesquise com CTRL+C e substitua os seguintes valores PHP como segue:
post_max_size = 16M
upload_max_filesize = 2M
max_execution_time 300
max_input_time = 300
memory_limit 128M
session.auto_start = 0
mbstring.func_overload = 0
date.timezone = Europe/Bucharest
Substitua a variável date.timezone de acordo com a localização geográfica do seu servidor. Uma lista de fusos horários suportados por PHP pode ser encontrada aqui http://php.net/manual/en/timezones.php.
3. Após atualizar o arquivo de configuração PHP, reinicie o daemon Apache para refletir as alterações emitindo o seguinte comando.
sudo systemctl restart apache2.service [On Debian/Ubuntu]
systemctl restart httpd.service [On RHEL/CentOS]
Etapa 2: instalar o banco de dados e biblioteca MariaDB
4. Na próxima etapa, instale o banco de dados MariaDB e a biblioteca de desenvolvimento MySQL a partir de pacotes binários. À medida que o MariaDB é instalado no seu sistema, você será solicitado a definir uma senha para o usuário root do banco de dados durante a instalação (somente no Debian). Escolha uma senha forte, repita-a e aguarde o término da instalação.
sudo apt-get install mariadb-server mariadb-client libmysqld-dev [On Debian/Ubuntu]
yum install mariadb-server mariadb-client mariadb-devel [On RHEL/CentOS]
5. Quando a instalação do Mariadb terminar, inicie e proteja o banco de dados emitindo o comando mysql_secure_installation com privilégios de root do sistema (responda com yes para remover usuários anônimos, desabilitar o login root remotamente, remover o banco de dados de teste e o acesso a ele e aplicar todas as alterações).
sudo systemctl start mariadb
sudo mysql_secure_installation
OR
systemctl start mariadb
mysql_secure_installation
Use a captura de tela abaixo como guia.
6. O próximo requisito do Zabbix é configurar um banco de dados RDBMS. Faça login no componente de banco de dados da pilha LAMP (MySQL ou MariaDB) e crie um banco de dados Zabbix e as credenciais necessárias para gerenciar o banco de dados, emitindo os seguintes comandos.
Certifique-se de substituir o nome do banco de dados, o usuário e a senha para corresponder às suas próprias configurações.
mysql -u root -p
MariaDB [(none)]> create database zabbixdb character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbixdb.* to 'zabbixuser'@'localhost' identified by 'password1';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit
Passo 3: Instale o Servidor Zabbix
7. Agora, comece a instalar o servidor Zabbix e o aplicativo frontend Zabbix PHP adicionando os repositórios oficiais do Zabbix ao gerenciador de pacotes do sistema emitindo os seguintes comandos com privilégios de root.
Instale o Zabbix no Debian
--------------- On Debian 11 ---------------
sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian11_all.deb
sudo dpkg -i zabbix-release_5.4-1+debian11_all.deb
sudo apt update
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
--------------- On Debian 10 ---------------
sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian10_all.deb
sudo dpkg -i zabbix-release_5.4-1+debian10_all.deb
sudo apt update
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
Instale o Zabbix no Ubuntu
--------------- On Ubuntu 20.04 ---------------
sudo wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
sudo dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
sudo apt update
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
--------------- On Ubuntu 18.04 ---------------
sudo wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu18.04_all.deb
sudo dpkg -i zabbix-release_5.4-1+ubuntu18.04_all.deb
sudo apt update
sudo apt install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
Instale o Zabbix em distros baseadas em RHEL
--------------- On RHEL/CentOS 8 ---------------
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm
dnf clean all
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent
--------------- On RHEL/CentOS 7 ---------------
rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/7/x86_64/zabbix-release-5.4-1.el7.noarch.rpm
dnf clean all
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts zabbix-agent
Se você deseja baixar e compilar uma versão mais antiga, visite os repositórios oficiais do Zabbix Sourceforge.
8. No próximo passo, reinicie o servidor Apache HTTP para aplicar o arquivo de configuração do Zabbix instalado para o Apache.
sudo systemctl restart apache2 [On Debian/Ubuntu]
systemctl restart httpd [On RHEL/CentOS]
setenforce 0 [Disable SELinux on RHEL/CentOS]
Passo 4: Configurar o Servidor e Agente Zabbix
9. Antes de configurar o servidor, primeiro importe o esquema inicial do banco de dados do Zabbix para o banco de dados MySQL. Importe o esquema para o banco de dados criado para a aplicação Zabbix, emitindo o comando abaixo.
sudo zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -u zabbixuser zabbixdb -p
OR
zcat /usr/share/doc/zabbix-sql-scripts/mysql/create.sql.gz | mysql -u zabbixuser zabbixdb -p
10. Na próxima etapa, configure o servidor Zabbix abrindo o arquivo de configuração principal para edição com o seguinte comando.
sudo nano /etc/zabbix/zabbix_server.conf
OR
nano /etc/zabbix/zabbix_server.conf
No arquivo zabbix_server.conf pesquise e modifique as seguintes linhas conforme apresentado no trecho abaixo. Atualize as variáveis para refletir suas próprias configurações de banco de dados.
DBHost=localhost
DBName=zabbixdb
DBUser=zabbixuser
DBPassword=password1
11. Finalmente, salve e feche o arquivo de configuração do servidor Zabbix pressionando Ctrl+o e Ctrl+x arquivo e reiniciando o daemon Zabbix para aplicar alterações emitindo o comando abaixo.
systemctl restart zabbix-server.service
12. Em seguida, configure o arquivo de configuração do Agente Zabbix atualizando as linhas a seguir. Primeiro, abra o arquivo para edição.
nano /etc/zabbix/zabbix_agentd.conf
Trecho do arquivo de configuração do agente Zabbix:
Server=127.0.0.1
ListenPort=10050
13. Salve e feche o arquivo de configuração do agente Zabbix e reinicie o Zabbix Agent para refletir as alterações emitindo o seguinte comando.
systemctl restart zabbix-agent.service
Etapa 5: Instalar e configurar a interface Zabbix Frontend
15. Agora é hora de instalar a interface web do Zabbix Server Frontend. Para realizar esta etapa, abra um navegador e navegue até o endereço IP do seu servidor usando o protocolo HTTP ou HTTPS e a tela de boas-vindas deverá aparecer. Clique no botão Avançar para avançar.
http://192.168.1.151/zabbix/setup.php
OR
https://192.168.1.151/zabbix/setup.php
Na primeira tela de boas-vindas, basta clicar no botão Próxima etapa para passar para a nova etapa do processo de instalação.
16. Após uma série de verificações, se todos os valores de pré-requisitos forem satisfeitos, clique no botão Avançar para prosseguir.
17. Na próxima etapa, forneça as configurações do banco de dados MySQL, clique no botão Testar conexão para testar a conectividade do MySQL e vá para a etapa pressionando o botão Avançar. botão.
18. Em seguida, forneça o Host (ou Endereço IP) e a Porta do servidor Zabbix (use o host localhost e a porta 10051 porque o servidor Zabbix está configurado para rodar no mesmo host que a interface web frontend do Zabbix neste tutorial) e um Nome para instalação do frontend Zabbix. Quando terminar, clique em Próximo para continuar.
19. A seguir, verifique todos os parâmetros de configuração.
20. Após a conclusão do processo de instalação, uma mensagem de parabéns aparecerá em seu navegador. Clique no botão Concluir para sair do instalador frontend do Zabbix.
21. Finalmente, navegue até o endereço IP do seu servidor ou nome de domínio anexando o endereço URL /zabbix e faça login no painel de administração web do Zabbix com as credenciais padrão apresentadas abaixo.
https://your_domain.tld/zabbix/
Username: Admin
Password: zabbix
22. Depois de fazer login no painel de administração do Zabbix, você pode começar a configurar o Zabbix e adicionar novos recursos de rede para serem monitorados pelo servidor Zabbix.
23. Para alterar a senha da conta de administrador frontend do Zabbix, navegue até Administração -> Usuários –> Usuário e clique no botão Alterar senha e adicione sua nova senha, conforme ilustrado na imagem abaixo. Por fim, clique no botão Atualizar inferior para salvar a nova senha da conta de administrador.
Isso vai! A próxima série sobre o sistema de monitoramento Zabbix discutirá como configurar ainda mais o servidor usando a interface web e como instalar e configurar agentes Zabbix em diferentes distribuições Linux ou mesmo sistemas Windows.