Instalação Zabbix 3.0 + Postgresql

No Comments

Bem vindo caro leitor!

Neste artigo, vou descrever como realizar uma instalação do Zabbix 3.0 utilizando o banco de dados Postgresql. A instalação com o MySQL (ou MariaDB) é bem trivial e é um pouco difícil acharmos conteúdo com outro banco de dados por aí!

Mãos à obra!

Ambiente:

Já bem conhecido dos leitores do Blog, meu ambiente é o seguinte:

> Servidor VMWare 6
> VM Rodando CentOS 7 x86_64
> Sistema operacional atualizado (yum update)
> Ferramentas de compilação e desenvolvimento instaladas (yum groupinstall ‘Development Tools’)
> SELinux e firewalld desabilitados;

Logo estarei postando um vídeo sobre como instalar seu servidor de forma correta. Coloco o link aqui assim que estiver disponível!

Instalação do PGSQL:

Nosso primeiro passo vai ser instalar o Postgresql. Para esse tutorial, vamos instalar a versão disponível nos repositórios do Yum. O pacote é bem atual e não devemos ter problemas (Versão 9.2.14).

Instalando:

# yum install postgresql postgresql-server -y

Ao término da instalação, o Postgresql não é iniciado automaticamente e nem conseguimos iniciar ele via systemctl diretamente. Para finalizar nossa instalação e marcar o serviço para iniciar automaticamente com o Linux, é necessário rodar os seguintes comandos (junto com os retornos esperados):

# postgresql-setup initdb
Initializing database … OK

#  systemctl enable postgresql.service
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to
/usr/lib/systemd/system/postgresql.service.

# systemctl start postgresql.service

Por padrão, quando instalamos o Postgres, ele cria o arquivo pg_hba.conf, que é um arquivo que controla a origem, usuário e método das conexões ao banco de dados. Na configuração inicial, ele permite que acessemos o banco de dados sem nenhuma senha. Vamos alterar esse comportamento. Primeiro precisamos definir a senha do usuário do banco para depois alterar o arquvo de configuração pg_hba.conf para exigir senha.

Vamos logar com o usuário postgres (criado na instalação do banco):

# su – postgres

Vamos cair em outro terminal. Nesse novo terminal vamos acessar o banco com o comando psql:

-bash-4.2$ psql

psql (9.2.14)
Digite “help” para ajuda.

Aqui já teremos o prompt do banco (postgres=#). Vamos alterar a senha do usuário:

postgres=# ALTER ROLE postgres WITH PASSWORD ‘senha123’;
ALTER ROLE

Agora vamos criar o banco zabbix:

postgres=# CREATE DATABASE zabbix;
CREATE DATABASE

Criar o usuário zabbix e dar todos os grants no banco de dados zabbix:

postgres=# CREATE USER zabbix WITH PASSWORD ‘zabbix’;
CREATE ROLE

postgres=# GRANT ALL ON DATABASE zabbix TO zabbix;
GRANT

Você pode usar o comando \l para listar os bancos de dados existentes ou \q para sair.

postgres=# \q

E digite logout ou exit para sair do usuário postgres e voltar ao root!

Configurando o controle de acesso (pg_hba.conf)

# vi /var/lib/pgsql/data/pg_hba.conf

Lá embaixo, no campo “# IPv4 local connections:”, altere a linha para que fique dessa forma:

host    all    all    127.0.0.1/32              md5

Salve o arquivo e reinicie o PGSQL:

# systemctl restart postgresql.service

Instalando o Zabbix:

Vamos começar instalando o RPM. Você pode entrar na sessão de Downloads para CentOS 7 no site da Zabbix e copiar o endereço da release da versão mais nova. No momento que escrevo esse artigo, é a versão 3.0.1.

# rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm

E agora, pelo próprio Yum, podemos instalar o Zabbix propriamente dito:

# yum install zabbix-server-pgsql zabbix-web-pgsql zabbix-agent -y

Configurando o PHP:

Quando instalamos o Zabbix pelo Yum, ele já instala e configura todas as dependências, com exceção do date.timezone do php.ini. Precisamos configurar, senão teremos um erro na instalação do frontend.

# vi /etc/php.ini

Vamos descomentar a linha date.timezone e inserir America/Sao_Paulo. A linha vai ficar assim:

date.timezone = America/Sao_Paulo

Salve o arquivo.

Populando o banco de dados:

Agora precisamos preparar o schema e os dados iniciais do banco de dados para que ele suporte o Zabbix. Vamos rodar os scripts que acompanham a instalação do Zabbix.

# cd /usr/share/doc/zabbix-server-pgsql-3.0.0

# zcat create.sql.gz | psql -h 127.0.0.1 -U zabbix zabbix

Utilize a senha cadastrada anteriormente, no caso desse tutorial, é zabbix.

Arquivos de configuração do Zabbix:

Conf do Zabbix Server:

# vi /etc/zabbix/zabbix_server.conf

Altere os campos (É IMPORTANTE ALTERAR O DBHOST para 127.0.0.1):

DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

Conf do Zabbix Agent:

# vi /etc/zabbix/zabbix_agentd.conf

Só confira os seguintes campos:

Server=127.0.0.1
Hostname=Zabbix Server

Habilitando e iniciando os serviços:

Vamos configurar todos os serviços para subirem junto com o Linux

# systemctl enable httpd

# systemctl enable zabbix-server

# systemctl enable zabbix-agent

# systemctl start httpd

# systemctl start zabbix-server

# systemctl start zabbix-agent 

Instalando o FrontEnd:

Aponte seu navegador para http://IP_DO_SERVIDOR/zabbix (no meu caso, http://192.168.1.150/zabbix) e siga conforme as telas:

instal1.fw

Nenhum erro de pré-requisito:

instal2.fw

Senha do banco no exemplo é zabbix:

instal3.fw

Porta padrão, só mudei o nome da instalação:

instal4.fw

Sumário da instalação:

instal5.fw

Parabéns \o/

instal6.fw

Não esqueça da pegadinha do “A” maiúsculo no Admin:

instal7.fw

Zabbix rodando no Postgresql:

instal8.fw

Agora basta configurar e é só sucesso!

Espero que tenham gostado desse artigo! Aguardem os próximos!

Abraço!

Profissional com mais de 10 anos de experiência em redes, infra estrutura, ambientes Windows e Linux. Atualmente trabalha com tecnologias open source para monitoramento, backup, virtualização e segurança da informação.

Sobre o blog M2 Networks

Esse blog é mantido para ajudar profissionais de TI e clientes que querem conhecer melhor as ferramentas utilizadas pela M2 Networks.

Consulte-nos

Gostou do artigo e quer saber mais como podemos ajudar a manter a tecnologia alinhada ao seu negócio? Entre em contato e solicite a presença de um especialista.

Assine nossa newsletter

Mais artigos

Todos os posts