Sie sind auf Seite 1von 255

Prof.

Marcos Vinicius Campez

Sobre mim:
Nome: Marcos Vinicius Campez
Formao e Exp.:
- Bacharel em Sistemas de Informao.
- Administrador de Redes (Odebrecht).
- Consultor Linux (Betta Tcnologia).
- Escreve artigos para o site Viva o Linux.
- Militante do uso do Software Livre.
- Usurio Linux desde 2006.
- Fundador da Byte Livre.
Facebook: facebook.com/bytelivre
Twitter: twitter.com/bytelivre
Site: bytelivre.net
E-mail: treinamentos@bytelivre.net
Skype: markintux

Objetivos do Curso:
Entender o funcionamento do Zabbix.
Ser apto em instalar e configurar o Zabbix (Server, Proxy e Agent).
Ser apto em interpretar logs.
Ser apto em administrar a ferramenta.
Ser apto em aplicar Itens, Triggers e Actions em um Template.
Ser apto em criar seus prprios Itens, Triggers e Actions.
Ser apto a aplicar conceitos como: Mapas, SNMP, ICMP, etc.
Ser apto em administrar a interface Web.

Por que monitorar?!


Controle total e centralizado de todo o parque computacional.
Anlise mais detalhada de cada dispostivo de rede.
Relatrios detalhados dos problemas ocorridos.
Melhora significativa no tempo de ao a desastre, caso ocorra algum.
Melhora significativa em segurana da informao.
Aviso ou resolvimento automtico de algum problema ocorrido.
Melhor prevenir do que remediar.

O que o Zabbix?!
Software que monitora diversos parmetros de uma rede como a
integridade e desempenho dos servidores.
Oferece excelentes relatrios e visualizao de dados de recursos com
base nos dados armazenados.
Usa um mecanismo de notificao flexvel que permite aos usurios
configurar e-mail com alertas para qualquer evento, o que permite uma
reao rpida para os problemas de qualquer dispositivo de rede
monitorado pelo mesmo.
escrito e distribudo sob a GNU General Public License verso 2. Isso
significa que seu cdigo-fonte distribudo gratuitamente e est disponvel
para o pblico em geral.

Vantagens de se usar o Zabbix!


Soluo Open Source.
Suporte para SNMP (v1, v2).
Monitoramento distribudo com administrao centralizada na web;
Agentes de alta performance (software de cliente para Linux, Solaris,
HP-UX, AIX, FreeBSD, OpenBSD, OS X, Tru64/OSF1, Windows NT 4.0,
Windows 2000, Windows 2003, Windows XP, Windows Vista, etc).
Permisses flexveis de usurio.
Interface baseada na web.

Mdulos do Zabbix
zabbix-server
zabbix-proxy
zabbix-agent
zabbix-web

Mdulos do Zabbix: zabbix-server.


o centro do Software Zabbix.
o componente central para o qual os agentes reportam a
disponibilidade, integridade de informaes e estatsticas dos servidores
monitorados.
nele que toda a configurao, estatsticas e dados operacionais so
armazenados, sendo o componente que participar ativamente alertando
os administradores quando surgirem problemas em qualquer um dos
sistemas monitorados.

Mdulos do Zabbix: zabbix-proxy.


uma parte opcional da implantao do Zabbix.
Coleta dados de desempenho e disponibilidade, em nome do Zabbix
Server.
Todos os dados coletados localmente so transferidos para o Zabbix
Proxy e depois enviados para o Zabbix Server.
uma soluo ideal para um controle centralizado de locais remotos,
filiais, no havendo a necessidade dos administradores de redes locais.

Mdulos do Zabbix: zabbix-agent.


instalado nos dispostivos de redes em que sero monitorados.
O agente vai reunir informaes operacionais do sistema em que est
em execuo, e informar esses dados ao Zabbix (Proxy ou diretamente ao
Server) para posterior processamento.
Conta com agentes nas plataformas: Linux, Solaris, HP-UX, AIX,
FreeBSD, OpenBSD, OS X, Tru64/OSF1, Windows NT 4.0, Windows 2000,
Windows 2003, Windows XP, Windows Vista, etc.

Mdulos do Zabbix: Interface Web.


Permite fcil acesso aos dados de monitoramento e configurao do
Zabbix em qualquer lugar e em qualquer plataforma.
A interface uma parte do servidor Zabbix.
geralmente (mas no necessariamente) executada na mesma
mquina fsica que o servidor Zabbix.

Topologia Zabbix sem Proxy.

Topologia Zabbix com Proxy.

Planejando o crescimento do Banco de Dados:


Variveis (O que faz aumentar o volume do Banco de Dados):
1. Valores Processados por Segundo (VPS).
2. Dados Histricos.
3. Dados Estatscos.
4. Dados de Eventos.

Planejando o crescimento do Banco de Dados:


1. Valores Processados por Segundo (VPS):
VPS = Qtd. de itens monitorados / Taxa de atualizao em segs.
Exemplo:
VPS = 1000 / 60
VPS = 16,67 novos registros no Banco de Dados a cada segundo.

Planejando o crescimento do Banco de Dados:


2. Dados Histricos:
Histrico = Dias * 24 * 3600 * VPS * bytes
Explicando:
24

= Qtd. de horas em 1 dia.

3600

= Qtd. de segundos em 1 hora.

bytes

= Qtd. de bytes para manter 1 nico valor no BD.

PS.: 1 nico valor de histrico no BD consome geralmente 50 bytes.

Planejando o crescimento do Banco de Dados:


2. Dados Histricos:
Exemplo de uso de espao em disco do BD em 1 ms:
Histrico = Dias * 24 * 3600 * VPS * bytes
Histrico = 30 * 24 * 3600 * 16,67 * 50
Histrico = 2,01 Gb/ms.

Planejando o crescimento do Banco de Dados:


3. Dados Estatsticos:
Estatstica = (Itens/3600) * (24 * 3600 * Dias) * bytes
Explicando:
Itens

= Qtd. de itens a serem monitorados.

Dias

= Qtd. de dias de armazen. para dados de estatsticas.

bytes

= Qtd. de bytes para manter 1 nico registro no BD.

PS.: 1 nico valor de estatstica no BD consome geralmente 128


bytes.

Planejando o crescimento do Banco de Dados:


3. Dados Estatsticos:
Exemplo de uso de espao em disco do BD em 1 ano:
Estatstica = (Itens/3600) * (24 * 3600 * Dias) * bytes
Estatstica = (1000/3600) * (24 * 3600 * 365) * 128
Estatstica = 1,04 Gb/ano.

Planejando o crescimento do Banco de Dados:


4. Dados de Eventos:
Eventos = Dias * Eventos * 24 * 3600 * bytes
Explicando:
Dias

= Qtd. de dias de armazen. para dados de eventos.

Eventos = Qtd. de eventos gerados por seg.


bytes

= Qtd. de bytes para manter 1 nico registro no BD.

PS.: 1 nico registro de eventos no BD consome geralmente 130


bytes.

Planejando o crescimento do Banco de Dados:


4. Dados de Eventos:
Exemplo de uso do espao em disco do BD em 1 ano:
Eventos = Dias * Eventos * 24 * 3600 * 130
Eventos = 365 * 1 * 24 * 3600 * 130
Eventos = 3,81 Gb/ano.

Planejando o crescimento do Banco de Dados:


Calculando o TOTAL de espao em disco em 1 ANO:
Total = Histrico + Estatstica + Eventos
Explicando:
Histrico

= Qtd. de armarzen. em Gb de histrico em 1 ano.

Estatstica

= Qtd. de armarzen. em Gb de estatstica em 1 ano.

Eventos

= Qtd. de armarzen. em GB de eventos em 1 ano.

Planejando o crescimento do Banco de Dados:


Calculando o TOTAL de espao em disco em 1 ANO:
Total = Histrico + Estatstica + Eventos
Total = (2,01 * 12) + 1,04 + 3,81
Total = 25,2 + 1,04 + 3,81
Total = 30,5 Gb/ano.

PS.: O Histrico foi calculado por ms no exemplo anterior, por isso foi
multiplicado o mesmo por 12, para mostrar o valor anual.

Pr-requisitos:
CentOS Linux instalado na mquina fsica ou virtual.
Acesso a internet.
Processador Intel ou AMD, 32 ou 64 bits com clock de 1.5 Ghz.
Memria RAM de 1GB.
Espao livre em disco de 10GB para instalao e logs.
Iptables e selinux desabilitado.
IP Fixo na rede interna.

Como instalar?!
Download e instalao do fonte, direto do site (Recomendado):
www.zabbix.com/download.php
Download e instalao via YUM direto do repositrio atomic:
wget -q -O - http://www.atomicorp.com/installers/atomic | sh
yum install zabbix-server (...)
Download do Live CD/DVD (.iso) (OpenSuSE + MySQL).
Download do HD para VMware/VBox (.vmdk) (OpenSuSE + MySQL).
Download da imagem do HD para pendrive (OpenSuSE + MySQL).

Instalao - zabbix-server:
SELinux desabilitado:
# vim /etc/selinux/config
Editar linha: SELINUX=disabled
Iptables desabilitado:
# /etc/init.d/iptables stop
# ntsysv
Desmarcar iptables e ip6tables

Instalao - zabbix-server:
Atualizao dos pacotes do sistema:
# yum update
Instalao dos pacotes necessrios para a compilao do Zabbix:
# yum install gcc httpd php php-bcmath php-cli php-gd phpmbstring php-mcrypt php-mysql curl curl-devel net-snmp net-snmp-lib netsnmp-utils net-snmp-devel OpenIPMI OpenIPMI-devel mysql-server mysqldevel php-mysql php-xml gnutls-devel mod_ssl libssh2 libssh2-devel make

Instalao - zabbix-server:
Instalao de outros pacotes que no esto no repositrio do CentOS:
FPING
wget http://pkgs.repoforge.org/fping/fping-2.4-1.b2.2.el5.rf.i386.rpm
rpm -ivh fping-2.4-1.b2.2.el5.rf.i386.rpm
IKSEMEL
wget http://pkgs.repoforge.org/iksemel/iksemel-1.4-1.el6.rf.i686.rpm
rpm -ivh iksemel-1.4-1.el6.rf.i686.rpm
yum install iksemel

Instalao - zabbix-server:
Instalao de outros pacotes que no esto no repositrio do CentOS:
IKSEMEL-DEVEL
wget
http://pkgs.repoforge.org/iksemel/iksemel-devel-1.4-1.el6.rf.i686.rpm
rpm -ivh iksemel-devel-1.4-1.el6.rf.i686.rpm
yum install iksemel-devel

Instalao - zabbix-server:
Configuraes no arquivo php.ini
vim /etc/php.ini
date.timezone=America/Sao_Paulo
max_execution_time = 600
post_max_size = 32M
upload_max_filesize = 16M
max_input_time = 600

Instalao - zabbix-server:
Instalao do zabbix-server:
Download do pacote zabbix-server da ltima verso (2.x.x):
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%2xLatest
%2xStable/2.x.x/zabbix-2.x.x.tar.gz/download
Descompactar o arquivo:
tar -zxvf zabbix-2.x.x.tar.gz
Acessar pasta criada com a descompactao do arquivo:
cd zabbix-2.x.x

Instalao - zabbix-server:
Instalao do zabbix-server:
Pr-compilando o zabbix-server:
./configure --with-mysql --enable-server --enable-agent --enableproxy --with-jabber --with-net-snmp --with-libcurl --with-openipmi --with-ssh
Compilando e instalando o zabbix-server:
make install
Criando pasta /etc/zabbix
mkdir /etc/zabbix

Instalao - zabbix-server:
Instalao do zabbix-server:
Lembrando que o arquivo de configurao do zabbix-server na
verso 2.x.x :
/usr/local/etc/zabbix_server.conf
Criando o usurio zabbix
useradd zabbix
Dando permisses para o usurio zabbix ser dono da pasta /etc/
zabbix:
chown zabbix:zabbix /etc/zabbix/ -R

Instalao - zabbix-server:
Configurao do zabbix-server:
Reiniciando o mysql:
/etc/init.d/mysqld restart
Acessando o mysql:
mysql -u root -p
Criando o banco de dados do zabbix:
mysql> create database zabbix character set utf8;

Instalao - zabbix-server:
Configurao do zabbix-server:
Dando permisso para o usurio zabbix:
mysql> grant ALL on zabbix.* to zabbix@'localhost' identified by
'senha';

Saindo do mysql:
mysql> exit

Instalao - zabbix-server:
Configurao do zabbix-server:
Importando SQL's do zabbix para o banco de dados:
cat database/mysql/schema.sql | mysql -u zabbix -p zabbix
cat database/mysql/images.sql | mysql -u zabbix -p zabbix
cat database/mysql/data.sql | mysql -u zabbix -p zabbix

Instalao - zabbix-server:
Configurao do zabbix-server:
Configurando o arquivo zabbix_server.conf:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=senha
Iniciando o zabbix-server:
zabbix_server

Instalao - zabbix-server:
Configurao do zabbix-server:
Conferindo se o zabbix-server foi mesmo iniciado:
ps aux | grep zabbix
Sada deve ser parecida com essa:
(...)
zabbix 17822 0.0 0.1 52940 1584 ?
zabbix 17823 0.0 0.1 52944 1568 ?
zabbix 17827 0.0 0.1 52940 1344 ?
(...)

S
S
S

20:22 0:00 zabbix_server


20:22 0:00 zabbix_server
20:22 0:00 zabbix_server

Instalao - zabbix-server:
Configurao do zabbix-server, interface WEB:
Criando pasta zabbix para a interface WEB:
mkdir /var/www/html/zabbix
Acessando a pasta com os arquivos para interface WEB:
cd frontends/php/
Copiando todos os arquivos para a pasta zabbix:
cp * -R /var/www/html/zabbix/

Instalao - zabbix-server:
Configurao do zabbix-server, interface WEB:
Dando permisso ao usurio apache ser dono da pasta zabbix:
chown apache:apache /var/www/html/zabbix/ -R
Reiniciando o servidor apache:
/etc/init.d/httpd start
Acessando a interface WEB:
Abra o navegador e digite: localhost/zabbix

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-server:

Instalao - zabbix-agent - Linux:


Adicionando o repositrio atomic:
wget -q -O - http://www.atomicorp.com/installers/atomic | sh
Instalando o pacote zabbix-agent pelo YUM:
yum install zabbix-agent
Configurando o agent arquivo: /etc/zabbix/zabbix_agent.conf:
vim /etc/zabbix/zabbix_agent.conf
Server=127.0.0.1

Instalao - zabbix-agent - Linux:


Configurando o agent arquivo: /etc/zabbix/zabbix_agentd.conf:
vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
Iniciando o agent:
/etc/init.d/zabbix-agent start

Instalao - zabbix-agent - Linux:

Instalao - zabbix-agent - Linux:

Instalao - zabbix-agent - Windows:


Faa o download no site do Zabbix:

Instalao - zabbix-agent - Windows:


Crie a pasta C:\Zabbix e descompacte os arquivos dentro dela:

Instalao - zabbix-agent - Windows:


Edite as seguintes configuraes no arquivo: zabbix_agentd.conf
Server:<ip_do_seu_servidor>
Hostname:<identificacao_do_computador>
StartAgents=5
DebugLevel=3
LogFile=C:\Zabbix\zabbix_agentd.log
Timeout=3

Instalao - zabbix-agent - Windows:


Entre no command como Administrador e execute o seguinte comando:
C:\Zabbix\bin\win32\zabbix_agentd.exe -i -c C:\Zabbix\zabbix
\zabbix_agentd.conf
A sada deve ser semelhante a da imagem abaixo:

Instalao - zabbix-agent - Windows:


V em Servios procure pelo servio Zabbix Agent coloque-o como
Automtico e inicie o mesmo.

Instalao - zabbix-agent - Windows:


No se esquea de:
Desbloquear as portas 10050 e 10051 no Firewall.
Liberar as mesmas portas no Firewall de seu Anti-vrus.
Caso o problema de comunicao continue:
Reiniciar o computador (Recomendado).

Instalao - zabbix-proxy:
Realizar o download dos pacotes necessrios ( recomendado ter
instalado os repositrios: rpmforge e atomic):
yum install make gcc gcc-c++ iksemel iksemel-devel net-snmpdevel libcurl-devel fping OpenIPMI-devel libssh2-devel sqlite-devel sqlite
Baixar o cdigo-fonte do Zabbix:
wget http://sourceforge.net/projects/zabbix/files/ZABBIX%2xLatest
%2xStable/2.x.x/zabbix-2.x.x.tar.gz/download
Descompactar o arquivo:
tar -zxvf zabbix-2.x.x.tar.gz

Instalao - zabbix-proxy:
Acessar a pasta criada:
cd zabbix-2.x.x/
Compilar o Zabbix Proxy:
./configure --prefix=/opt/zabbix --enable-proxy --enable-sqlite3 -with-libcurl --with-net-snmp --with-openipmi --with-jabber --with-ssh2
Instalar o Zabbix Proxy:
make install

Instalao - zabbix-proxy:
Criar usurio e grupo do Zabbix:
groupadd zabbix
useradd -m -g zabbix zabbix
Criar a base de dados no SQLite:
mkdir /var/lib/sqlite
sqlite3 /var/lib/sqlite/zabbix.db < database/sqlite3/schema.sql
sqlite3 /var/lib/sqlite/zabbix.db < database/sqlite3/images.sql
sqlite3 /var/lib/sqlite/zabbix.db < database/sqlite3/data.sql

Instalao - zabbix-proxy:
Dar permisso para que o usurio zabbix acesse a pasta criada:
chown -R zabbix. /var/lib/sqlite
Criar estrutura de pastas:
cd /opt/zabbix
mkdir log run tmp alertscripts externalscripts
cp <path_zabbix_folder>/conf/zabbix_proxy.conf /opt/zabbix/etc
ln -s /opt/zabbix/etc/ /etc/zabbix

Instalao - zabbix-proxy:
Editar arquivo de configurao do Zabbix Proxy:
ProxyMode = 0
Server = <ip_zabbix_server>
Hostname = <nome_do_proxy>
DBName = /var/lib/sqlite/zabbix.db
DBUser = zabbix
Salvar e sair do arquivo.

Instalao - zabbix-proxy:
Dar permisso de acesso ao Zabbix na pasta /opt/zabbix:
chown zabbix. /opt/zabbix/ -R
Iniciar servio do Zabbix Proxy:
/opt/zabbix/sbin/zabbix_proxy
Caso queira parar o servio do Zabbix Proxy:
killall zabbix_proxy
necessrio realizar o cadastro do Zabbix Proxy no Zabbix Server
conforme as prximas imagens:

Instalao - zabbix-proxy:

Instalao - zabbix-proxy:

Instalao - zabbix-proxy:

LOGS zabbix-agent!
Configurando o agent arquivo: /etc/zabbix/zabbix_agentd.conf:
vim /etc/zabbix/zabbix_agentd.conf
LogFile=/tmp/zabbix_agentd.log
LogFileSize=1
# Range: 0-1024
DebugLevel=3
#
#
#
#
#

0 - no debug
1 - critical information
2 - error information
3 - warnings
4 - for debugging (produces lots of information)

LOGS zabbix-agent!
Monitorando o Log do zabbix-agent:
tail -f <caminho_do_log>
Sada do Log:
2832:20130326:134510.379 Starting Zabbix Agent. Zabbix 1.8.5 (revision
19050).
2835:20130326:134510.382 agent #2 started [listener]
2834:20130326:134510.382 agent #1 started [listener]
2836:20130326:134510.383 agent #3 started [listener]
2837:20130326:134510.383 agent #4 started [active checks]
2833:20130326:134510.383 agent #0 started [collector]

LOGS zabbix-server!
Configurando o agent arquivo: /etc/zabbix/zabbix_server.conf:
vim /etc/zabbix/zabbix_server.conf
LogFile=/tmp/zabbix_server.log
LogFileSize=1
# Range: 0-1024
DebugLevel=3
#
#
#
#
#

0 - no debug
1 - critical information
2 - error information
3 - warnings
4 - for debugging (produces lots of information)

LOGS zabbix-server!
Monitorando o Log do zabbix-server:
tail -f <caminho_do_log>
Sada do Log:
17823:20130325:212828.543 Got signal [signal:15(SIGTERM),sender_pid:
20415,sender_uid:0,reason:0]. Exiting ...
17827:20130325:212828.544 Got signal [signal:15(SIGTERM),sender_pid:
20415,sender_uid:0,reason:0]. Exiting ...
17782:20130325:212830.514 [Z3001] connection to database 'zabbix'
failed: [2002] Can't connect to local MySQL server through socket '/var/lib/
mysql/mysql.sock' (2)
17782:20130325:212830.514 Cannot connect to the database. Exiting...

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Entendendo a interface WEB!

Criando Usurios!
Administrao > Usurios

Criando Usurios!
Usurios > Novo Grupo

Criando Usurios!
Configurando permisses do novo grupo:

Criando Usurios!
Autorizado Leitura e Escrita em Templates / Banido em Zabbix Servers:

Criando Usurios!
Grupo Criado!

Criando Usurios!
Criar Usurio

Criando Usurios!
Definindo configurao padro.

Criando Usurios!
Usurio criado e j atribudo ao grupo.

Criando Usurios!
Acessando o Zabbix com o usurio criado.

Criando Usurios!
Panel do usurio.

Hosts! O que so?!


A host in Zabbix is a networked entity (physical, virtual) that you wish to
monitor. The definition of what can be a host in Zabbix is quite flexible. It
can be a physical server, a network switch, a virtual machine or some
application. - Zabbix Documentation.
Exemplos de Hosts:
Servidores.
Desktops.
Switchs.
Roteadores.
Repetidores.

Hosts Inserindo um novo!


Configurao > Hosts

Hosts Inserindo um novo!


Criar Host

Hosts Inserindo um novo!


Nome do Host:
Alfa-numricos e espaos esto permitidos.
Grupo:
Adicionar o grupo em que o Host pertence.
Endereo de IP:
Entrar com o endereo de IP do Host.

Itens! O que so?!


Items are the basis of gathering data in Zabbix. Without items, there is
no data - because only an item defines a single metric or what data to get
off of a host. - Zabbix Documentation.
Exemplos de Itens:
Quantidade de memria RAM livre.
Quantidade de usurios conectados no Host.
Trfego de entrada na placa de rede.
Status do servio X.
Quantidade de memria em GB livre no HD.

Itens Inserindo um novo!


Hosts > Itens > Criar Item

Itens Inserindo um novo!


Inserir configuraes.

Itens Inserindo um novo!


Inserir configuraes.

Itens Inserindo um novo!


Para conferir se o item est funcionando, basta ir em:
Monitoramento > Dados Recentes

Triggers! O que so?!


Items only collect data. To automatically evaluate incoming data we
need to define triggers. A trigger contains an expression that defines a
threshold of what is an acceptable level for the data.
If that level is surpassed by the incoming data, a trigger will fire or go into a
'Problem' state - letting us know that something has happened that may
require attention. If the level is acceptable again, trigger returns to an 'Ok'
state. - Zabbix Documentation.
Exemplos de Triggers:
Memria livre no HD est abaixo de 10%.
Servio X no est ativo.
Conexo com o Host X no est ativa.

Triggers Inserindo um novo!


Configuraes > Hosts > Triggers > Criar Trigger

Triggers Inserindo um novo!


Para conferir o estado de uma trigger, ir em:
Monitoramento > Triggers
Para conferir se uma trigger foi ativada em algum momento, ir em:
Monitoramento > Eventos

Triggers Dependncias!
O que so e para que servem?!
Dependncias de triggers como o prprio nome j diz, faz com que
uma trigger dependa de outra para que a mesma dispare. Desta maneira
evitamos disparos indesejveis de triggers, podendo nos causar alguns
falsos positivos.
Exemplo:
Teremos duas triggers:
Trigger 1: Dispara caso comunicao com o servidor foi
perdida nos ltimos 2 minutos.
Trigger 2: Dispara caso arquivo /tmp/teste no exista.

Triggers Dependncias!
Exemplo:
Teremos uma dependncia de trigger na Trigger 2 com a Trigger
1, ou seja, a Trigger 2 s ser disparada caso o status da Trigger 1 seja
OK e o dela PROBLEM.
Resumindo:
S ser alertado que o arquivo /tmp/teste2 foi removido se a
conexo com o servidor estiver ativa.

Triggers Dependncias!
Os dois itens foram criados com suas respectivas triggers e j esto
recebendo os dados:

Triggers Dependncias!
Clique na Trigger 2 e v na Aba de Dependncias:

Triggers Dependncias!
Selecione a Trigger 1 como dependncia da Trigger 2 e clique em
Salvar:

Triggers Dependncias!
Para checar se a dependncia das triggers est correta, v em
Monitoramento > Viso Geral. Duas setas indicaro as dependncias.

Triggers Dependncias!
Forando o erro de comunicao com o Servidor, podemos ver que a
Trigger 2 no foi disparada, pois o Status da Trigger 1 est como
PROBLEM.

Em Viso Geral, temos o ocultamento da Trigger 2, pois a mesma no


ser disparada at que a Trigger 1 volte para o Status de OK.

Triggers Dependncias!
Forando o erro de comunicao com o Servidor, podemos ver que a
Trigger 2 no foi disparada, pois o Status da Trigger 1 est como
PROBLEM.

Em Viso Geral, temos o ocultamento da Trigger 2, pois a mesma no


ser disparada at que a Trigger 1 volte para o Status de OK.

Templates! O que so?!


Templates allow to group useful items, triggers and other entities so that
those can be reused again and again by applying to hosts in a single step.
When a template is linked to a host, the host inherits all entities of the
template. So, basically a pre-prepared bunch of checks can be applied very
quickly. - Zabbix Documentation.
Exemplos de Templates:
Template de Monitoramento Bsico Linux.
Template de Monitoramento Bsico Windows.
Template de Monitoramento de Email.
Template de Monitoramento de Backup.

Templates Inserindo um novo!


Configuraes > Templates > Criar Template

Templates Inserindo um novo!


Completar as configuraes:
Nome do Template.
Grupos.
Salvar Template.

Templates Inserindo Item ao Template!


Configurao > Templates > Itens > Criar Item.

Templates Inserindo Template ao Host!


Configuraes > Hosts > Clicar no nome do Host > Templates > Add.

Actions! O que so?!


Zabbix reacts to events by executing set of operations. An action can be
defined for any event or set of events generated by Zabbix. - Zabbix
Documentation.
Exemplos de Actions:
Enviar e-mail assim que servio X estiver down.
Executar X script assim que servio X estiver down.
Executar X comando caso armazenamento do HD estiver cheio.
Enviar SMS assim que o servidor for reiniciado.
Iniciar apache caso o mesmo esteja down.

Actions Inserindo uma nova!


Configurao > Aes > Criar ao

Actions Inserindo uma nova!


Criar ao > Ao

Actions Inserindo uma nova!


Criar ao > Condies

Actions Inserindo uma nova!


Criar ao > Aes

Utilizando os Comandos Remotos!


Com os comandos remotos podemos criar scripts que sero executados
diretamente na interface web do Zabbix.
O Zabbix j conta com alguns scripts remotos.

Utilizando os Comandos Remotos!


Testar Comando Remoto de Ping:
Dashboard > Host > Ping

Utilizando os Comandos Remotos!


Adicionar um novo Script de Comando Remoto:
Administrao > Scripts > Criar Script

Utilizando os Comandos Remotos!


Testar Script de Comando Remoto uptime criado:
Dashboard > Nome do Host > Uptime

PS.: Para executar comandos remotos necessrio que a opo:


EnableRemoteCommands seja igual a 1, no arquivo de configurao do
agente do host desejado.

Utilizando os Comandos Remotos em Aes!


Utilizando Comandos Remotos acoplados com Aes possvel
executar comandos quando, por exemplo, queremos restabelecer um
servio.
Criaremos 2 exemplos:
1. Criar um arquivo de log e escrever neste arquivo.
2. Subir o processo sshd quando o mesmo estiver down.

Utilizando os Comandos Remotos em Aes!


Exemplo 1. Criar um arquivo de log e escrever neste arquivo assim que
o arquivo /tmp/teste no existir.
Configurao > Aes > Criar ao.

Utilizando os Comandos Remotos em Aes!


Exemplo 1. Criar um arquivo de log e escrever neste arquivo assim que
o arquivo /tmp/teste no existir.
Aba Condies.

Utilizando os Comandos Remotos em Aes!


Exemplo 1. Criar um arquivo de log e escrever neste arquivo assim que
o arquivo /tmp/teste no existir.
Aba Aes.

Utilizando os Comandos Remotos em Aes!


Exemplo 1. Criar um arquivo de log e escrever neste arquivo assim que
o arquivo /tmp/teste no existir.
Salvar.

Ao criada.

Utilizando os Comandos Remotos em Aes!


Exemplo 1. Criar um arquivo de log e escrever neste arquivo assim que
o arquivo /tmp/teste no existir.
Arquivo foi removido, resultado final.

Utilizando os Comandos Remotos em Aes!


Exemplo 2. Subir o processo sshd quando o mesmo estiver down.
Seguir os mesmos passos anteriores, mudando somente o
comando remoto desejado e a trigger em que a ao em questo ir ser
lincada.
Add ao comando remoto:
sudo /etc/init.d/sshd restart
PS.: Para o usurio zabbix ter permisso de subir o processo do ssh,
necessrio adicionar a seguinte linha com o comando visudo.
zabbix ALL=(ALL) NOPASSWD: /etc/init.d/sshd

Utilizando os Comandos Remotos em Aes!


Exemplo 2. Subir o processo sshd quando o mesmo estiver down.
O problema foi corrigido automaticamente.

User Parameters! O que so?!


Functionality of Zabbix agents can be enhanced by defining user
parameters (UserParameter configuration parameter) in agent's
configuration file. Once user parameters are defined, they can be accessed
in the same way as any other agent items by using the key, specified in the
parameter definition.
User parameters are commands executed by Zabbix agent. /bin/sh is used
as a command line interpreter under UNIX operating systems. - Zabbix
Documentation.
Exemplos de User Parameters:
Script de rotina de banco de dados retornando alguma key.
Script de conferncia de servio no monitorado por padro.

User Parameters Exemplo de uso.


Sintaxe do User Parameter:
UserParameter=chave,comando
Chave = item nico (nico valor).
Comando = comando a ser executado para a obteno da chave.
Exemplos:
UserParameter=ping,echo 1
O agente sempre vai retornar 1 caso execute o ping.
UserParameter=mysql.ping,mysqladmin -u root ping | grep -c alive
O agente vai retornar 1, se o MySQL server estiver up.

Mapas O que so?!


Recurso Visual.
Demonstra o Status da rede.
Diagramao da estrutura de rede.
Fcil visualizao de todo o parque computacional.
Mtodo rpido de se ter acesso aos dados do parque computacional.

Mapas Criando mapas!


Configurao > Mapas > Criar mapa.
Campos:
Nome: Nome do mapa.
Largura e Altura: valores em pixel.
Imagem de fundo: Imagem de fundo para o mapa.
Mapeamento automtico de cone: cone padro.
Realce de cone: representar estado.
Res. Elemen. com mod. Status em Trigger: status da trigger.

Mapas Criando mapas!


Configurao > Mapas > Criar mapa.

Mapas Criando mapas!


Mapa criado.

Mapas Criando mapas!


Selecionar mapa.

Mapas Criando mapas!


Campos:
Exp. incidentes singulares: Desc. do problema no mapa.
Textos Avanados: personalizar texto.
Tipo de texto do cone: add mensagem.
Localizao do texto do cone: posio do texto do cone.
Exibio de Incidente: forma de exibio do problema.

Mapas Criando mapas!


+ Selecionar elemento:
- Campos:
Host: servidor, servio ou ativo de rede.
Grupo de Host: separao lgica.
Trigger: gatilhos, alertas.
Mapa: criar um submapa.
Imagem: figura esttica.

Mapas Criando mapas!


Checar mapa.

Mapas Criando mapas!


Problema de comunicao sendo mostrado no mapa.

Perodo de Manuteno O que ?!


Adicionando um Perodo de Manuteno em um Grupo de Hosts faz
com que o Zabbix no realize a coleta de dados em um perodo
predefinido.
A grande vantagem disso, que podemos realizar testes em nossos
Grupos de Hosts sem que o Zabbix colete esses dados sujos. Deixando
assim, nossos dados livres de falsos positivos ou de informaes
conflitantes.
Geralmente utilizado quando se deseja testar itens ou triggers novos ou
at configuraes de comunicaes com outros Proxys ou Nodes.
Muito usado tambm quando necessrio reiniciar servidores devido
algumas atualizaes de segurana e vulnerabilidades, no caso de
Servidores Windows.

Perodo de Manuteno Como Configurar?!


Configurao > Manuteno > Criar perodo de manuteno

Perodo de Manuteno Como Configurar?!


Aba Manuteno > Add Nome > Add Sem coleta de dados.

Perodo de Manuteno Como Configurar?!


Aba Perodos:
Tipo do perodo: Somente uma vez.
Data: Data desejada para o incio do perodo de manuteno.
Durao: Quanto tempo ir levar o perodo de manuteno (no
exemplo: 10 minutos).

Perodo de Manuteno Como Configurar?!


Aba Perodos: Salvar.

Perodo de Manuteno Como Configurar?!


Aba Grupos e Hosts:
Definir Grupos em manuteno (no exemplo: Zabbix Servers).

Perodo de Manuteno Como Configurar?!


Salvar e verificar:

Verificar se grupo de hosts entrou em manuteno:

Perodo de Manuteno Como Configurar?!


Note que no foi coletado dado algum enquanto o Servidor estava em
perodo de manuteno:

Monitorando pginas Web Vantagens!


Verificar se determinada URL est disponvel.
Obter a velocidade de acesso a determinada pgina Web.
Obeter tempo de resposta a determinada pgina Web.
Checar o que est causando lentido em um sistema ou pgina Web.

Monitorando pginas Web Exemplos!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
2. Tempo de resposta e velocidade de acesso ao Zabbix com login
completo.

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Configurao > Hosts > Web > Criar Cenrio.

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Aba Cenrio:
Aplicao: Rede
Nome: Byte Livre
Autentica: Nenhum
Intervalo de atualizao: 60
Agente: Mozilla Firefox 8.0
PS.: Agente o mecanismo que ser utilizado para executar os passos, ou
seja, o padro de navegador a ser utilizado.

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Aba Cenrio:

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Aba Passos:
Nome: Acesso ao site Byte Livre
URL: http://bytelivre.net
Cdigo: 200
PS.: Cdigo o cdigo de status HTTP que desejamos ter de retorno.
Neste caso, queremos um cdigo OK, que significa que a URL digitada foi
retornada com sucesso. Outros cdigos de status HTTP, podem ser obtidos
em:
https://support.google.com/webmasters/answer/40132?hl=en

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Aba Passos:

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Aba Passos:
Salvar.

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net
Checar monitoramento:
Monitoramento > Web > Byte Livre.

Monitorando pginas Web Exemplo 1!


1. Tempo de resposta e velocidade de acesso ao site: http://bytelivre.net

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
Aba Cenrio:
Aplicao: Rede
Nome: Zabbix
Autentica: Nenhum
Intervalo de atualizao: 30
Agente: Mozilla Firefox 8.0
Variveis:

{name}=Admin
{password}=zabbix

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
Aba Cenrio:
Variveis so obtidas atravs do cdigo fonte da pgina.
Com elas, podemos preecher o valor de cada campo para
realizar o login.
necessrio saber o nome de cada campo para completar
um valor com o Zabbix.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
Aba Cenrio:

name=name: Nome do login


name=password: Senha do login
name=enter: Nome do boto Sign in

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
4 Passos:
1. Acessar a pgina de login.
2. Executar o login com usurio e senha.
3. Abrir pgina inicial.
4. Executar logoff do sistema.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
1. Acessar a pgina de login.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
2. Login do Zabbix.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
3. Apresentao da pgina inicial.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
4. Acesso pgina de login do Zabbix.

Monitorando pginas Web Exemplo 2!


2. Tempo de resposta e velocidade de acesso ao Zabbix com login.
Checar dados:

Monitorando o APACHE!
Um dos monitoramentos mais importantes.
Apache o servidor Web mais utilizado do mundo.
Hoje em dia, qualquer empresa tem um servidor Web Apache tanto
externo quanto interno para criao de Websites ou Sistemas Web
prprios.
Com o monitoramento do Apache, podemos ter acesso a dados que nos
diga o porque do nosso servidor Web est lento, travando ou com gargalo.
Para monitorar o Apache utilizaremos um script bash e um template
muito utilizado na comunidade Zabbix, porm modificado por: Janssen dos
Reis Lima.

Monitorando o APACHE!
necessrio ter instalado no Servidor Zabbix que ir monitorar o
Servidor Apache os programas: fgrep e awk.
Criar as seguintes pastas:
/etc/zabbix/scripts
/opt/zabbix/tmp
Nomear o usurio zabbix como proprietrio da pasta:
chown zabbix:zabbix /etc/zabbix/scripts
Colocar o script apache.sh (anexado no EAD do curso) na pasta: /etc/
zabbix/script

Monitorando o APACHE!
Dar permisso de execuo ao script:
chmod u+x /etc/zabbix/scripts/apache.sh
Tornar o usurio zabbix proprietrio do script:
chown zabbix:zabbix /etc/zabbix/scripts/apache.sh
Adicionar UserParameter referente ao script:
vi /etc/zabbix/zabbix_agentd.conf
UserParameter=apache[*], /etc/zabbix/scripts/apache.sh $1

Monitorando o APACHE!
Acessar arquivo de configurao do apache:
vi /etc/httpd/conf/httpd.conf
Mudar parmetro: ExtendedStatus para On.
Adicionar no final do arquivo:
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Location>

Monitorando o APACHE!
Reiniciar o Apache:
/etc/init.d/httpd restart
Adicionar template Template_Apache_Stats (Anexado ao EAD do curso)
no Zabbix.
Adicionar o template no host que estiver com o Apache a ser
monitorado.
Esperar o recebimento dos dados.

Monitorando o APACHE!
Recebimento dos dados:

Monitorando o APACHE!
Recebimento dos dados:

Monitorando o SGDB MySQL!


Um dos monitoramentos mais importantes.
MySQL um dos Banco de Dados mais utilizados no mundo.
MySQL o principal Banco de Dados utilizado em aplicaes Web.
Monitorando o MySQL podemos ter acesso a dados que nos auxilie a
resolver problemas futuros ou a garantir que problemas futuros no
ocorram.
Para monitorar o MySQL utilizaremos o template: Template App Mysql,
que j vem instalado no Zabbix e configurado de forma genrica.

Monitorando o SGDB MySQL!


Acessar a pasta de instalao do Zabbix e dentro dela acessar o
seguinte arquivo:
vi /conf/zabbix_agentd/userparameter_mysql.conf
Copiar o que achar necessrio e adicionar no final do arquivo /etc/
zabbix/zabbix_agentd.conf.
Adicionar tambm a seguinte linha:
UserParameter=mysql.status[*], sudo mysql -D zabbix -s -e
"show global status like '$1'"| tail -n1 | cut -f 2

Monitorando o SGDB MySQL!


Associar o template Template App Mysql ao Host em que deseja
monitorar o MySQL.

Permitir que o usurio zabbix execute os comandos colocados nos


UserParameters, acessando o visudo e adicionando uma das linhas
abaixo:
- D permisso de acesso a qualquer comando para o usurio zabbix:
zabbix ALL=NOPASSWD: ALL
- D permisso de acesso ao daemon mysqld para o usurio zabbix:
zabbix ALL=NOPASSWD: /etc/init.d/mysqld

Monitorando o SGDB MySQL!


Verificar o recebimento dos dados:

Monitorando o SGDB MySQL!


Verificar o recebimento dos dados:

Monitorando o SGDB MySQL!


Verificar o recebimento dos dados:

Monitoramento utilizando o Protocolo IPMI!


Intelligent Platform Management Interface.
Usado para gerenciar um sistema de computador e monitorar seu
funcionamento.
Desenvolvido pela Intel e hoje suportado por mais de duzentos
fabricantes de hardware.
Atualmente est na verso 2.0.
Opera de forma independente do Sistema Operacional.
Pode-se controlar inclusive, configuraes da BIOS.

Monitoramento utilizando o Protocolo IPMI!


Administradores podem utilizar as mensagens do IPMI para monitorar o
estado da plataforma atravs de dados como a temperatura, a tenso,
estado da ventilao e das fontes de energia ou mesmo informaes para
inventrio.
Coleta informaes utilizando sensores, disponibilizando informaes
em tempo real.
Um hardware que possui suporte a IPMI geralmente disponibiliza uma
interface web para gerenciamento remoto. Exemplos: IMM da IBM, iLO da
HP e DRAC da Dell.
Antes de fazer qualquer configurao IPMI no Zabbix, precisamos saber
quais sensores monitorar.

Monitoramento utilizando o Protocolo IPMI!


H dois modos de saber os sensores a serem monitorados:
1. Manual do hardware.
2. Atravs do ipmitool no Linux.
Instalar o ipmitool no CentOS:
yum install ipmitool
Utilizar o seguinte comando para listar as informaes de IPMI:
ipmitool -H <ip_interface_ipmi> -U <usuario> -P <senha> sdr

Monitoramento utilizando o Protocolo IPMI!


Sada ser semelhante a essa:

Para mostrar uma sada mais detalhada, com informaes de nvel no


crtico, nvel crtico e fatal, podemos executar o seguinte comando:
ipmitool -H <ip_interface_ipmi> -U <usuario> -P <senha> sensor

Monitoramento utilizando o Protocolo IPMI!


Com o comando anterior teremos uma idia do seguinte:
A temperatura ambiente est em 22 C. O nvel no crtico seria
38 C, crtico 41 C e fatal, 45 C.
Esses nveis so ideais para alertar os administradores, criando Triggers
exatas a serem disparadas.

Monitoramento utilizando o Protocolo IPMI!


Para configurar o suporte a IPMI no Zabbix, necessrio baixar 3
pacotes:
OpenIPMI-libs
OpenIPMI-devel
ipmitool
Para funcionar, necessrio compilar o Zabbix no momento da
instalao com a opo --with-openipmi.
Para voc saber se o mesmo foi compilado com essa opo, basta
procurar no diretrio onde se encontra o cdigo-fonte e verificar no arquivo
config.log se existe uma linha com #define HAVE_OPENIPMI 1.

Monitoramento utilizando o Protocolo IPMI!


Para habilitar o monitoramento com IPMI no Zabbix, teremos que ir no
arquivo de configurao (zabbix_server.conf) e tirar o comentrio da linha
StartIPMIPollers = 1.
Alterado o arquivo de configurao, necessrio reiniciar o Zabbix
Server.
Feito isso o Zabbix est pronto para se cadastrar itens com suporte a
IPMI.

Monitoramento utilizando o Protocolo IPMI!


Na interface Web, acessar:
Configurao > Hosts > Host com suporte a IPMI > Aba IPMI.
Agoritmo de autenticao: Padro
Nvel de privilgio: Admin
Usurio: <nome_do_usuario>
Senha: <senha_do_usuario>

Monitoramento utilizando o Protocolo IPMI!


Como mostra as prximas imagens:

Monitoramento utilizando o Protocolo IPMI!


Feito isso, podemos criar um item com suporte a IPMI:

Configurao > Hosts > Host com suporte a IPMI > Itens > Criar Item.
Nome: Temperatura Ambiente.
Tipo: Agente IPMI.
Chave: ipmi.ambient.temp
Sensor IPMI: Ambient Temp
Tipo de informao: Numrico (fracionrio)
Unidades: C

Monitoramento utilizando o Protocolo IPMI!


Como mostra a prxima imagem:

Monitoramento utilizando o Protocolo SNMP!


Simple Network Management Protocol TRIPA 2 - Protocolo Simples de
Gerncia de Rede.
um protocolo da camada de aplicao de gerncia tpica de redes IP,
que facilita o intercmbio de informao entre os dispositivos de rede.
Possibilita aos administradores de rede gerenciar o desempenho da
rede, encontrar e resolver seus eventuais problemas, e fornecer
informaes para o planejamento de sua expanso, dentre outras.
Utilizado para gerenciar recursos de rede:
Switches.
Impressoras.
Roteadores.
Rdios.

Monitoramento utilizando o Protocolo SNMP!


Zabbix conta com suporte nativo ao SNMP (v1, v2 e v3).
Geralmente, utilizado para monitorar ativos de rede que no possuem
suporte a instalao de um agente (zabbix_agent).
Possui informaes detalhadas, no apenas identificar se est ou no
online.
Podemos monitorar por SNMP utilizando dois modos:
SNMP.
SNMP Trap.

Monitoramento utilizando o Protocolo SNMP!


SNMP:
O dispositivo a ser monitorado trabalha como um Servidor e o
Zabbix como um Cliente.
Comunicao acontece na porta 161/UDP.
SNMP Trap:
O dispositivo a ser monitorado trabalha como Agente, ficando
responsvel por enviar os itens para o Zabbix.
Comunicao acontece na porta 162/UDP.

Monitoramento utilizando o Protocolo SNMP!


Para que o Zabbix tenha suporte a SNMP, necessrio que no momento
da compilao, tenha sido posto a opo: --with-net-snmp.
necessrio tambm, que o Servidor Zabbix conte com o pacote netsnmp-utils:
yum install net-snmp-utils
Para consultar informaes de SNMP em um dispositivo, podemos fazer
de 3 maneiras:
Em modo texto com o comando snmpwalk e snmptranslate.
Em modo grfico com o programa MIBBrowser (recomendado).
Manual do dispositivo (recomendado).

Monitoramento utilizando o Protocolo SNMP!


Em modo texto:
Utilizar o snmpwalk para mostrar as informaes de SNMP de um
dispositivo:
snmpwalk -c public -v2c <ip_do_dispositivo>
Explicando:
-c = comunidade.
-v2c = verso do SNMP, no caso, verso 2c.
<ip_do_dispositivo> = IP do Host com suporte a SNMP.

Monitoramento utilizando o Protocolo SNMP!


Teremos uma sada semelhante a essa:

Monitoramento utilizando o Protocolo SNMP!


Teremos uma sada semelhante a essa:
SNMPv2-MIB::sysDescr.0 = STRING: Broadcom Bcm963xx Software Version 3.06L.03-T1.0a-080401.
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.4413.2.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (67322860) 7 days, 19:00:28.60
SNMPv2-MIB::sysContact.0 = STRING: unknown
SNMPv2-MIB::sysName.0 = STRING: Broadcom
SNMPv2-MIB::sysLocation.0 = STRING: unknown
SNMPv2-MIB::sysServices.0 = INTEGER: 72
IF-MIB::ifNumber.0 = INTEGER: 8
IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
IF-MIB::ifIndex.3 = INTEGER: 3
IF-MIB::ifIndex.4 = INTEGER: 4
IF-MIB::ifIndex.5 = INTEGER: 5
IF-MIB::ifIndex.6 = INTEGER: 6
IF-MIB::ifIndex.7 = INTEGER: 7
IF-MIB::ifIndex.8 = INTEGER: 8
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: atm0
IF-MIB::ifDescr.3 = STRING: cpcs0
IF-MIB::ifDescr.4 = STRING: dsl0
IF-MIB::ifDescr.5 = STRING: eth0
IF-MIB::ifDescr.6 = STRING: br0
IF-MIB::ifDescr.7 = STRING: nas_0_35
IF-MIB::ifDescr.8 = STRING: ppp_0_35_1
()

Monitoramento utilizando o Protocolo SNMP!


Caso aparea somente o OID e no sua descrio, podemos utilizar o
snmptranslate para traduzi-lo:
snmptranslate .1.3.6.1.2.1.2.2.1.10.1
Teremos uma sada semelhante a essa:
IF-MIB::ifInOctets.1
Caso tenha a descrio, mas queira o OID, podemos fazer da seguinte
forma:
snmptranslate -On -IR ifInOctets.1
Teremos uma sada semelhante a essa:
.1.3.6.1.2.1.2.2.1.10.1

Monitoramento utilizando o Protocolo SNMP!


Modo grfico:
recomendado instalar o MIBBrowser.
Mostra informaes mais detalhadas.
Mostra informaes de maneira mais organizada.
Possui um acervo bem grande de MIBs j includas no sistema.
Multi-Plataforma (Windows, Linux e OSX).
Acessar o link: http://ireasoning.com/download.shtml e seguir os
passos mostrados no site, para efetuar a instalao.

Monitoramento utilizando o Protocolo SNMP!


Modo grfico:
Com o MIBBrowser instalado, podemos executar um Walk em um
dispositivo de rede com suporte SNMP.
Para isso, basta colocar o IP desejado na opo Address, deixar
em branco a opo OID e em Operations, colocar a opo Walk,
pressionando o boto GO.
Podemos constatar que so as mesmas informaes que
encontramos utilizando o comando snmpwalk, porm, de maneira muito
mais clean e organizada.

Monitoramento utilizando o Protocolo SNMP!


Modo grfico:

Monitoramento utilizando o Protocolo SNMP!


Importante:
Vale observar que o SNMP organizado da mesma maneira que
um array ou matriz.
Desta forma, tudo que o final for o mesmo nmero, ser uma outra
informao de uma mesma interface.
Por exemplo:
ifInOctets.8: 1030285774
ifType.8: ppp
Desta forma sabemos a quantidade de entrada na interface ppp de um
modem adsl.

Monitoramento utilizando o Protocolo SNMP!


Entendendo todas essas informaes, podemos cadastrar um item
SNMP no Zabbix.

Configurao > Hosts > Host com suporte SNMP > Itens > Criar Item.
Nome: Quantidade de download
Tipo: Agente SNMPv2
Chave: baixado
SNMP OID: ifInOctets.8
Comunidade: public

Monitoramento utilizando o Protocolo SNMP!


Como mostra a imagem:

Monitoramento utilizando o Protocolo SNMP!


Conferindo os dados:

Monitoramento utilizando o Protocolo SNMP!


Conferindo os dados (Grfico):

Servios de TI O que so?!!


Muito interessante para gerentes de redes verificarem se um
determinado servio est dentro dos padres acordados com os clientes.
Servios de TI so lincados em Triggers!
Exemplo: checar a disponibilidade do site: http://bytelivre.net.

Servios de TI O que so?!!


Criar trigger que dispare caso a requisio web ao site da Byte Livre,
seja diferente de 200, ou seja, no estiver respondendo com um OK.

Servios de TI O que so?!!


Configurao > Servios de TI > Raiz > Adicionar Servio.

Servios de TI O que so?!!


Servio adicionado.

Servios de TI O que so?!!


Monitorando Servios de TI:
Monitoramento > Servios de TI

Servios de TI O que so?!!


Monitorando Servios de TI:
Clicar no link para exibir relatrio detalhado

Monitoramento Windows com Perf_Counter!


Para deixar o monitoramento de hosts com Windows mais
personalizvel, devemos utilizar os contadores de desempenho.
Para obter um lista de objetos registrados em cada sistema, utilizaremos
o TypePerf.exe.
O TypePerf.exe possu vrias opes de execuo, porm iremos utilizalo somente para coletarmos os contadores de objetos instalados no
sistema, utilizando o seguinte comando:
C:\> typeperf -qx
recomendado, salvar em um arquivo a sada do comando, para
analisarmos mais detalhadamente:
C:\> typeperf -qx -o contadores.txt

Monitoramento Windows com Perf_Counter!


Para ter certeza que o Zabbix ir monitorar com sucesso os dados,
podemos realizar um teste com o seguinte comando:
zabbix_get -s <ip_windows> -k perfcounter[nome_do_contador]
Exemplo 01 - Pegar porcentagem livre de espao em disco:
zabbix_get -s 192.168.1.3 -k perf_counter["\LogicalDisk(C:)\% Free
Space"]
Exemplo 02 - Pegar espao livre em MB no disco:
zabbix_get -s 192.168.1.3 -k perf_counter["\LogicalDisk(C:)\Free
Megabytes"]

Monitoramento Windows com Perf_Counter!


Obtendo a sada correta, podemos cadastrar um novo item no Zabbix
utilizando o perf_counter:
Nome - Espao em disco no drive C:
Tipo - Agente Zabbix
Chave - perf_counter["\LogicalDisk(C:)\% Free Space"]
Tipo de informao Numrico (fracionrio)
Unidades - %

Monitoramento Windows com Perf_Counter!

Monitoramento Windows com Perf_Counter!


Checando o recebimento dos dados:

Monitoramento Windows com Perf_Counter!


Um grande cuidado que devemos tomar, que dependendo do idioma
do Windows um perf_counter em ingls acaba sendo diferente de um
perf_counter de um Windows em Portugus (PT_Br).
Para solucionar este problema, teremos que colocar seu nmero de
identificao no lugar da informao escrita.
Para checar o nmero de identificao de cada perf_counter,
necessrio:
Acessar o regedit.
Procurar a pasta: HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\Windows NT\CurrentVersion\Perflib\
Pasta 009 esto as descries em Ingls.
Pasta 0016 esto as descries em Portugus (PT_Br).

Monitoramento Windows com Perf_Counter!

Monitoramento Windows com Perf_Counter!


Dessa forma:
perf_counter["\LogicalDisk(C:)\% Free Space"]
igual a:
perf_counter["\236(C:)\408"]
Porm a segunda maneira, funciona em qualquer idioma do
Windows, no necessitando criar vrios itens iguais.

Screens! O que so?!


On Zabbix screens you can group information from various sources for a
quick overview on a single screen. Building the screens is quite easy and
intuitive. - Zabbix Documentation.
Exemplos de Screens:
Grficos Simples.
Mapas.
Informaes de Servidores.
Informaes de Hosts.
Informaes de Eventos.

Screens Criando uma nova!


Configurao > Telas > Criar Tela.

Screens Criando uma nova!


Criar Tela > Clique em cada celular e escolha o que deseja colocar.

Geolocalizao!
Localizao de todos os hosts em mapas dinmicos.
Maior facilidade de visualizao dos hosts.
Viso estendida e melhorada.
Utiliza a API do Google Maps.
possvel utilizar o Google Latitude.
Plugin criado por Aristteles Arajo e Leandro Alves Machado.
ltima verso no momento: 0.3.3
Foi acoplada ao Plugin Zabbix-Extras, criado por Adail Spinola.

Geolocalizao!
Duas formas de se instalar:
1. Forma (Verses 2.0.x do Zabbix Server):
Plugin criado por Aristteles Arajo e Leandro Alves Machado.
ltima verso no momento: 0.3.3
2. Forma (Verses 2.1.x e mais recentes do Zabbix Server):
Instalao do Plugin Zabbix-Extras, criado por Adail Spinola.

Geolocalizao - Instalao!
Realizar o download em: http://www.sofitrix.com.br/plugins/zabbixgeolocalizacao-v0.3.3.tar.gz
Acessar pasta /var/www/html/zabbix/
cd /var/www/html/zabbix
Criar a pasta extras
mkdir extras
Acessar a pasta extras
cd extras/

Geolocalizao - Instalao!
Copiar o arquivo tar.gz para a pasta extras.
cp /<path_arquivo_tar.gz>/
Descompactar o arquivo.
tar -zxvf <nome_do_arquivo.tar.gz>
Copiar arquivo geolocation.php para /var/www/html/zabbix.
cp /geolocation/misc/geolocation.php /var/www/html/zabbix
Permisses para o usurio apache.
chown -R apache:apache extras/

Geolocalizao - Instalao!
Criar item no menu do Zabbix.
vi ../include/menu.inc.php
Localizar texto:
array(
'url' => 'srv_status.php',
'label' => _('IT services'),
'force_disable_all_nodes' => true,
'sub_pages' => array('report3.php', 'chart5.php')
),

Geolocalizao - Instalao!
Adicionar embaixo do texto localizado:
array(
'url' => 'geolocation.php',
'label' => _('Geolocalizao')
),
Salvar e sair do arquivo.
Essa alterao cria um menu de Geolocalizao em Monitoramento.
Confira se o menu Monitoramento > Geolocalizao foi criado.

Geolocalizao - Instalao!
Configurar o php.ini.
vi /etc/php.ini
Modificar a propriedade short_open_tag de Off para On.
short_open_tag=On
Salvar e sair do arquivo.
Reiniciar o apache.
/etc/init.d/httpd restart

Geolocalizao - Instalao!
Definir o grupo padro para a pesquisa de Geolocalizao.
vi /zabbix/extras/geolocation/geolocation.conf
group = 1 (ou o grupo que voc desejar).
Para que os hosts sejam exibidos no Mapa, necessrio cadastrar sua
Latitude e Longitude.
Configurao > Hosts > Host desejado > Inventrio > Manual.
Adicionar Latitude e Longitude
Salvar e verificar se o Host ir ser mostrado no mapa.
Configurao > Geolocalizao

Geolocalizao - Instalao!
Adicionando Latitude e Longitude

Geolocalizao - Instalao!
Verificando a Geolocalizao do Zabbix Server.

Geolocalizao - Instalao!
2a. Forma de instalao, atravs do plugin Zabbix-Extras.
Baixar o Plugin:
wget https://raw2.github.com/SpawW/zabbix-extras/master/
instalaExtras.sh
Executar o script:
./instalaExtras.sh
Responder as perguntas e acessar a interface do Zabbix.
Este Plugin automatiza toda a instalao e ainda instala alguns detalhes
a mais.

Geolocalizao - Instalao!
Mais detalhes em:
http://spinola.net.br/blog/?p=496
Site dos criadores e mantenedores deste excelente Plugin!

Desinstalando o Zabbix!
Matar o processo do Zabbix:
# killall zabbix_server
Remover binrios:
# rm -rf /usr/local/sbin/zabbix_*
Logar no mysql e deletar tabela:
# mysql -u root -p
mysql> drop database zabbix;

Desinstalando o Zabbix!
Deletar o diretrio do zabbix:
# rm -rf /etc/zabbix
Deletar os scripts init.d (caso houverem):
# rm -rf /etc/init.d/zabbix-*

Material de Pesquisa!
Manual OFICIAL do Zabbix em Portugus (v.1.8):
https://www.zabbix.com/documentation/pt/start
Manual OFICIAL do Zabbix em Ingls (v.1.8 e v.2.0):
https://www.zabbix.com/documentation/2.2/manual
timo Livro: Zabbix 1.8 Network Monitoring

Das könnte Ihnen auch gefallen