Guia completo para instalar e configurar Zabbix 7 LTS no Debian 12 Bookworm com NGINX e PostgreSQL

Zabbix é uma solução de nível empresarial e de código aberto. Ele monitora diversos parâmetros de rede, servidores e a saúde dos serviços, utilizando um mecanismo flexível de notificação. Este mecanismo permite configurar alertas, por e-mail e outros meios como Telegram, para quase qualquer evento, facilitando uma rápida resposta a problemas. Além disso, o Zabbix oferece recursos avançados para relatórios e visualização de dados armazenados, sendo ideal para o planejamento de capacidade.

Requisitos Debian 12 Bookworm

– Instalação do Debian 12 Bookworm limpa passo-a-passo

Melhorando o seu BASH

Para melhorar seu bash e entender o comando a seguir, visite: Como melhorar a produtividade no seu Debian após a instalação

1 # apt -y install wget; wget remontti.com.br/debian; bash debian; su -
Copiar

Instalação do NGINX

Procederemos com a instalação do nginx, ocultando a sua versão como uma boa prática.

1 # apt -y install nginx
2 # sed -i 's/# server_tokens/server_tokens/' /etc/nginx/nginx.conf
3 # systemctl restart nginx
Copiar

Instalação PHP 8

Vamos instalar extensões do PHP usadas pelo Zabbix e evitar a instalação de pacotes recomendados (–no-install-recommends) para que o Apache não seja instalado.

1 #  apt -y install --no-install-recommends \
 php php-{fpm,cli,mysql,pear,gd,gmp,bcmath,mbstring,curl,xml,zip,json,pgsql}Copiar

Aumentar o limite de tempo de execução e o tamanho máximo de upload no PHP.

1 # vim /etc/php/8.2/fpm/php.ini
Copiar

Localize max_execution_time e altere para 600 e upload_max_filesize para 100MB

1 max_execution_time = 600
2 upload_max_filesize = 100M
Copiar

Reinicie o serviço do PHP.

1 # systemctl restart php8.2-fpm
Copiar

Instalação do PostgreSQL

Instalação dos pacotes necessários do PostgreSQL.

1 # apt -y install postgresql postgresql-contrib
Copiar

Altere para o usuário postgres.

1 # su - postgres
Copiar

Acesse o terminal de comandos do banco de dados.

1 $ psql
Copiar

Para definir a senha do usuário postgres e instalar o adminpack.

1 postgres=# \password postgres
2 Digite nova senha para postgres: 
3 Digite-a novamente:
4 postgres=# CREATE EXTENSION adminpack;
5 CREATE EXTENSION
6 postgres=# \q 
7 $ exit
Copiar

Realize ajustes no arquivo pg_hba.conf para autenticação com senha.

1 # sed -i '/postgres.*peer/s/peer/md5/' /etc/postgresql/15/main/pg_hba.conf
2 # sed -i '0,/local\s*all\s*all\s*peer/s/peer/md5/' /etc/postgresql/15/main/pg_hba.conf
Copiar

É recomendado ajustar as configurações padrões do PostgreSQL conforme a memória disponível.

1 vim /etc/postgresql/15/main/postgresql.conf
Copiar
1 #-----------------------------------------
2 # 4GB de Memoria RAM
3 #-----------------------------------------
4 max_connections = 500
5 shared_buffers = 1GB
6 work_mem = 16MB
7 maintenance_work_mem = 128MB
8 max_wal_size = 1GB
9 min_wal_size = 256MB
10 effective_cache_size = 2GB
11 
12 #-----------------------------------------
13 # 8GB de Memoria RAM
14 #-----------------------------------------
15 max_connections = 1000
16 shared_buffers = 2GB
17 work_mem = 32MB
18 maintenance_work_mem = 512MB
19 max_wal_size = 2GB
20 min_wal_size = 512MB
21 effective_cache_size = 4GB
22 
23 #-----------------------------------------
24 # 16GB de Memoria RAM
25 #-----------------------------------------
26 max_connections = 2000
27 shared_buffers = 4GB
28 work_mem = 64MB
29 maintenance_work_mem = 1GB
30 max_wal_size = 4GB
31 min_wal_size = 1GB
32 effective_cache_size = 8GB
Copiar

Reinicie o serviço do PostgreSQL.

1 # systemctl  restart postgresql
Copiar

Instalação do Zabbix 7 LTS

Inclua o repositório oficial do Zabbix versão 7 LTS.

1 # cd /tmp/
2 # wget https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_7.0-1+debian12_all.deb
3 # dpkg -i zabbix-release_7.0-1+debian12_all.deb
4 # apt update
Copiar
1 # apt -y install zabbix-server-pgsql zabbix-frontend-php \
  zabbix-nginx-conf zabbix-sql-scripts zabbix-agent tracerouteCopiar

Crie uma base de dados chamada zabbix e um usuário também chamado zabbix no PostgreSQL. Lembre-se de alterar a senha. Use o gerador de senha: https://senhasegura.remontti.com.br/

1 # su - postgres
2 $ createuser --pwprompt zabbix
3 Digite a senha para a nova role:  <SENHA ZABBIX>
4 Digite-a novamente: <SENHA ZABBIX>
5 Senha: <SENHA POSTGRES CASO TENHA DEFINIDO NA INSTALAÇÃO DO MESMO>
6 
7 $ createdb -O zabbix zabbix
8 Senha: <SENHA POSTGRES>
Copiar

Importe o esquema inicial e os dados. Você será solicitado a inserir a senha que foi criada anteriormente.

1 $ zcat /usr/share/zabbix-sql-scripts/postgresql/server.sql.gz | psql -U zabbix -d zabbix &>/dev/null
2 Senha para usuário zabbix: : <SENHA ZABBIX>
3 $ exit
Copiar

Configure o arquivo zabbix_server.conf para conectar ao banco de dados PostgreSQL.

1 # vim /etc/zabbix/zabbix_server.conf
Copiar

Descomente e defina a senha na linha # DBPassword=.

1 #...
2 DBPassword=<SENHA ZABBIX>
3 #...
Copiar

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
Copiar

Adicione timezone, e ajuste upload_max_filesize:

1 php_value[date.timezone] = America/Sao_Paulo
2 php_value[upload_max_filesize] = 100M
Copiar

Configure as definições do nginx.

1 # vim /etc/nginx/conf.d/zabbix.conf 
Copiar

Deixei algumas linhas comentadas como exemplo, faça de acordo com sua necessidade.

1 server {
2         listen 80;
3         listen [::]:80;
4         server_name    zabbix.remontti.com.br localhost;
5         #server_name   OU_SEU_IP;
6 
7         # Metodo simples para quem quer rodar em uma determinada porta
8         #listen 8181;
9         #listen [::]:8181;
10         #server_name     _;
11 
12         root    /usr/share/zabbix;
13         index   index.php;
14 
15         # Desmomente para deixar restringido apenas para determinados prefixos
16         #allow  192.168.87.0/24;
17         #allow  127.0.0.1;
18         #allow  2001:0db8::/32;
19         #allow  ::1;
20         #deny   all;
21         #error_page  403   http://www.remontti.com.br;
22 
23         client_max_body_size 100M;
24  
25         location = /favicon.ico {
26                 log_not_found   off;
27         }
28 
29         location / {
30                 try_files       $uri $uri/ =404;
31         }
32 
33         location /assets {
34                 access_log      off;
35                 expires         10d;
36         }
37 
38         location ~ /\.ht {
39                 deny            all;
40         }
41 
42         location ~ /(api\/|conf[^\.]|include|locale) {
43                 deny            all;
44                 return          404;
45         }
46 
47         location ~ [^/]\.php(/|$) {
48                 fastcgi_pass    unix:/var/run/php/zabbix.sock;
49                 fastcgi_split_path_info ^(.+\.php)(/.+)$;
50                 fastcgi_index   index.php;
51 
52                 fastcgi_param   DOCUMENT_ROOT   /usr/share/zabbix;
53                 fastcgi_param   SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name;
54                 fastcgi_param   PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name;
55 
56                 include fastcgi_params;
57                 fastcgi_param   QUERY_STRING    $query_string;
58                 fastcgi_param   REQUEST_METHOD  $request_method;
59                 fastcgi_param   CONTENT_TYPE    $content_type;
60                 fastcgi_param   CONTENT_LENGTH  $content_length;
61 
62                 fastcgi_intercept_errors        on;
63                 fastcgi_ignore_client_abort     off;
64                 fastcgi_connect_timeout         60;
65                 fastcgi_send_timeout            180;
66                 fastcgi_read_timeout            180;
67                 fastcgi_buffer_size             128k;
68                 fastcgi_buffers                 4 256k;
69                 fastcgi_busy_buffers_size       256k;
70                 fastcgi_temp_file_write_size    256k;
71         }
72 }
Copiar

Habilite o Zabbix para iniciar com o sistema.

1 # systemctl enable zabbix-server
Copiar

Vamos reiniciar os serviços

1 # systemctl restart zabbix-server zabbix-agent nginx
Copiar

Acesse http://seu_ip:porta ou http://zabbix.seudominio.com.br no navegador.

Siga as instruções de configuração na interface web do Zabbix.

Selecione o idioma, 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!

Related Posts

  • All Post
  • Documentos
  • Downloads
  • PROGRAMAÇÃO
  • Sem categoria
  • Tecnologia
  • VAGAS DEV
    •   Back
    • 6730
    • 6720
    •   Back
    • 7.0
    •   Back
    • Web
    • Mobile
    • GITHUB
    • Banco de Dados
    • Dicas
    • BackEnd
    • FrontEnd
    • MongoDB
    • Postgres
    • MySQL
    • SQL SERVER
    •   Back
    • Huawei
    • Cisco
    • 6730
    • 6720
    •   Back
    • Cisco
    • HUAWEI
    • NE40
    • NE8000
    •   Back
    • OLTS FTTH
    • Corporativos
    • Domésticos
    • RFC
    • FIBERHOME BRASIL
    • Roteador
    • Switch
    • Cisco
    • HUAWEI
    • NE40
    • NE8000
    • Huawei
    • Cisco
    • 6730
    • 6720
    •   Back
    • FIBERHOME BRASIL
    •   Back
    • Linux
    • Microsoft Windows
    •   Back
    • MongoDB
    • Postgres
    • MySQL
    • SQL SERVER
    •   Back
    • Sistemas
    • Monitoramento
    • Redes
    • Operacionais
    • Tutoriais
    • Linux
    • Microsoft Windows
    • ZABBIX
    • 7.0
    • OLTS FTTH
    • Corporativos
    • Domésticos
    • RFC
    • FIBERHOME BRASIL
    • Roteador
    • Switch
    • Cisco
    • HUAWEI
    • NE40
    • NE8000
    • Huawei
    • Cisco
    • 6730
    • 6720
    •   Back
    • NE40
    • NE8000
    •   Back
    • Operacionais
    • Tutoriais
    • Linux
    • Microsoft Windows
    •   Back
    • Roteador
    • Switch
    • Cisco
    • HUAWEI
    • NE40
    • NE8000
    • Huawei
    • Cisco
    • 6730
    • 6720
    •   Back
    • ZABBIX
    • 7.0

Leave a Reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Siga-nos

Recentes

No Posts Found!

Best Camping Shoes

Instagram

Categories

Edit Template

Receba novidades!

You have been successfully Subscribed! Ops! Something went wrong, please try again.

Posts

No Posts Found!

Eventos

No Posts Found!

© 2023 Created  LACASAWEB