Você está na página 1de 61

Manual de Instalacao e de Utilizacao do Zabbix

8 de fevereiro de 2013
Manual de Instalacao e de Utilizacao do Zabbix

Sumario

1 Introducao 5

2 Objetivos 5

3 Pre-requisitos 5

4 Instalacao em ambientes Linux 5

4.1 MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4.2 Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4.3 PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4.4 Zabbix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

4.4.1 Zabbix Server . . . . . . . . . . . . . . . . . . . . . . . 7

4.4.2 Criando um Banco de Dados . . . . . . . . . . . . . . . 8

4.4.3 Zabbix Agent (clientes) . . . . . . . . . . . . . . . . . . 9

5 Ambiente WEB 10

5.1 Instalacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

6 Monitorando com Zabbix 15

6.1 Adicionando Usuarios . . . . . . . . . . . . . . . . . . . . . . . 15

6.2 Criando Hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

6.3 Criando Itens . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

6.4 Emitindo Triggers . . . . . . . . . . . . . . . . . . . . . . . . . 19

6.5 Enviando emails . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Laboratorio de Software Livre 1


Manual de Instalacao e de Utilizacao do Zabbix

6.6 Mdias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.7 Acoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

6.8 Graficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

6.9 Comando Remoto . . . . . . . . . . . . . . . . . . . . . . . . . 24

6.10 Apendice A: Instalando o Zabbix no Ubuntu . . . . . . . . . . 25

6.11 Apendice B: Demais Funcionalidades do Zabbix . . . . . . . . 27

6.12 Monitoramento . . . . . . . . . . . . . . . . . . . . . . . . . . 27

6.12.1 Dashboard . . . . . . . . . . . . . . . . . . . . . . . . . 27

6.12.2 Visao Geral . . . . . . . . . . . . . . . . . . . . . . . . 28

6.12.3 Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

6.12.4 Dados Recentes . . . . . . . . . . . . . . . . . . . . . . 28

6.12.5 Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6.12.6 Eventos . . . . . . . . . . . . . . . . . . . . . . . . . . 30

6.12.7 Graficos . . . . . . . . . . . . . . . . . . . . . . . . . . 30

6.12.8 Telas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

6.12.9 Mapas . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

6.12.10 Autobusca . . . . . . . . . . . . . . . . . . . . . . . . . 31

6.12.11 Servicos de TI . . . . . . . . . . . . . . . . . . . . . . . 31

6.13 Relatorios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6.13.1 Status do Zabbix . . . . . . . . . . . . . . . . . . . . . 32

6.13.2 Relatorio de Disponibilidade . . . . . . . . . . . . . . . 32

6.13.3 Triggers Mais Ativados - Top 100 . . . . . . . . . . . . 33

6.13.4 Relatorios de Barra . . . . . . . . . . . . . . . . . . . . 33

Laboratorio de Software Livre 2


Manual de Instalacao e de Utilizacao do Zabbix

6.14 Configuracao . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.14.1 Grupos de Host . . . . . . . . . . . . . . . . . . . . . . 34

6.14.2 Templates . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.14.3 Manutencao . . . . . . . . . . . . . . . . . . . . . . . . 36

6.14.4 Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

6.14.5 Telas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

6.14.6 Slides . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

6.14.7 Mapas . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

6.14.8 Autobusca . . . . . . . . . . . . . . . . . . . . . . . . . 40

6.14.9 Servicos de TI . . . . . . . . . . . . . . . . . . . . . . . 41

6.15 Administracao . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6.15.1 Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6.15.2 MD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

6.15.3 Autenticacao . . . . . . . . . . . . . . . . . . . . . . . 45

6.15.4 Usuarios . . . . . . . . . . . . . . . . . . . . . . . . . . 46

6.15.5 Tipos de Mdias . . . . . . . . . . . . . . . . . . . . . . 46

6.15.6 Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

6.15.7 Auditoria . . . . . . . . . . . . . . . . . . . . . . . . . 48

6.15.8 Fila . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

6.15.9 Notificacoes . . . . . . . . . . . . . . . . . . . . . . . . 49

6.15.10 Idiomas . . . . . . . . . . . . . . . . . . . . . . . . . . 49

6.15.11 Instalacao . . . . . . . . . . . . . . . . . . . . . . . . . 50

6.16 Apendice C - SLA . . . . . . . . . . . . . . . . . . . . . . . . . 50

Laboratorio de Software Livre 3


Manual de Instalacao e de Utilizacao do Zabbix

6.17 Apendice D - Enviar Mensagem via SMS . . . . . . . . . . . . 52

6.18 Apendice E - Monitorar Paginas de Internet . . . . . . . . . . 55

6.19 Apendice F - Miscelanea . . . . . . . . . . . . . . . . . . . . . 57

7 Creditos 60

Laboratorio de Software Livre 4


Manual de Instalacao e de Utilizacao do Zabbix

1 Introducao

O Zabbix e uma ferramenta de monitoramento de recursos funcionais


de hardware e software distribudos em rede. Sua simplicidade, interface
atraente e eficacia sao adjetivos que justificam a utilizacao dessa poderosa
ferramenta.

2 Objetivos

Esse documento tem a finalidade de descrever os varios passos para


a utilizacao da ferramenta Zabbix. Portanto, descreveremos a instalacao
dele no Linux, seguido dos conceitos e aplicacao ao montar uma rede de
monitoramento.

3 Pre-requisitos

Partindo do princpio que estamos utilizando a versao 1.8 ou superior


do Zabbix, as seguintes dependencias sao necessarias para o correto funciona-
mento da ferramenta:

PHP 5.0 ou superior;

MySQL 3.22 ou superior;

Apache 1.3.12 ou superior.

E importante que essas dependencias estejam em versoes estaveis,


para se garantir um perfeito funcionamento da ferramenta.

4 Instalacao em ambientes Linux

Vamos instalar o MySQL, o PHP e o Apache. Nesse link http://migre.me/8X02L


vemos alguns sub pacotes de cada programa que tem que estar marcados no

Laboratorio de Software Livre 5


Manual de Instalacao e de Utilizacao do Zabbix

momento da instalacao (utilizando emerge -av nome do programa). Se algum


desses sub pacotes nao estiverem marcados, entre no arquivo /etc/portage/package.use
e insira (ou altere) a linha correspondente ao programa em questao.

4.1 MySQL

Precisamos de um gerenciador de banco de dados para utilizar o Zabbix.


Vamos utilizar o MySQL em ambiente Linux Gentoo. Como usuario de root,
simplesmente coloque esse comando no terminal e aguarde a instalacao:

# emerge mysql

4.2 Apache

Agora instalaremos o Apache. Utilizaremos o seguinte comando no ter-


minal:

# emerge apache

4.3 PHP

Para o PHP, usamos o seguinte comando:

# emerge php

Depois entramos na pasta /etc/conf.d/apache2, na variavel APACHE2 OPTS=


e deixamos ela como APACHE2 OPTS=-D PHP -D PHP5 .

4.4 Zabbix

Por fim, instalaremos o Zabbix. No Gentoo, a instalacao e muito facil.


Mas temos que definir muito bem dois conceitos: servidor e cliente. Partindo
do princpio que as maquinas estao em rede, teremos obrigatoriamente uma
maquina servidora, ou seja, e ela que vai funcionar o programa Zabbix que
coletara as informacoes das outras maquinas (ou ate dela mesma) e fara

Laboratorio de Software Livre 6


Manual de Instalacao e de Utilizacao do Zabbix

todo o gerenciamento das informacoes. Cliente sao as maquinas que terao


suas informacoes coletadas e estabelecera a conexao com a servidora.

4.4.1 Zabbix Server

Vamos instalar o Zabbix na maquina servidora. Sempre esteja como


usuario root. Va no arquivo package.use da pasta /etc/portage (utilize o
VI ou VIM) e adicione a seguinte linha no mesmo:

net-analyzer/zabbix mysql server ssh frontend -sqlite3 -agent proxy snmp


curl ipv6 jabber ldap openipmi -oracle -postgres

Perceba o seguinte: colocamos -agent, ou seja, na maquina servidora


nao vai instalar o agente (cliente). Como, nesse caso, vamos monitorar a
maquina servidora tambem, tire o sinal de menos, deixando a palavra agent
dessa maneira, ou seja, simplesmente deixe o comando acima como:

net-analyzer/zabbix mysql server ssh frontend -sqlite3 agent proxy snmp


curl ipv6 jabber ldap openipmi -oracle -postgres

Salve o arquivo package.use e digite:

# emerge -av zabbix

e digite yes e aguarde a instalacao.

Inicie o MySQL com:

# /etc/init.d/mysql start

Pronto. Agora va no arquivo /etc/services e coloque as quatro linhas


seguintes:

zabbix agent 10050/tcp Zabbix Agent

zabbix agent 10050/udp Zabbix Agent

zabbix trapper 10051/tcp Zabbix Trapper

zabbix trapper 10051/udp Zabbix Trapper

Salve o arquivo e saia.

Laboratorio de Software Livre 7


Manual de Instalacao e de Utilizacao do Zabbix

Entre no arquivo /etc/zabbix/zabbix server.conf e deixe as varaveis como:

DBHost=localhost

DBName=zabbix

DBUser=root

DBPassword=password do MySQL

Salve e feche o arquivo.

4.4.2 Criando um Banco de Dados

Vamos criar um banco de dados em MySQL. Podemos usar outros, como


Oracle, PostgreSQL, mas nos limitaremos ao MySQL mesmo. Se quiser
usar outro gerenciador, consulte a documentacao oficial do Zabbix http://
www.zabbix.com/documentation/1.8/manual/installation na secao 4.3
Zabbix Server. Digite os comandos no terminal:

# mysql -u<username> -p<password>

mysql> create database zabbix;

mysql> quit

Infelizmente vamos ter que baixar a versao compactada do Zabbix pois


ele tem alguns arquivos que vao nos auxiliar a configurar o banco de dados.
Para tanto, baixe o Zabbix no site:

http://www.zabbix.com/download.php

Agora vamos extrair os arquivos necessarios.

# tar -zxf zabbix-1.8.tar.gz

Ainda no terminal, entre na pasta criada. Agora faca os seguintes coman-


dos:

# cd create/schema

Laboratorio de Software Livre 8


Manual de Instalacao e de Utilizacao do Zabbix

# cat mysql.sql | mysql -u<username> -p<password> zabbix

# cd ../data

# cat data.sql | mysql -u<username> -p<password> zabbix

# cat images mysql.sql | mysql -u<username> -p<password> zabbix

Observacao importante: os comandos que comecam com cat, quando


acionados, devemos esperar ate terminar, pois nesses casos a estrutura de
dados do banco de dados esta sendo sobrescrita e caso essa tarefa nao seja
completada, poderemos ter problemas futuros.

Agora e so usar o comando:

# /etc/init.d/zabbix-server start

que o servidor Zabbix estara rodando!

4.4.3 Zabbix Agent (clientes)

Agora instalaremos o agent. Se voce seguiu o tutorial ate agora, temos


um agent na maquina servidora, porem, vamos instalar um agent em uma
maquina cliente.

Entre no terminal de uma maquina cliente (pode ser diretamente ou


atraves de ssh de outra maquina), entre no terminal e coloque o usuario
root.

Entre no arquivo /etc/portage/package.use e coloque a seguinte linha


nele:

net-analyzer/zabbix mysql agent -sqlite3.

Perceba que e necessario que o MySQL esteja instalado na maquina


cliente. Salve o arquivo, saia e digite:

# emerge -av zabbix

e digite YES.

Laboratorio de Software Livre 9


Manual de Instalacao e de Utilizacao do Zabbix

Va no arquivo /etc/zabbix/zabbix agentd.conf. Na linha Server= ...coloque,


ou o nome da maquina servidora ou o seu ip. Na linha Hostname= ...coloque,
ou o nome da maquina cliente em questao ou o seu ip. Descomente as linhas:
ListenPort=10050 e ServerPort=10051.

Por fim, digite

# /etc/init.d/zabbix-agentd start

e teremos um agente instalado e funcionando no cliente.

5 Ambiente WEB

5.1 Instalacao

Um recurso poderoso e util e a interface web do Zabbix. Para utiliza - la,


e necessario fazer alguns ajustes.

Entre no terminal e fique como usuario root. Inicie o apache com o


comando

# /etc/init.d/apache2 start

e em seguida entre no arquivo

# vim /etc/php/apache2-php5.4/php.ini

e iremos mudar algumas variaveis. Deixe as respectivas linhas tais como


estao abaixo:

memory limit = 256


post max size = 32M
upload max filesize = 16M
max execution time = 600
max input time = 600
date.timezone = America/Sao Paulo

Laboratorio de Software Livre 10


Manual de Instalacao e de Utilizacao do Zabbix

Se mudou as variaveis conforme mostrado acima, salve o arquivo e saia.


Em seguida, no terminal, digite:

# mkdir /var/www/zabbix

Na pasta do Zabbix que fizemos download da pagina do programa, faze-


mos:

# cd frontends/php

# cp * -R /var/www/zabbix/

Abra um navegador a sua preferencia e digite http://localhost/zabbix/na


barra de enderecos. Vai aparecer uma janela como na figura abaixo. Clique
em next.

Agora clicamos em I agreee clique em next:

Se o arquivo php.inifoi configurado corretamente, todos os campos


dessa tela ficarao com os estados ok, permitindo avancarmos uma tela
clicando em next. Se algum campo nao estiver com o ok, va ate o arquivo
php.ini, mude a variavel correspondente como o Zabbix pede Recom-
mendede atualize a pagina.

Nessa tela, o Zabbix vai testar se o MySQL esta funcionando. Digite a


senha do MySQL, coloque o nome da maquina servidora e clique em Test

Laboratorio de Software Livre 11


Manual de Instalacao e de Utilizacao do Zabbix

Connectione se a senha estiver correta, vai aparecer um ok, possibilitando


que avancemos clicando em next.

Agora informaremos a porta da servidora. Em Name, coloque o nome


do host (computador cliente) e clicamos em next:

Laboratorio de Software Livre 12


Manual de Instalacao e de Utilizacao do Zabbix

Nas telas abaixo, clique em nextate concluir a instalacao, exceto em


uma parte que pede para salvar o arquivo zabbix.conf.phpna pasta:

/var/www/localhost/htdocs/zabbix/conf. Faca isso.

Laboratorio de Software Livre 13


Manual de Instalacao e de Utilizacao do Zabbix

Laboratorio de Software Livre 14


Manual de Instalacao e de Utilizacao do Zabbix

6 Monitorando com Zabbix

Com tudo instalado, vamos partir para a parte do monitoramento. Por


default, seu usuario e admin e sua senha e zabbix. O idioma do Zabbix
esta em ingles. Para altera - lo, va em Configuracoese coloque o idioma
para Portugues Brasileiro.

6.1 Adicionando Usuarios

Podemos alterar o nome e senha do usuario default ou adicionar out-


ros usuarios. Va em Administracao -> Usuariose altere de Grupo de
Usuariospara Usuarios. Veja que o usuario Adminesta a mostra, logo
podemos configura - lo, como tambem podemos adicionar novos usuarios.
Independente da escolha, havera uma guia chamada Mdiacom um campo
Adicionar. Nao criamos uma mdia ainda, mas quando criarmos, vamos
escolher ela.

Laboratorio de Software Livre 15


Manual de Instalacao e de Utilizacao do Zabbix

6.2 Criando Hosts

Vamos para a parte interessante, monitorar maquinas! Mas temos alguns


conceitos importantes para ver primeiro:

hosts: sao as maquinas monitoradas pelo servidor.

tens: sao as informacoes coletadas pelo servidor de cada host.

trigger: sao mensagens de alerta caso algum tem se comporte de


maneira nao esperada, conforme pre - estabelecido.

acoes: Apos emitir os alertas, podemos ter uma acao relativa ao tem e
ao trigger, por exemplo, suponhamos que estejamos monitorando uma
maquina X (host), o MySQL dela (tem) e que o MySQL pare. Podera
ser emitido um alerta (trigger) e essa mensagem sera enviada por email
para o administrador do Zabbix (acao).

De posse dos conceitos basicos, vamos criar o nosso primeiro host. De-
vemos certificar que a maquina que queremos monitorar esta com MySQL e

Laboratorio de Software Livre 16


Manual de Instalacao e de Utilizacao do Zabbix

o Zabbix Agent instalados, devidamente configurados e inicializados. Va na


aba Configuracao -> Hostse clique em Criar Host. Aparecera uma tela
como a que temos abaixo:

De um nome para o seu host (geralmente o nome da maquina). Voce


pode colocar ela em um grupo de maquinas, utilizando as setinhas <<ou
>>(o grupo da maquina tem que ficar no quadro da esquerda) e escolha o
grupo de preferencia. Na parte Endereco Ip, coloque o endereco do Ip da
maquina cliente em questao e clique em salvar.

6.3 Criando Itens

Itens, como mencionado, sao tarefas dadas ao servidor para que informacoes
das clientes sejam coletadas. Uma vez criado um host, na aba Configuracao
-> Hosts, clique em Itenscorrespondente ao host desejado.

Clique no campo Selecionare escolha o dado que queira monitorar.


Por exemplo, vamos monitar o MySQL em uma maquina. Escolha a opcao
proc.num. Na guia Chave, perceba que proc.num tem campos que pre-
cisam ser alterados. Deixamos proc.num[,mysql] para monitar o MySQL, mas
podemos deixar proc.num[,apache] caso seja o Apache ou proc.num[java,,,tomcat]
se quisermos monitorar o Tomcat, etc.

Laboratorio de Software Livre 17


Manual de Instalacao e de Utilizacao do Zabbix

Na guia Tipo de informacaodeixamos como Numerico (fracionario)e


por fim, clicamos em Salvar.

Partindo do princpio que existirao maquinas que terao os mesmos tens,


criamos os tens em um host so, selecionamos os tens e colocamos a opcao
Copias selecionado (s) para ..., escolhemos em quais hosts os itens serao
copiados.

Demos somente um exemplo simples. Para mais detalhes consulte o site


abaixo.

http://www.zabbix.com/documentation/1.8/manual/config/items

Perceba que na coluna Statusaparece como Inativoem vermelho. Clique


nela para ficar em Ativoem verde. Se estiver como Nao suportado,
provavelmente o erro aconteceu na hora de preencher os campos correspon-
dentes a Chave. Volte la e conserte!

Laboratorio de Software Livre 18


Manual de Instalacao e de Utilizacao do Zabbix

6.4 Emitindo Triggers

Pronto, criamos um ou mais tens, que por si so, simplesmente pegam in-
formacoes dos clientes e colocam no banco de dados. Mas queremos trabalhar
essas informacoes. Podemos estabelecer condicoes que, se nao satisfeitas, al-
guma acao podera ser feita. Mas lembrando, triggers so mandam alertas,
acoes e na proxima parte!

Clique em Configuracoes -> Hosts, clique em Triggerse clique em


Criar Trigger. Aparecera uma tela como a que esta mostrada abaixo:

Na guia nome, coloque o nome da sua trigger, como por exemplo, Pro-
cessos no MySQL. Na guia, Expressao, clique em Adicionar. Aparecera
uma tela, como mostrado na figura abaixo:

Na guia Item, escolhemos um tem de nossa preferencia, e na guia


Funcao, definimos uma condicao para que a trigger seja acionada. Por

Laboratorio de Software Livre 19


Manual de Instalacao e de Utilizacao do Zabbix

exemplo, se o MySQL parar de funcionar, emita um alarme. Logo escolha


Last Value = Ne deixe a guia N(ultima de cima para baixo) como zero e
clique em inserir. Na proxima tela, defina o grau do trigger caso ele aconteca,
como Nao classificada, Informacao, etc. Clique em Salvar.

Os triggers tambem podem ser copiados para outros hosts caso haja ne-
cessidade. Selecione - os e clique em Copiar selecionado (s) para ...e sele-
cionamos em quais hosts os triggers vao ser copiados.

Para mais detalhes sobre triggers, consulte a pagina:

http://www.zabbix.com/documentation/1.8/manual/config/triggers

6.5 Enviando emails

Gostaramos que, quando um alerta for acionado, um email seja enviado


para o administrador do Zabbix.

Existem varios artigos sobre o tema, mas nos basearemos no artigo escrito
Andre Deo, encontrado no site:

http://migre.me/88OBN

Faca download do servidor de email, Sendmail, no site:

http://caspian.dotconf.net/menu/Software/SendEmail/#download

Descompacte o arquivo baixado com o comando:

# tar -xzvf sendEmail-*.tar.gz

Copie o binario para o diretorio /usr/bin/:

# cp sendEmail-*/sendEmail /usr/bin/

Criar diretorio em /etc/zabbix/scripts:

# mkdir /etc/zabbix/scripts

Entrar no diretorio:

# cd /etc/zabbix/scripts

Laboratorio de Software Livre 20


Manual de Instalacao e de Utilizacao do Zabbix

Criar o arquivo zabbix sendmail.sh com o seguinte conteudo:

# !/bin/bash

export smtpemailfrom=email que vai enviar


export zabbixemailto=$1
export zabbixsubject=$2
export zabbixbody=$3
export smtpserver=SMTP. Exemplo: smtp.gmail.com
export smtplogin=usuario
export smtppass=senha do email

/usr/bin/sendEmail -f $smtpemailfrom -t $zabbixemailto -u $zabbixsub-


ject -m $zabbixbody -s $smtpserver:25 (mas pode ser 587 ao inves de 25)-xu
$smtplogin -xp $smtppass

Salvar o script.

Observacao: fizemos o teste com uma maquina Ubuntu e apareceu o


seguinte erro:

Feb 01 10:58:01 home sendEmail[8558]: NOTICE => Authentication not supported by the rem
Feb 01 10:58:01 home sendEmail[8558]: ERROR => Received: 530 5.7.0 Must issue a STARTT

Entao fizemos os seguintes ajustes. Primeiro acresentamos o comando


-o tls=yes na ultima linha do script e em seguida instalamos a biblioteca
libnet-smtp-ssl-perl com o comando sudo apt-get install libnet-smtp-ssl-perl
e o problema foi resolvido.

Tornar o script executavel:

# chmod +x zabbix sendemail.sh

Alterar as permissoes do diretorio e do script:

# chown -R zabbix:zabbix /etc/zabbix/scripts

Testar se o script foi configurado corretamente:

# ./zabbix sendemail.sh email@destino -m Ola Mundo

Laboratorio de Software Livre 21


Manual de Instalacao e de Utilizacao do Zabbix

Se tudo deu certo voce vai receber uma mensagem como:

Data Nome do Host sendEmail [ PID ] : Email was sent successfully! E o


email@destino vai receber uma mensagem sem assunto com o conteudo Teste
da Testa. Se nao deu certo, revise seu script!

Va no arquivo /etc/zabbix/zabbix server.conf e faca as seguintes alteracoes:

E altere a opcao AlertScriptsPath para:

AlertScriptsPath=/etc/zabbix/scripts

6.6 Mdias

No ambiente web, faca: Administracao -> Tipos de Mdias -> Criar


Mdias. Deixe o campo Descricaocomo Email, Tipo: Scripte Nome
Scriptcomo zabbix sendmail.sh.

6.7 Acoes

Agora vamos criar acoes que acontecerao caso uma trigger seja disparada.
Va em Configuracao -> Acoese clique em Criar Acoes. Aparecera uma
tela como a que temos abaixo:

De um nome para a sua acao e na guia Condicoes de Acao, clique em


Nova. Onde esta escrito Descricao do Trigger, coloque simplesmente
Trigger, deixe o sinal de =e escolha a Trigger que desejas. Voce tera que
fazer essa operacao com cada trigger. A direita, em Operacoes da Acao,
clique em Nova e deixe como: Tipo de operacao: enviar mensagem, En-
viar mensagem para: usuario, Selecionar, deixe em Admine clique em
salvar.

Para mais detalhes sobre acoes, consulte a pagina:

http://www.zabbix.com/documentation/1.8/manual/config/actions

Laboratorio de Software Livre 22


Manual de Instalacao e de Utilizacao do Zabbix

6.8 Graficos

Um recurso interessante do Zabbix e a criacao de graficos a partir das in-


formacoes coletadas. Va em Configuracao -> Hostse clique em Graficoscorrespondente
ao host de sua preferencia. Clique em Criar Graficoe aparecera uma tela
como a figura abaixo:

De um nome ao grafico e marque Mostrar Triggers. Na guia Itens,


clique em Adicionar. Aparecera uma tela como a mostrada abaixo:

Laboratorio de Software Livre 23


Manual de Instalacao e de Utilizacao do Zabbix

Em Parametro, clique em Selecionare escolha o tem cujas informacoes


serao mostradas no grafico. Em Estilo, note que a opcao Linhaesta mar-
cada, geralmente, deixa - se a opcao Regiao Preenchida, mas isso vai da
necessidade. Clique em Adicionare em seguida em Salvar. Pronto, temos
um grafico para ser visualizado.

Va em Monitoramento -> Graficose escolha o host e o grafico que quer


visualizar. Se tudo deu certo, o Zabbix estara atualizando o grafico de tempos
em tempos (isso foi pre - definido na hora de criar o tem).

Se copiar graficos para outros hosts, selecione - os e clique em Copiar


selecionado (s) para ...e escolha os hosts que quiser.

Para maiores informacoes sobre graficos, consulte o manual do Zabbix,


na pagina:

http://www.zabbix.com/documentation/1.8/manual/config/graphs

6.9 Comando Remoto

Vamos fazer uma suposicao. Em um determinado host e necessario que


o MySQL esteja ativo o tempo todo porque estamos armazenando dados
para uma pesquisa muito importante. Ate agora vimos que o Zabbix, em
caso de parada do MySQL (ou qualquer outro programa), consegue detectar
essa queda e enviar um email alertando sobre o fato. E se quisermos fazer o
Zabbix reiniciar o MySQL automaticamente? E exatamente disso que vamos
tratar.

Um recurso muito importante e poderoso do Zabbix e emitir um comando


remoto aos hosts que estamos monitorando. Para tanto, vamos em Con-
figuracao -> Acoese clique em Criar acoes. Na parte Editar operacao,

Laboratorio de Software Livre 24


Manual de Instalacao e de Utilizacao do Zabbix

clicamos em Nova. Onde esta escrito Enviar mensagem, alteramos para


Controle remotoe colocamos um comando (host: sudo /etc/init.d/mysql
restart) como esta no exemplo da figura abaixo:

Substitua na palavra hostdo comando o nome do host. Observe que


colocamos o comando para o reincio do MySQL, mas poderia ser do Apache,
do Tomcat, etc. Colocado o comando, clicamos em Adicionar. Na parte
Condicoes da acao, escolhemos uma condicao para que o comando seja
disparado, ou seja, partindo do princpio que criamos um item para a coleta
de dados do MySQL e um trigger para sera acionado quando as informacoes
pararem de chegarem do agent, colocamos a opcao triggere escolhemos
trigger de fato, no host determinado. Clicamos em Adicionare em seguida
em Salvar. Repetimos a acao com os outros hosts e para outros programas.

Ainda nao esta pronto. Como usuario root no terminal do host, digite:

# visudo

E no arquivo que se abriu, acrescente as seguintes linhas no final:

# allows zabbix user to run all commands without password.

zabbix ALL=NOPASSWD: ALL

Salve o arquivo e saia.

6.10 Apendice A: Instalando o Zabbix no Ubuntu

Foi ensinado nesse tutorial como instalar o Zabbix no Gentoo. Va-


mos ensinar como instalar no Ubuntu. Essencialmente nao existem grandes

Laboratorio de Software Livre 25


Manual de Instalacao e de Utilizacao do Zabbix

diferencas, alias, e muito mais facil instalar o Zabbix no Ubuntu do que no


Gentoo.

Partindo do princpio que usaremos o MySQL como banco de dados,


colocamos os seguintes comandos no terminal:

sudo su e coloque a sua senha:

# apt-get install zabbix-server-mysql

Edite o arquivo /etc/services acrescentando. O passo e opcional, porem


recomendado:

zabbix-agent 10050/tcp Zabbix Agent

zabbix-agent 10050/udp Zabbix Agent

zabbix-trapper 10051/tcp Zabbix Trapper

zabbix-trapper 10051/udp Zabbix Trapper

Crie uma pasta no diretorio /etc com o nome zabbix:

# mkdir /etc/zabbix

Copie os arquivos de configuracao do Zabbix para a pasta /etc/zabbix/:

# cp misc/conf/zabbix /etc/zabbix

Para que os arquivos zabbix agentd.conf e zabbix server.conf sejam trans-


feridos.

Entre no arquivo /etc/zabbix/zabbix server.conf e deixe as varaveis como:

DBHost=localhost

DBName=zabbix

DBUser=root

DBPassword=password do MySQL

Salve e feche o arquivo.

Laboratorio de Software Livre 26


Manual de Instalacao e de Utilizacao do Zabbix

Inicie o servidor:

# /etc/init.d/zabbix-server start

Por fim, instalaremos o frontend:

# apt-get install zabbix-frontend-php

Agora instalaremos o agent. E so colocar o comando:

# apt-get install zabbix-agent

E recomendado adicionar as seguintes linhas ao arquivo /etc/services:

zabbix agent 10050/tcp

zabbix trapper 10051/tcp

Va no arquivo /etc/zabbix/zabbix agentd.conf. Na linha Server= ...coloque,


ou o nome da maquina servidora ou o seu ip. Na linha Hostname= ...coloque,
ou o nome da maquina cliente em questao ou o seu ip. Descomente as linhas:
ListenPort=10050 e ServerPort=10051.

Por fim, digite:

# /etc/init.d/zabbix-agentd start

e teremos um agente instalado e funcionando no cliente.

A parte especfica do Ubuntu e essa. Va ate a secao 5, Ambiente Web e


siga o tutorial ate o final.

6.11 Apendice B: Demais Funcionalidades do Zabbix

6.12 Monitoramento

6.12.1 Dashboard

Em Monitoramento -> Dashboardvemos informacoes gerais sobre o


Zabbix. Podemos ver se o Zabbix esta rodando, numero de hosts, triggers e

Laboratorio de Software Livre 27


Manual de Instalacao e de Utilizacao do Zabbix

itens. Numero de eventos (20 por default, mas pode ser alterado se clicarmos
em Menu). Por fim, vemos informacoes sobre Web e Autobusca.

6.12.2 Visao Geral

Podemos ver dados dos itens de cada host. Em Localizacao dos Hosts,
podemos alterar o eixo da disposicao das informacoes. Podemos escolher o
grupo de hosts e o tipo de dados a ser mostrado.

6.12.3 Web

Mostra informacoes sobre dados da Web conseguidos pelo Zabbix.

6.12.4 Dados Recentes

Escolhendo um grupo e um host, na guia Mostrar itens com a descricao,


colocamos uma palavra, por exemplo, CPUe todas as informacoes, como
itens, triggers, etc, que tem a palavra CPUsao mostrados.

Laboratorio de Software Livre 28


Manual de Instalacao e de Utilizacao do Zabbix

6.12.5 Triggers

Sao mostrados os dados dos triggers, escolhido um grupo de hosts e um


host, como o nome, a data, o status, etc.

Laboratorio de Software Livre 29


Manual de Instalacao e de Utilizacao do Zabbix

6.12.6 Eventos

Mostra os eventos em ordem cronologica, seja de triggers ou de eventos


de autobusca.

6.12.7 Graficos

Podemos ver os graficos criados. Escolhendo o grupo, hosts e o grafico,


podemos dar um zoom para ver o grafico em um intervalo de tempo maior
ou menor.

Laboratorio de Software Livre 30


Manual de Instalacao e de Utilizacao do Zabbix

6.12.8 Telas

Permite ver informacoes das telas que criamos.

6.12.9 Mapas

Permite ver informacoes dos mapas que criamos.

6.12.10 Autobusca

Permite ver informacoes de autobusca que criamos.

6.12.11 Servicos de TI

Permite ver informacoes dos Servicos de TI que criamos.

Laboratorio de Software Livre 31


Manual de Instalacao e de Utilizacao do Zabbix

6.13 Relatorios

6.13.1 Status do Zabbix

Mostra as informacoes iniciais que vimos no Dashboard.

6.13.2 Relatorio de Disponibilidade

Relatorio de Disponibilidade e uma disposicao grafica que mostra as por-


centagens dos problemas dos hosts atraves de seus triggers. Clicando em
filtrar, podemos mostrar essas informacoes por host, definir o perodo de
busca das informacoes, etc.

Laboratorio de Software Livre 32


Manual de Instalacao e de Utilizacao do Zabbix

6.13.3 Triggers Mais Ativados - Top 100

Mostra as 100 triggers mais ativadas. Podemos visualizar essa informacao


se considerarmos um dia, uma semana, um mes ou um ano.

6.13.4 Relatorios de Barra

E a geracao de um grafico de informacoes de um ou mais itens, definidos


por um intervalo determinado de tempo. Clique em Adicionar, na proxima
tela clique em Selecionare escolha um item de um host e clique em Adi-
cionar. Em Filtrar, defina o intervalo de tempo e clique em Mostrar.

Laboratorio de Software Livre 33


Manual de Instalacao e de Utilizacao do Zabbix

6.14 Configuracao

6.14.1 Grupos de Host

Criados varios hosts, podemos agrupa - los com o objetivo de tornar as


informacoes mais organizadas. Va em Configuracao -> Grupos de Host,
clique em Criar Grupoe teremos uma janela como a que vemos abaixo:

De um nome ao grupo e escolha um grupo ja criado para que aparecam


hosts dele. Note que quando criamos um host, devemos informar, obrigatoria-
mente, um grupo. Use as setinhas <<para colocar os hosts que apareceram
no grupo. Por fim, clique em Salvar.

6.14.2 Templates

Templates sao usados quando temos que criar varios hosts que sao iguais
nos quesitos, itens, triggers e graficos. Clique em Criar Templates, de um
nome a ele, escolha quais grupos de hosts estarao no template (atraves das
setinhas <<). Clique em Salvar.

Agora vamos criar uma aplicacao. Correspondente ao template criado,


clique em Aplicacoese clique em Criar aplicacao, de um nome a ela e
salve.

Laboratorio de Software Livre 34


Manual de Instalacao e de Utilizacao do Zabbix

Vamos adicionar itens a aplicacao. Clique em itens, ao lado da aplicacao


criada e crie tantos itens forem necessarios. Faremos o mesmo para graficos
e triggers, sendo que os ultimos devem ser associados aos itens da aplicacao.
Agora se criarmos um host associado ao template, ele tera os itens, triggers
e graficos que criamos. Faremos um teste.

Va em host, Criar hoste na guia Associado aos templates, clique

Laboratorio de Software Livre 35


Manual de Instalacao e de Utilizacao do Zabbix

em Adicionar, escolha um template pre - definido, preencha as outras


informacoes necessarias e clique em Salvare perceba que o host tem as
informacoes supracitadas.

6.14.3 Manutencao

Manutencao e um dispositivo para impedir que outros usuarios acessem


o Zabbix por um intervalo determinado de tempo. Primeiro entre no ar-
quivo /var/www/localhost/htdocs/zabbix/conf/maintenance.conf.php e de-
scomente as seguintes linhas:

// Maintenance mode define(ZBX DENY GUI ACCESS,1);

// IP range, who allowed to connect to FrontEnd $ZBX GUI ACCESS IP RANGE


= array(127.0.0.1);

// MSG showed on Warning screen! $ REQUEST[warning msg] = Zab-


bix is under maintenance.;

Salve o arquivo e volte para o frontend do Zabbix. Va em Configuracao


-> Manutencao, clique em Criar perodo de manutencao.

De um nome a tarefa, defina um intervalo de tempo e tambem quais hosts


e grupos vao estar no estado de manutencao (usando as setinhas <<) e
clique em Salvar.

Laboratorio de Software Livre 36


Manual de Instalacao e de Utilizacao do Zabbix

6.14.4 Web

Para monitorar paginas da web, precisamos criar um cenario. Cenario


e um conjunto de requisicoes via HTTP feito pelo servidor. Para criar um
cenario, va em Configuracoes -> Webe clique em Criar cenario.

Partindo do princpio que temos uma aplicacao criada, em Selecionar,


escolha uma aplicacao. De um nome para o cenario e em agente, escolha
o navegador a preferencia. Em Status, deixe como Ativoe em Pas-
sosclicamos em Adicionar, sendo mostrado uma tela como a que vemos
abaixo:

De um nome para o passo (por exemplo, login), URL(por exemplo,


www.zabbix.com), preencha o Timeoute Requeridoe a descricao do site,
por exemplo, Homepage do Zabbix. Observacao: esse campo tem que ser
preenchido. Clique em Salvare em Salvarna proxima tela.

Laboratorio de Software Livre 37


Manual de Instalacao e de Utilizacao do Zabbix

Em Monitoramento -> Webpodemos ver o grafico do cenario que acabamos


de criar.

6.14.5 Telas

Telas e uma visualizacao de partes graficas de monitoramento do Zabbix,


como graficos, mapas, etc. Va em Configuracao -> Telase clique em Criar
tela.

Defina quantas linhas e colunas a tela tera e clique em Salvar. Clique


no nome da tela que foi criada, clique em Alterarde uma celula e aparecera
uma tela como a que vemos abaixo:

Devemos escolher qual recurso que devemos utilizar (por exemplo, grafico),
Nome do graficoescolha do grafico existente que vai aparecer, preencha os
outros campos abaixo e clique em Salvar. Fazemos isso com outras celulas
ate que todas sejam preenchidas.

Va em Monitoramento -> Telas, escolha a tela recem criada e utilize


a ferramenta de zoom para que possamos ver varias informacoes em um
intervalo de tempo fixo.

Laboratorio de Software Livre 38


Manual de Instalacao e de Utilizacao do Zabbix

6.14.6 Slides

Um slide show e uma sequencia de imagens que aparecerao, mediante


configuracoes feitas. Va em Configuracao -> Slidese clique em Criar Slide
Show, aparecendo uma janela como a que vemos abaixo:

De um nome ao slide, defina o intervalo de um slide e outro, e em Slides,


clique em Adicionare escolha uma tela criada. Note que podemos escolher
quantas telas forem necessarias e clique em Salvar.

Pode ocorrer um problema, se o intervalo entre os slides for maior do


que Atualizacao da tela (em seg.)(em Configuracoes), o slide show nao
funcionara porque o Zabbix vai atualizar a tela antes que os slides passem.
Altere esses valores de modo que o tempo dos slides seja menor do que a de
atualizacao da tela.

Para visualizar o slide show, va em Monitoramento -> Telas, deixe


como Slideshowse veja a apresentacao!

6.14.7 Mapas

Mapas sao representacoes de rede atraves de figuras. A grande vantagem e


que, montado um mapa, podemos ver como esta a conexao entre as maquinas.
Va em Configuracao -> Mapase vai aparecer uma janela tal como temos
abaixo:

De um nome para o mapa, preencha os demais campos e clique em Sal-


var. Agora vamos montar uma rede. Clique no nome do mapa criado e
clique no smbolo +em Iconepara adicionar um novo elemento. Clique
sobre o elemento, aparecendo uma nova janela. Em Tipo, escolha Host,
na guia Host, clique em Selecionare escolha um host. Em Imagem, de-
fina a imagem do host em seguida, clique em Aplicare clique em Fechar.

Laboratorio de Software Livre 39


Manual de Instalacao e de Utilizacao do Zabbix

Perceba que podemos mover o nosso host pela tela.

Criamos um novo elemento de host como fizemos e selecione os dois (se-


gurando a tecla Ctrldo teclado) e clique em +de Linke sera criado
uma linha ligando os dois hosts. Se eles estiverem em rede, a linha ficara da
cor verde, em caso contrario ela ficara da cor vermelha.

Com as informacoes supracitadas, podemos criar uma rede de hosts (mas


pode ser de triggers, mapas, grupo de hosts, etc.). Para visualizar o mapa que
criamos, va em Monitoramento -> Mapase escolha o mapa que acabamos
de criar.

6.14.8 Autobusca

O sistema de auto busca e o monitoramento de dispositivos. Va em


Configuracao - Autobuscae clique em Criar Regra. De um nome a auto
busca, altere o tempo de espera, caso deseje. Em Nova Checagem, escolha
a maneira como as informacoes serao conseguidas, se e por ping, http, etc, e
clique em Salvar.

Agora vamos criar uma acao. Va em Configuracoes - Acoes. Em


Origem do evento, escolha Autobuscae em Operacoes de Acao, escolha
um template criado. Deixe Statuscomo Ativoe preencha as Condicoes
de Acaoas operacoes desejadas. No exemplo abaixo, a acao sera executada
se o agent estiver funcionando, autobusca funcionado e uptime maior que
3600 segundos (1 hora).

Laboratorio de Software Livre 40


Manual de Instalacao e de Utilizacao do Zabbix

6.14.9 Servicos de TI

Servicos de TI e um monitoramento com informacoes de alto nvel. Na


verdade funciona como uma fila de estacoes de trabalho. Va em Con-
figuracoes -> Servicos de TI, clique em raize em seguida em Add Ser-
vices. Aparecera uma tela como a que vemos abaixo:

Em Nome, de um nome ao servico. Em Servico pai, escolhemos o


servico que vai ficar acima do que estamos criando. Depende delista os
servicos que o que estamos criando vai depender. Em Algoritmo de calculo
do status, escolhemos como vai ser o metodo do calculo do servico. Em
Calcular SLA, ativa o calculo de SLA, podemos definir o horario de servico
e associar a um trigger (que nao pode ser classificado como Informacao ou
Nao Classificado). Pronto, agora podemos ir em Monitoramento -> Servicos
de TIque serao mostrados todos os servicos criados e podemos ver os graficos

Laboratorio de Software Livre 41


Manual de Instalacao e de Utilizacao do Zabbix

correspondentes a eles.

6.15 Administracao

6.15.1 Geral

Escolhendo a opcao Administraca -> Geral, temos varias opcoes que


podemos escolher:

GUI:

Permite configurar o frontend. Tema Padraopermite mudar a cor.


Primeiro tem dropdown, e quando o primeiro elemento de dropdown e
Todosou Nenhum. Os outros tens sao triviais.

Limpeza:

Laboratorio de Software Livre 42


Manual de Instalacao e de Utilizacao do Zabbix

Permite remover acoes e eventos anteriores.

Imagens:

Permite criar ou editar imagens para que consigamos trabalhar a ferra-


menta mapas.

Va em Criar Imagem, escolha um nome, de um tipo e em Selecionar


arquivo, e escolha um arquivo em formato imagem e clique em Salvar.

Expressoes Regulares:

Permite a criacao de expressoes regulares que podem ser usadas em qual-


quer lugar do Zabbix. Va em Nova expressao regular, clique em Nova,
coloque uma expressao (pode ser uma palavra qualquer), preencha as outras
opcoes e clique em adicionar.

Em Sequencia de texto para teste, coloque uma frase para teste que
contenha a(s) palavra(s) e clique em testee veja o resultado. Coloque outra
frase que nao contenha nenhuma palavra pre - definida. Feito todos os testes,
clique em Salvar.

Mapeamento de Valor:

Mapeamento de valor e quando criamos strings e elas sao representadas

Laboratorio de Software Livre 43


Manual de Instalacao e de Utilizacao do Zabbix

por numeros de um dado evento. Clique em Criar mapeamento de valor,


de um nome ao mapeamento e preencha o campo Novo mapeamento. Por
exemplo:

0 => Nao Disponvel

1 => Disponvel

e clique em Salvar.

Horario Comercial:

Permite a configuracao da disposicao das informacoes de como vemos as


datas e horarios.

Outros:

Aparecera uma tela como a que temos abaixo:

Laboratorio de Software Livre 44


Manual de Instalacao e de Utilizacao do Zabbix

Podemos fazer tres coisas: atualizar o tempo dos tens nao suportados,
definir o grupo dos hosts descobertos e definir o grupo de usuarios que rece-
bera a mensagem de BD indisponvel.

6.15.2 MD

Da informacoes acerca da performace do Zabbix. Podemos ver os nos,


caso o Zabbix esteja configurado para sistemas distribudos, ou os proxies,
caso ja se tenha criado algum. Em caso negativo, va em Criar Proxy,
preencha o campo da esquerda com os hosts criados e clique em Salvar.

6.15.3 Autenticacao

HTTP:

Permite usar o Apache baseado em autenticacao HTTP.

LDAP:

Usado para usar autenticacao LDAP. A autenticacao sera usada para


chegar nomes e senhas caso um usuario Zabbix exista.

Laboratorio de Software Livre 45


Manual de Instalacao e de Utilizacao do Zabbix

LDAP Host: de um nome para o servidor LDAP. Porta: 389 por default
mas pode ser 636 para coneccoes mais seguras. Bind DN*: uid=Admin,ou=system.
Bind Password*: senha do servidor LDAP. Usuario Senha: senha de teste do
administrador ou do usuario LDAP caso ele exista.

6.15.4 Usuarios

Podemos criar um usuario (feito na secao Adicionando Usuarios) ou


um grupo de usuarios. Vamos criar um grupo de usuarios. Clique em Criar
grupo:

De um nome ao grupo, utilize as setinhas para definir qual categoria de


usuarios serao criados (pode ser admin ou guest). Clique em Adicionarpara
definir as permissoes dos usuarios em relacao a um grupo de hosts a escolha.

6.15.5 Tipos de Mdias

Mdias e a maneira como o Zabbix dara mensagens caso alguma acao pre
- definida aconteca. Atraves de email ja foi explicado na secao Enviando
emails. Existe tambem em Jabber (servico de mensagem instantanea) e
atraves de SMS para celular. Explicaremos como mandar uma mensagem

Laboratorio de Software Livre 46


Manual de Instalacao e de Utilizacao do Zabbix

por SMS mais adiante.

6.15.6 Scripts

Podemos criar scripts que podem ser executados pelo Zabbix Server.
Clique em Criar Scripts:

De um nome para o script e no campo Campo, coloque o comando do


script, por exemplo, /bin/ping -c 3 HOST.CONN. Note que esse script
ja existe.

Laboratorio de Software Livre 47


Manual de Instalacao e de Utilizacao do Zabbix

6.15.7 Auditoria

Auditoria serve para ver tudo o que foi feito pelo usuario:

Na guia Usuario, selecione um usuario criado, escolha uma acao e um


recurso. Na barra zoom, extenda ou comprima e veja o que foi feito em um
intervalo de tempo.

6.15.8 Fila

Da informacoes da performace do Zabbix.

Laboratorio de Software Livre 48


Manual de Instalacao e de Utilizacao do Zabbix

Podemos escolher as opcoes: visao geral, Visao geral por proxye


Detalhes.

6.15.9 Notificacoes

Da a informacao do numero de notificacoes de mdias usado por grupos.

6.15.10 Idiomas

Permite a criacao de idiomas (na verdade e a traducao de determinados


do Zabbix). Vamos fazer um teste. Deixe Usar como idioma padraocomo
Ingles (GB), Idioma a expandircomo Portugues Brasileiro (PT BR)e
Novas entradascomo deixar vazio e clique em Proximo.

Perceba que tem uma coluna com palavras em portugues (a esquerda)


que podem ser modificadas de acordo com as palavras a direita.

Laboratorio de Software Livre 49


Manual de Instalacao e de Utilizacao do Zabbix

6.15.11 Instalacao

Instalacao e quando queremos instalar o Frontend do Zabbix de novo.


Util caso instalamos ele de maneira equivocada.

6.16 Apendice C - SLA

Segundo a Wikipedia (http://pt.wikipedia.org/wiki/Acordo de nvel de servico),


SLA e um Acordo de Nvel de Servico (do ingles Service Level Agreement)
e um acordo firmado entre a area de TI e seu cliente interno, que descreve
o servico de TI, suas metas de nvel de servico, alem dos papeis e respons-
abilidades das partes envolvidas no acordo. No caso do Zabbix e a garantia
que em um numero percentual de tempo, o monitoramento vai funcionar ou
alguma outra acao vai funcionar.

Utilizaremos novamente os servicos de TI (partindo do princpio que

Laboratorio de Software Livre 50


Manual de Instalacao e de Utilizacao do Zabbix

o Apendice B foi acompanhado). Va em Configuracao -> Servicos de


TIclique na raiz (ou em qualquer servico criado) e de um Add Service.
Fazendo todas as configuracoes corretamente, teremos uma tela como a que
temos abaixo:

Damos um nome ao TI Service criado (colocamos Monitoramento de


Rede), escolha na opcao abaixo o servico pai, em Algoritmo de calculo do

Laboratorio de Software Livre 51


Manual de Instalacao e de Utilizacao do Zabbix

status, escolha uma das opcoes (deixamos a opcao default, Problema, se


pelo menos um filho tem problema), marcamos Calcular SLAe aparecera
uma opcao SLA aceitavel (em %), ou seja, devemos definir a porcent-
agem de tempo que estipulamos com o nosso cliente que determinado servico
vai ficar funcionando. Em Horario de servico, temos Uptime, Down-
time(estado de servico que nao afeta o SLA) e Downtime unico(a mesma
coisa porem que e um so), escolhemos Uptime.

Em Novo horario de servico, defina os intervalos de dias e horarios que o


servico vai funcionar. Os horarios devem ser preenchidos no formato 12:30,
para meio dia e trinta, por exemplo, e clicamos em Incluir. Por fim, vamos
associar o nosso servico a uma trigger, que e uma maneira eficaz de saber se
um item esta ou nao em funcionamento (depende da configuracao do item e
do trigger) e clique em Salvar.

Como mencionado na secao anterior, va em Monitoramento -> Servicos


de TIpara ver os graficos e demais informacoes do servico que criamos,
juntamente com as informacoes de SLA.

6.17 Apendice D - Enviar Mensagem via SMS

Existem varias maneiras de fazer o Zabbix mandar sms para celulares com
as mensagens dos alertas. Temos estrategias que sao pagas, por exemplo,
fazendo o celular como modem, sendo que ele encaminhara as mensagens a
outros celulares. Existem tambem estrategias que sao gratuitas, utilizando
um servico gratis como apoio.

A primeira estrategia tem o problema obvio de ser paga, aliado ao fato do


Linux nao reconhecer automaticamente celulares como USB que, dependendo
do modelo dele, teremos muita dificuldade de instalar ele. Aliamos esses
fatos com a pouca disponibilidade de poucos tutoriais na internet bons sobre
o assunto.

A segunda estrategia tambem nao e tao simples assim de ser feita, porem,
existe um bom tutorial de como fazer o Zabbix mandar sms para celulares au-
tomaticamente, http://migre.me/8BF9 , do autor Gesiel Bernardes. Logo
usaremos o Google Calendar e o Google Agenda como suportes para o envio
de sms. A estrategia pode variar um pouco dependendo da versao do Linux,
esse tutorial foi feito para a versao Gentoo.

Laboratorio de Software Livre 52


Manual de Instalacao e de Utilizacao do Zabbix

A primeira coisa a se fazer e instalar o Google Calendar, fazemos o co-


mando emerge -av googlecl na linha de comando. No Ubuntu, o tutorial do
Gesiel ensina como instalar.

Vamos precisar de duas contas do Google, crie uma para que seja uma
agenda Zabbix e outra para notificacoes. Va em www.google.com/calendar
na conta da agenda Zabbix e clique em Configuracoesna guia que tem uma
engrenagem. Agora clique em Agendase crie uma nova agenda. Na tela
seguinte, de um nome para a agenda (eu chamei de Zabbix) e em con-
figuracao de autorizacao, altere para Fazer alteracoes e Gerenciar compar-
tilhamentoe compartilhe com a outra conta, ou seja, a de notificacoes. Apos
isso, clique em Criar Agenda.

Entre na conta do usuario que sera notificado. Apos compartilhar a


agenda na outra conta, perceba que o nome dela esta no canto inferior es-
querdo da tela, clique na setinha do lado direito do nome dela e clique em
Notificacoes. Aparecera uma tela com duas colunas (Email e SMS) e qua-
tro linhas que podemos habilitar e desabilitar. Marcamos as tres primeiras
opcoes da coluna Email e somente a primeira opcao da coluna SMS (Novos
eventos:) e clique na opcao abaixo Configurar o seu celular para receber
notificacoes.

A proxima tela, Configuracao de Celular, temos alguns campos para


preencher. Na guia Pas, deixe Brasil. Em Telefone, digite o numero
do celular que vai receber a notificacao como: +55[codigo da cidade][numero
do telefone]. No nosso ficou +5531[numero do telefone] porque o ICEx -
UFMG fica em Belo Horizonte. Agora clique em Enviar Codigo de Con-
firmacaoque chegara no celular um codigo, que devera ser colocado no campo
Codigo de confirmacaoe clique em Concluir configuracao. Se tudo acon-
teceu sem erros, clique em Salvar.

Agora vamos configurar o Googlecl. No terminal, como usuario de root,


coloque o comando google calendar add teste zabbix que vai aparecer um
link que, se clicarmos nele, o navegador vai abrir com uma janela pedindo
usuario e conta do Google. Preenchendo os campos necessarios, sera a ultima
vez que que o Google vai pedir tais informacoes.

Va na pasta /etc/zabbix/scripts/, crie um arquivo sms.sh e coloque o


seguinte conteudo nele:

#!/bin/bash /usr/bin/sudo /usr/bin/google calendar add $2--cal Zab-


bix-u emailNaContaZabbix@gmail.com.

Laboratorio de Software Livre 53


Manual de Instalacao e de Utilizacao do Zabbix

Vamos configurar o servidor Zabbix. Va em Administracao -> Tipos


de mdiase clique em Criar Mdias. De um nome em Descricao, em
Tipodeixe como script e Nome scriptpreencha como sms.sh, conforme
figura abaixo:

Por fim, clique em Salvar.

Va em Administracao -> Usuarios, clique em Usuariose clique em


Admin(ou qualquer outro usuario que estiver usando). Em Mdia, clique
em Adicionar. Em Tipo, escolha a mdia que acabamos de criar e preen-
cha os demais campos conforme a figura abaixo:

Por fim, va em Configuracao -> Acoes, escolha a acao desejada (ou


crie uma) e em Operacoes de Acao, clique em Nova. Em Tipo da
operacao, coloque Enviar mensagem. Em Enviar mensagem para, es-
colha Usuarioe o usuario que sera enviado. Em Enviar apenas para,
escolha a mdia que criamos para mandar sms e clique em Salvar.

Antes de salvar em CONFIGURACAO DE ACOES, va em Assunto


padraoe deixe como {TRIGGER.STATUS}: {TRIGGER.NAME}: {HOSTNAME1} .
Fizemos isso porque deixamos a variavel do script sms.sh como $2, que sig-
nifica que o celular vai receber mensagens so do ttulo das acoes, mas poderia
ser $3, ou seja, receber o conteudo da mensagem toda. Entretanto, devemos
lembrar que um sms so pode ter no maximo 140 caracteres! Agora clique em
Salvar.

Laboratorio de Software Livre 54


Manual de Instalacao e de Utilizacao do Zabbix

6.18 Apendice E - Monitorar Paginas de Internet

E possvel monitorar paginas de internet, tais como os sites da Google,


Terra ou qualquer outro, mas alguns passos precisam ser seguidos. Primeira-
mente, precisamos descobrir o IP do site, sendo que na maioria dos casos eles
sao acessados via endereco url. Simplesmente utilizamos o comando na linha
de comando no Linux:

nslookup [url do site]

Existem sites que tem mais do que um IP, logo cada um deles precisa ser
monitorado.

Agora de posse da informacao do(s) IP(s), no frontend do Zabbix, ir em


Configuracao -> Hostse clicamos em Criar Hosts, de um nome no host
como o nome do site e na parte Endereco IP, coloque o endereco IP que
conseguimos e clique em Salvar.

Em seguida, clique em Aplicacoescorrespondente ao host criado e clique


em Criar aplicacao, de um nome para a Aplicacao e clique em Salvar.

Agora va em Configuracao -> Webe clique em Criar cenario, na guia


Aplicacao, selecione a Aplicacao correspondente ao site a ser monitorado,
de um nome ao Cenario e clique em Adicionar. Na janela aberta, preencha
os campos Nomese URLcorretamente e clique em Salvar. Por fim,
clique em Salvarpara criar no nosso Cenario.

Agora volte em Configuracao -> Hostse clique no campo Triggercorrespondente


ao host do site e clique em Criar Trigger. De um nome para a Trigger
(demos o nome de Web Test Fail) e clique em Adicionar, depois em

Laboratorio de Software Livre 55


Manual de Instalacao e de Utilizacao do Zabbix

Selecionare Failed step of scenario [nome do Cenario]. Em Funcao, es-


colha Last value NOT Ne clique em Inserir. Defina o Riscoda Trigger
e clique em Salvar.

Por fim, va em Configuracao -> Servicos de TI, clique em raiz e ADD


Service, em nome, deixe como Hostinge clique em Salvar. Agora clique
em Hostinge em ADD Service. Na janela que apareceu, de um nome (do
site a ser monitorado, por exemplo), clique em Calcular SLA, em Associar
a trigger?e escolha a Trigger Web Test Fail. Clique em Salvar.

Agora tudo esta pronto. Para conferir, va em Monitoramento -> Webe


clique no link correspondente ao site monitorado e aparecera um grafico como
o que vemos abaixo:

Laboratorio de Software Livre 56


Manual de Instalacao e de Utilizacao do Zabbix

6.19 Apendice F - Miscelanea

Faremos a descricao suscinta para monitorar determinados itens, para


ficar como exemplos de aplicacao do Zabbix.

Load de CPU: Em tens, a chave e system.cpu.load, Tipo de in-

Laboratorio de Software Livre 57


Manual de Instalacao e de Utilizacao do Zabbix

formacaoe Numerico (fracionario).

Disponibilidade de Maquina: Em tens, a chave e agent.ping.

Disponibilidade do Apache: Em tens, a chave e proc.num[,apache].

Disponibilidade do MySQL: Em tens, a chave e proc.num[,mysql].

Disponibilidade do Tomcat: Em tens, a chave e proc.num[java,,,tomcat].

Espaco livre em disco em /: Em tens, a chave e vfs.fs.size[/,free].


Note que podemos monitorar particoes em outros lugares (caso existam),

Laboratorio de Software Livre 58


Manual de Instalacao e de Utilizacao do Zabbix

como /scratch, por exemplo. Como trigger, por exemplo, acionar a trigger
quando o disco tiver 10% de espaco livre (ou seja, o disco esta com 90% do
espaco ocupado), colocamos como chave: [nome do host]:vfs.fs.size[/,free].last(0)=10.

Total de memoria ram livre: Em tens, a chave e vm.memory.size[free].

Trafego de rede: entrada: Em tens, a chave e net.if.in[eth0, bytes].

Trafego de rede: sada: Em tens, a chave e net.if.out[eth0, bytes].

Trafego de rede: total: Em tens, a chave e net.if.total[eth0, bytes].

Laboratorio de Software Livre 59


Manual de Instalacao e de Utilizacao do Zabbix

7 Creditos

Documento Manual de Instalacao e de Utilizacao do Zabbix


Direitos Autorais Reservados (c)
Universidade Federal de Minas Gerais
Departamento de Ciencia da Computacao

Autores:
Alex Roberto Correa (alexrc@dcc.ufmg.br)

E-Mail: lsl-libertasbr-dev@listas.dcc.ufmg.br

Esta documentacao e livre; voce pode redistribu-la e/ou modifica-la sob


os termos da Licenca Publica Geral GNU conforme publicada pela Free Soft-
ware Foundation; tanto na sua versao 2, como qualquer versao posterior (a
seu criterio) .

A distribuicao desta documentacao e feita na expectativa de que ela seja


util, porem, sem nenhuma garantia; nem mesmo a garantia implcita de
comerciabilidade ou adequacao a uma finalidade especfica.

Consulte a Licenca Publica Geral do GNU para mais detalhes.

http://creativecommons.org/licenses/GPL/2.0/
http://creativecommons.org/licenses/GPL/2.0/legalcode.pt

Laboratorio de Software Livre 60

Você também pode gostar