Instalando e configurando o Zabbix 2

Instalando e Configurando Apache2

Primeiramente vamos instalar os pacotes do Apache2, necessários para o gerenciamento via web do Zabbix e mais algumas dependências.

root@debian:~# aptitude install apache2 php5 php5-gd php-pear php5-curl php5-xmlrpc
root@debian:~# aptitude install libmysql++-dev libcurl3-dev libcurl4-dev libsnmp-dev gettext fping

Com os pacotes instalados, vamos configurar alguns itens de segurança.

root@debian:~# vi /etc/apache2/conf.d/security

<Directory />
        AllowOverride None
        Order Deny,Allow
        Deny from all
</Directory>

ServerTokens Prod
ServerSignature Off
TraceEnable Off

E para finalizar, reiniciamos o serviço do Apache2.

root@debian:~# /etc/init.d/apache2 restart

Instalando e Configurando o MySQL

Aqui vamos instalar os pacotes necessários para o MySQL e o módulo PHP para suporte do Apache2 ao MySQL.

root@debian:~# aptitude install mysql-server-5.5 php5-mysql

Em seguida, vamos ajustas as configurações do MySQL para melhorar o funcionamento do mesmo.

root@debian:~# vi /etc/mysql/my.cnf

[...]
[mysqldump]
quick
quote-names
max_allowed_packet = 1M

Vamos aproveitar para adicionar algumas configurações que melhoram a performance do serviço.

root@debian:~# vi /etc/mysql/conf.d/tunning.cnf

[mysqld]
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# Split Tables
innodb_file_per_table = 1
key_buffer_size = 16M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

E por fim, reiniciar os serviços.

root@debian:~# /etc/init.d/mysql restart
root@debian:~# /etc/init.d/apache2 restart

Criando a base de dados no MySQL

Logue no MySQL com a conta de root para que possamos criar a base de dados para o Zabbix e o usuário de acesso à base.

root@debian:~# mysql -u root -p

Enter password: ********

mysql> create database zabbix character set UTF8;
mysql> grant all privileges on zabbix.* TO zabbix@localhost identified BY 'senha';
mysql> flush privileges;
mysql> quit

Baixando e instalando o pacote do Zabbix

Para fazer o download do Zabbix …

root@debian:~# wget "http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.5/zabbix-2.4.5.tar.gz"

Precisamos criar o grupo e usuário Zabbix para o serviço funcionar corretamente e já vamos descompactar o pacote.

root@debian:~# useradd --system zabbix

root@debian:~# mkdir -p /etc/zabbix
root@debian:~# mkdir -p /var/log/zabbix
root@debian:~# mkdir -p /var/run/zabbix

root@debian:~# chown zabbix /var/log/zabbix
root@debian:~# chown zabbix /var/run/zabbix

root@debian:~# tar xzvf zabbix-2.4.5.tar.gz
root@debian:~# mv zabbix-2.4.5 zabbix-2
root@debian:~# cd zabbix-2

Compilando o Zabbix Server

Agora é hora de compilar o serviço server.

root@debian:~/zabbix-2# ./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

Em seguida, instalar o serviço em nosso sistema.

root@debian:~/zabbix-2# make install

Finalizada a instalação, vamos carregar a estrutura do banco de dados do Zabbix para dentro do MySQL.

root@debian:~/zabbix-2# mysql -v -u zabbix -p zabbix < database/mysql/schema.sql
root@debian:~/zabbix-2# mysql -v -u zabbix -p zabbix < database/mysql/images.sql
root@debian:~/zabbix-2# mysql -v -u zabbix -p zabbix < database/mysql/data.sql

Configurando o servidor

Em seguida, para facilitar nossa vida, vamos criar um link simbólico do arquivo de configuração do Zabbix Server

root@debian:~/zabbix-2# ln -sf /usr/local/etc/zabbix_server.conf /etc/zabbix/zabbix_server.conf

… e configurá-lo.

root@debian:~/zabbix-2# vi /etc/zabbix/zabbix_server.conf

ListenPort=10051
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=1
PidFile=/var/run/zabbix/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=********

DBPort=3306
StartPollers=5
FpingLocation=/usr/bin/fping

Agora, vamos ajustar o init para carregamento do Zabbix no boot.

A primeira etapa é copiar o arquivo de init para o local correto.

root@debian:~/zabbix-2# cp misc/init.d/debian/zabbix-server /etc/init.d/

Para que o arquivo funcione corretamente na nossa configuração, precisamos ajustar a linha do pidfile.

root@debian:~/zabbix-2# vi /etc/init.d/zabbix-server

[...]
#PID=/tmp/$NAME.pid
PID=/var/run/zabbix/${NAME}.pid
[...]

Para finalizar, inicie o serviço.

root@debian:~/zabbix-2# /etc/init.d/zabbix-server start

Não esqueça de ativar o serviço para ser iniciado no boot do sistema

root@debian:~/zabbix-2# update-rc.d zabbix-server start 2345

Zabbix Server instalado e configurado com sucesso!

Configurando o Frontend

Agora iremos ajustar o ambiente para gerenciamento do Zabbix pelo browser.

O primeiro passo é copiar a estrutura web para a área de hospedagem do Apache2.

root@debian:~/zabbix-2# mkdir /var/www/zabbix
root@debian:~/zabbix-2# cp -av frontends/php/* /var/www/zabbix/
root@debian:~/zabbix-2# chown -R www-data.zabbix /var/www/zabbix/

Instalando outras linguagens

Caso você deseje, pode instalar o suporte a outros locales.

root@debian:~/zabbix-2# /var/www/zabbix/locale/make_mo.sh

Rodando o frontend

Acesse o serviço Zabbix no seu navegador.

http://<server_ip>/zabbix 

Resolva os pre-requisitos

PHP version		  5.4.4 	
PHP memory limit	  128MB             In php.ini: memory_limit = 128M
PHP post max size	  16MB              In php.ini: post_max_size = 16M
PHP max execution time	  300               In php.ini: max_execution_time = 300
PHP option max_input_time 300               In php.ini: max_input_time = 300
PHP time zone             America/Sao_Paulo In php.ini: date.timezone = America/Sao_Paulo
PHP database support	  MySQL             Install module: php5-mysql

Não esqueça de reiniciar o serviço do Apache2 para validar as configurações.

root@debian:~# /etc/init.d/apache2 restart

Voltando ao acesso web …

Configure os parâmetros para conexão ao banco

Database type		MySQL
Database host		localhost
Database port		3306
Database name		zabbix
User			zabbix
Password		********

Clique em "Teste connection" para ter certeza que a configuração está correta.

Em seguida, configure os dados do server

Host			localhost
Port			10051
Name			Zabbix

Revise a configuração

Finalize

Agora é só logar no Zabbix e configurá-lo.

http://<server_ip>/zabbix

Usuário: admin
Senha:   zabbix

Compilando Zabbix Agent no Linux

Para o lado cliente, o processo é parecido com o server, mas com certeza mais simples.

Caso não tenha baixado o source do pacote ainda, você pode consultar o tópico Baixando o pacote do Zabbix neste artigo.

Em seguida, vamos compilar o serviço.

root@debian:~/zabbix-2# ./configure --enable-agent --enable-static

Em seguida, instalar o serviço em nosso sistema.

root@debian:~/zabbix-2# make install

Vamos criar um link para o arquivo de configuração do agente para facilitar nosso trabalho …

root@debian:~/zabbix-2# ln -sf /usr/local/etc/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf

… e configurar o agente.

root@debian:~/zabbix-2# vi /etc/zabbix/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=1
EnableRemoteCommands=1
LogRemoteCommands=1
Server=127.0.0.1
ListenPort=10050
StartAgents=3
#ServerActive=127.0.0.1
Hostname=server

Agora, vamos ajustar o init para carregamento do agente no boot.

A primeira etapa é copiar o arquivo de init para o local correto.

root@debian:~/zabbix-2# cp misc/init.d/debian/zabbix-agent /etc/init.d/

Para que o arquivo funcione corretamente na nossa configuração, precisamos ajustar a linha do pidfile.

root@debian:~/zabbix-2# vi /etc/init.d/zabbix-agent

[...]
#PID=/tmp/$NAME.pid
PID=/var/run/zabbix/${NAME}.pid

test -f $DAEMON || exit 0

case "$1" in
  start)
        echo "Starting $DESC: $NAME"
        if [ ! -d /var/run/zabbix ]; then /bin/mkdir -p /var/run/zabbix ; fi
        /bin/chown zabbix /var/run/zabbix/
        start-stop-daemon --start --oknodo --pidfile $PID --exec $DAEMON
        ;;
[...]

… e agora podemos iniciar o agente.

root@debian:~/zabbix-2# /etc/init.d/zabbix-agent start

Não esqueça de ativar o serviço para ser iniciado no boot do sistema

root@debian:~/zabbix-2# update-rc.d zabbix-agent start 2345

Finalizada a configuração, agora podemos adicionar a máquina no servidor Zabbix e aplicar os Templates desejados.

Instalando Zabbix Agent no Windows®

Primeiramente, faça o download do agente para Windows® neste link.

Crie uma pasta com o nome Zabbix no C:\.

Descompacte o arquivo .zip que realizamos download e copie os seguintes arquivos para a pasta C:\Zabbix.

  • zabbix_agentd.conf
  • zabbix_agentd.exe
  • zabbix_get.exe
  • zabbix_sender.exe

NOTA: Observe que dentro da pasta descompactada, tem os arquivos .exe para Windows® 32 e 64 bits. Precisa copiar os arquivos corretos de acordo com a arquitetura do Sistema Operacional.

Em seguida, precisamos configurar o arquivo C:\Zabbix\zabbix_agentd.conf com as linhas a seguir:

LogFile=C:\Zabbix\zabbix_agentd.log
LogFileSize=1
DebugLevel=3
EnableRemoteCommands=1
LogRemoteCommands=1
Server=ip_servidor
ListenPort=10050
StartAgents=3
#ServerActive=127.0.0.1
Hostname=nome_servidor
Timeout=3

Para finalizar, vamos instalar o serviço Zabbix no Windows®.

Abra o Prompt de Comando e execute:

C:\> C:\Zabbix\zabbix_agentd.exe -i -c C:\Zabbix\zabbix_agentd.conf

Em seguida, acesse o Gerenciador de Serviços (services) e inicie o serviço Zabbix Agent.

Direitos: Instalação do cliente Windows® baseado nos tutoriais de Willian Tezza (willian.tezza@gmail.com).

Testando se o cliente está instalado corretamente

Conecte no servidor Zabbix e execute:

root@debian:~# zabbix_get -s 192.168.0.10 -k "agent.ping"

1



Voltar

linux/artigos/monitora-zabbix20.txt · Última modificação: 22/07/2015 13:18 por fabriciovc