Instalação do Zabbix 6 LTS + NGINX + PostgreSQL + Debian 12 Bookworm
O Zabbix é uma solução de nível enterprise, de código aberto. O Zabbix é um software que monitora vários parâmetros da rede, dos servidores e da saúde dos serviços. Utiliza-se de um mecanismo flexível de notificação que permite configurar alertas por e-mail entre outros como Telegram, para praticamente qualquer evento. As notificações permitem que se reaja rapidamente à problemas no ambiente. O Zabbix oferece excelentes recursos de relatórios e visualização de dados armazenados. Isso faz com que o Zabbix seja a ferramenta ideal para planejamento de capacidade.
Requisitos Debian 12 Bookworm
– Instalação do Debian 12 Bookworm limpa passo-a-passo
– Servidor WEB NGINX + PHP 8.2 + PostgreSQL +Let’s Encrypt Debian 12 Bookworm (LNP)
Instalação do Zabbix 6 LTS
Para instalação do Zabbix vamos incluir o repositório do oficial do Zabbix Versão 6 LTS.
# su - # cd /tmp # apt install wget
Repositório Debian 12
# cd /tmp/ # wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_6.0-5+debian12_all.deb # apt install ./zabbix-release_6.0-5+debian12_all.deb # apt update; apt upgrade -y; apt update
# apt install zabbix-server-pgsql zabbix-frontend-php php-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
Vamos criar uma base de dados chamada zabbix e um usuário também chamado de zabbix no PostgreSQL.
Não esqueça de alterar a senha: Use o gerador de senha: https://senhasegura.remontti.com.br/
# su - postgres $ createuser --pwprompt zabbix Digite a senha para a nova role: <SENHA ZABBIX> Digite-a novamente: <SENHA ZABBIX> Senha: <SENHA POSTGRES CASO TENHA DEFINIDO NA INSTALAÇÃO DO MESMO> $ createdb -O zabbix zabbix Senha: <SENHA POSTGRES>
Importe o esquema inicial e os dados. Você será solicitado a inserir a senha que foi criada anteriormente.
$ zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | psql -U zabbix -d zabbix &>/dev/null Senha para usuário zabbix: : <SENHA ZABBIX> $ exit
Edite o arquivo zabbix_server.conf para informar os dados para conexão com do PostgreSQL.
# vim /etc/zabbix/zabbix_server.conf
Procure por # DBPassword= descomente e sete sua senha.
#... DBPassword=<SENHA ZABBIX> #...
Ajuste o arquivo /etc/zabbix/php-fpm.conf, descomente e defina o fuso horário correto. timezone Sua região.
# vim /etc/zabbix/php-fpm.conf
Adicione:
php_value[date.timezone] = America/Sao_Paulo
Ajuste as configurações do nginx.
# vim /etc/nginx/conf.d/zabbix.conf
Deixei algumas linhas comentadas como exemplo, faça de acordo com sua necessidade.
server { listen 80; listen [::]:80; server_name zabbix.remontti.com.br localhost; #server_name OU_SEU_IP; # Metodo simples para quem quer rodar em uma determinada porta #listen 8181; #listen [::]:8181; #server_name _; root /usr/share/zabbix; index index.php; # Desmomente para deixar restringido apenas para determinados prefixos #allow 192.168.87.0/24; #allow 127.0.0.1; #allow 2001:0db8::/32; #allow ::1; #deny all; #error_page 403 http://www.remontti.com.br; client_max_body_size 100M; location = /favicon.ico { log_not_found off; } location / { try_files $uri $uri/ =404; } location /assets { access_log off; expires 10d; } location ~ /\.ht { deny all; } location ~ /(api\/|conf[^\.]|include|locale) { deny all; return 404; } location ~ [^/]\.php(/|$) { fastcgi_pass unix:/var/run/php/zabbix.sock; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_index index.php; fastcgi_param DOCUMENT_ROOT /usr/share/zabbix; fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name; fastcgi_param PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name; include fastcgi_params; fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_intercept_errors on; fastcgi_ignore_client_abort off; fastcgi_connect_timeout 60; fastcgi_send_timeout 180; fastcgi_read_timeout 180; fastcgi_buffer_size 128k; fastcgi_buffers 4 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; } }
Inicie o servidor Zabbix e os processos do agente e configure-os para que sejam iniciados durante o boot do sistema.
# systemctl enable zabbix-server zabbix-agent
# vim /etc/php/8.2/fpm/php.ini
Localize max_execution_time e altere de 30 para 600
max_execution_time = 600
# systemctl restart zabbix-server zabbix-agent nginx php8.2-fpm
Acesse em seu navegador http://seu_ip:porta ou http://zabbix.seudominio.com.br
Selecione o Edioma, e Próximo passo
Se tudo estiver ok: Próximo passo
Selecione PostgreSQL e informe a senha do usuário zabbix criada anteriormente, clique em Próximo passo.
Defina um nome, e selecione o Tema padrão e clique em Próximo passo
Se tudo estiver ok, Próximo passo
Fim
Entre com Usuário Admin e senha zabbix
🙂
Simples né? Gostou e quer me ajudar? 🙂
Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!
Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato clique aqui.
Abraço!
Ótimo conteúdo direto e com dicas de segurança importantes, queria saber como atualizar para Zabbix 7.0 em um servidor utilizando esse tutorial. A maioria que vejo é utilizando Apache e MySQL.
Obrigado pela contribuição!
Quando fará um tutor demonstrando a instalação de um certificado auto-assinado no zabbix?
Pode ajudar bastante, estou apanhando pacas! rsrs…
Excelente amigo, que você continue compartilhando seus conhecimentos, Deus te abençoe.
Parabéns pelo tutorial detalhado. Eu particularmente não gostei de usar o nginx. Então tive que reinstalar para usar com o apache.
A dica que eu dou é fazer outro tutorial com o conjunto: apache + mariadb + zabbix + grafana para ficar completo!
Parabéns mais uma vez!! Ótimo tutorial, completo e bem detalhado.
Muito bom, muito completo e didático. Parabéns pelo trabalho. e Obrigado
Quem ai tbm foi direto pra instalação do zabbix e não instalou o NGINX e nen o banco de dados, e teve que re-instalar tudo denovo kk?
EU
Muito obrigado amigo, finalizei a instalação, tudo certo.