Como instalar o Zabbix 5.0 com o TimescaleDB no Ubuntu 20.04

Como instalar o Zabbix 5.0 com o TimescaleDB no Ubuntu 20.04

O TimescaleDB é uma extensão do PostgreSQL que utiliza séries temporais sobre um banco de dados SQL convencional e com isso obtemos o melhor que os dois mundos podem nos oferecer.

Hoje vamos ver a instalação do Zabbix 5.0 utilizando essa extensão do PostgreSQL. O TimescaleDB é muito eficiente e nos oferece algumas melhorias consideráveis quando utilizado com o banco de dados do Zabbix, como por exemplo, para obter melhor desempenho nos processos de History Syncer e housekeeper do Zabbix, além de ser otimizado para suportar várias ingestões rápidas de novos valores no banco de dados, fazendo com que o Zabbix não perca desempenho.

O Zabbix vem melhorando a utilização em modo experimental desde a versão 4.2 e a versão 5.0 se tornou oficial além de nos possibilitar realizar a compactação de tabelas do Zabbix.

Mão na massa!

Bom chega de enrolação e vamos para a parte prática!

Nesse laboratório utilizarei um servidor com o Ubuntu 20.04.

Em primeiro lugar, vamos fazer o download do pacote que contém o repositório Zabbix:

Em seguida vamos instalar o pacote do repositório:

1sudo dpkg -i zabbix-release_5.0-1+focal_all.deb

Adicionar o repositório do TimescaleDB:

1sudo add-apt-repository ppa:timescale/timescaledb-ppa

Vamos atualizar a base dos repositórios:

1sudo apt update

Agora vamos instalar o banco de dados PostgreSQL 12 e o TimescaleDB:

1sudo apt install postgresql-12 timescaledb-postgresql-12

Após a instalação, vamos criar o banco de dados e o usuário para o Zabbix: será solicitada a criação de uma senha para o usuário, utilizarei a senha 4linux:

1sudo -u postgres createuser --pwprompt zabbix
2sudo -u postgres createdb -O zabbix zabbix

Após a criação do banco de dados, vamos instalar os pacotes necessários para o Zabbix:

1sudo apt install zabbix-server-pgsql zabbix-frontend-php php7.4-pgsql zabbix-apache-conf zabbix-agent

Em seguida vamos importar o schema inicial do banco de dados do Zabbix:

1sudo zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix

Após a importação vamos realizar o tunning do TimescaleDB:

1sudo timescaledb-tune --pg-config=/usr/lib/postgresql/12/bin/pg_config --quiet --yes

Em seguida reinicie o serviço do PostgreSQL:

1sudo systemctl restart postgresql

Vamos aplicar a extensão do TimescaleDB no banco de dados do Zabbix:

1echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix

Após aplicar a extensão vamos executar o script do timescaledb.sql no banco de dados do Zabbix:

1sudo cat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql | sudo -u zabbix psql zabbix

Vamos editar o arquivo /etc/zabbix/zabbix_server.conf, descomentar o parâmetro DBPassword e definir a senha do banco que foi criado:

1sudo vim /etc/zabbix/zabbix_server.conf
2DBPassword=4linux

Em seguida vamos editar o arquivo /etc/zabbix/apache.conf, descomentando o parâmetro php_value date.timezone e definindo o fuso horário. Para isso vamos utiliza o comando sed:

1sed -i "s/^        # php_value date.timezone .*/        php_value date.timezone America\/Sao_Paulo/" /etc/zabbix/apache.conf

Vamos iniciar os serviços do Zabbix, agent e apache2 e configurá-los para inicializar na inicialização:

1sudo systemctl restart zabbix-server zabbix-agent apache2
2sudo systemctl enable zabbix-server zabbix-agent apache2

Após inciar os serviços basta acessar o endereço http://IP_DO_SERVIDOR/zabbix.

Vamos visualizar a tela boa boas vindas do Zabbix que é onde vamos configurar sua interface web.

Tela inicial da interface web do Zabbix.

Clique no botão Next step. Na próxima tela, vamos verificar o check dos pré-requisitos.

Checklist do sistema.

Clique no botão Next step.

Informe as informações necessárias para se conectar ao banco de dados do Zabbix.

Host: localhost
Database name: zabbix
User: zabbix
Password: 4linux

Configuração do banco de dados do Zabbix.

Clique no botão Next step.

Vamos inserir o nome que será exibido no frontend do Zabbix.

Name: zabbix_server

Informações adicionais para o frontend do Zabbix.

Clique no botão Next step.

Verifique se as configurações estão corretas.

Resumo da instalação.

Clique no botão Next step.

Parabéns! A instalação foi finalizada com sucesso.

Tela da finalização da instalação.

Clique no botão Finish.

Por fim basta validar o acesso utilizando o usuário Admin e a senha zabbix.

Tela de login da interface web.

Neste post você aprendeu de forma resumida como instalar o Zabbix 5.0 com o TimescaleDB, esperamos que tenha sido útil. Até a próxima!

Mais informações:

Um banco de dados “Time Series” chamado TimescaleDB!

Líder em Treinamento e serviços de Consultoria, Suporte e Implantação para o mundo open source. Conheça nossas soluções:

CURSOSCONSULTORIA

Anterior Conhecendo o Kernel Linux pelo /proc (parte 3) – Mapeamento de memória virtual
Próxima Primeiros passos com OpenStack: Como criar um ambiente de testes

About author

Rauny Moreira
Rauny Moreira 3 posts

Rauny Moreira atua como Analista de Infraestrutura em Software Livre, estudante de Redes de Computadores pela Universidade Nove de Julho. Possui experiência em ferramentas voltadas para aplicação da cultura Devops, com ênfase em monitoramento. Detém expertise como instrutor de cursos voltados ao Sistema Operacional Linux e Ferramentas de Monitoramento OpenSource, possui Certificação Zabbix 4.0 Certified Specialist.

View all posts by this author →

Você pode gostar também

Infraestrutura TI

Descubra como otimizar sua experiência de jogos no Linux

Jogar é um excelente passatempo. Pessoas de todos os cantos do mundo se reúnem em grupos, seja para atirar, pilotar, construir, ou simplesmente socializar enquanto salvamos alguns reféns em perigo

Notícias

Descubra as vantagens do Linux e como migrar facilmente para ele

O Linux é um sistema operacional que tem ganhado popularidade entre usuários comuns, principalmente por ser gratuito e de código aberto. Mas o que exatamente o Linux pode oferecer para

Infraestrutura TI

Guia prático: Como otimizar buscas no MongoDB com Aggregate

Descubra como processar documentos distintos agrupados em uma única saída para facilitar a geração de resultados e performance quando preciso efetuar buscas em banco de dados MongoDB A seguir explicarei