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.
1 2 3 |
# su - # cd /tmp # apt install wget |
Repositório Debian 12
1 2 3 4 |
# 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 |
1 |
# 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/
1 2 3 4 5 6 7 8 |
# 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.
1 2 3 |
$ 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.
1 |
# vim /etc/zabbix/zabbix_server.conf |
Procure por # DBPassword= descomente e sete sua senha.
1 2 3 |
#... DBPassword=<SENHA ZABBIX> #... |
Ajuste o arquivo /etc/zabbix/php-fpm.conf, descomente e defina o fuso horário correto. timezone Sua região.
1 |
# vim /etc/zabbix/php-fpm.conf |
Adicione:
1 |
php_value[date.timezone] = America/Sao_Paulo |
Ajuste as configurações do nginx.
1 |
# vim /etc/nginx/conf.d/zabbix.conf |
Deixei algumas linhas comentadas como exemplo, faça de acordo com sua necessidade.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
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.
1 |
# systemctl enable zabbix-server zabbix-agent |
1 |
# vim /etc/php/8.2/fpm/php.ini |
Localize max_execution_time e altere de 30 para 600
1 |
max_execution_time = 600 |
1 |
# 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!
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.