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:
1 | sudo wget https://repo.zabbix.com/zabbix/5.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.0-1+focal_all.deb |
Em seguida vamos instalar o pacote do repositório:
1 | sudo dpkg -i zabbix-release_5.0-1+focal_all.deb |
Adicionar o repositório do TimescaleDB:
1 | sudo add-apt-repository ppa:timescale/timescaledb-ppa |
Vamos atualizar a base dos repositórios:
1 | sudo apt update |
Agora vamos instalar o banco de dados PostgreSQL 12 e o TimescaleDB:
1 | sudo 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:
1 | sudo -u postgres createuser --pwprompt zabbix |
2 | sudo -u postgres createdb -O zabbix zabbix |
Após a criação do banco de dados, vamos instalar os pacotes necessários para o Zabbix:
1 | sudo 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:
1 | sudo 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:
1 | sudo timescaledb-tune --pg-config=/usr/lib/postgresql/12/bin/pg_config --quiet -- yes |
Em seguida reinicie o serviço do PostgreSQL:
1 | sudo systemctl restart postgresql |
Vamos aplicar a extensão do TimescaleDB no banco de dados do Zabbix:
1 | echo "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:
1 | sudo 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:
1 | sudo vim /etc/zabbix/zabbix_server.conf |
2 | DBPassword=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:
1 | sed -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:
1 | sudo systemctl restart zabbix-server zabbix-agent apache2 |
2 | sudo 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!