Buscar

Aula 05 - Zabbix Aprendendo Monitoramento na Prática

Prévia do material em texto

Zabbix 
Monitoramento de 
Ambientes na Prática
Conteúdo Programático
� Aula 1 - História e Instalação do Zabbix 3.0
� Aula 2 - Configurações do Zabbix 3.0
� Aula 3 - Trabalhando com Templates, Eventos e Gráficos
� Aula 4 - Monitoramento Inteligente
� Aula 5 - Gerenciamento do Zabbix
Zabbix - Monitoramento de Ambientes na Prática
� Aula 5 - Gerenciamento do Zabbix
• Administração de usuários e grupos do Zabbix 3.0.
• Exportação e importação de dados entre servidores Zabbix usando XML.
• Monitoramento distribuído com Zabbix Proxy.
• Integração do Zabbix 3.0 com o Grafana.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
O Zabbix é administrado por sua interface web, todas configurações de
monitoração são realizadas por ela, e é através dessa interface que os
usuários se identificam através de usuário e senha.
As senhas dos usuários são salvas de forma criptografada no banco de
dados e a comunicação entre o usuário e servidor web pode ser protegida
através de SSL, mantendo a segurança da solução.
O Zabbix é bem flexível com seu esquema de permissão, podendo ser feita a
personalização dividida em funções administrativas do Zabbix e hosts
monitorados.
Por padrão o Zabbix tem dois usuários, o Admin e o Guest que pode ser
usado por usuários não autenticados.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
Antes de configurar um usuário é importante configurar grupos de usuários,
pois com eles é possível definir permissões e assim adicionar usuários a
grupos. Para isso vá na aba Administração > Grupos de usuários > Criar
grupos de usuários.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
As permissões são divididas em Leitura-Escrita, Somente Leitura e Nega.
Baseado nessas permissões é necessário fazer a atribuição de permissões
entre os grupos de hosts.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
A criação de usuário é bem simples, para isso vá na aba Administração >
Usuários > Criar usuário.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
Preencha os dados como Nome, Sobrenome, Apelido, Grupos, Idioma,
Senha, entre outros, na tela de criação do usuário.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
Também é possível configurar diversas mídias para serem associadas ao
usuário criado. Através destas mídias que o usuário vai ser notificado de
alguma forma. Por padrão o Zabbix pré disponibiliza Email, Jabber e SMS.
Zabbix - Monitoramento de Ambientes na Prática
Administrando usuários e grupos
A terceira e última parte da configuração de usuários é a permissão e o tipo
de usuário, porém as permissões devem ser definidas para grupos de
usuários apenas.
Zabbix - Monitoramento de Ambientes na Prática
Importação e Exportação usando XML
O Zabbix possibilita exportar e importar configurações de sistemas Zabbix, e
compartilhar estes modelos entre usuários da solução.
Usuários do Zabbix podem compartilhar templates ou mapas de rede com
parâmetros configurados, ou para fazer integração com ferramentas de
terceiro através de XML que é um formato universal, estes são alguns
exemplos de utilização de importação e exportação.
Os formatos de exportação são:
• XML - na interface web
• XML ou JSON - através da API Zabbix
Zabbix - Monitoramento de Ambientes na Prática
Importação e Exportação usando XML
É possível importar e exportar:
� Grupos de hosts (apenas através da API);
� Templates (incluindo todos as entidades diretamente associadas - itens,
triggers, gráficos, telas, LLD e associação com templates);
� Hosts (incluindo todos as entidades diretamente associadas - itens, triggers,
gráficos, LLD e associação com templates);
� Mapas de rede (incluindo todas as imagens relacionadas);
� Imagens;
� Telas;
� Mapeamento de valores.
Zabbix - Monitoramento de Ambientes na Prática
Importação e Exportação usando XML
Para exportar alguma funcionalidade do Zabbix, na maioria das vezes é
necessário apenas selecionar o que quer e clicar no botão exportar.
Zabbix - Monitoramento de Ambientes na Prática
Importação e Exportação usando XML
Exemplo de template exportado em XML.
Zabbix - Monitoramento de Ambientes na Prática
Monitoramento distribuído (Zabbix Proxy)
Uma função bem interessante do Zabbix é o monitoramento distribuído, que
nesse caso se chama Zabbix Proxy. Através dele é possível coletar dados de
performance e disponibilidade de hosts em nome do Zabbix Server. Dessa
maneira o proxy assume parte da carga de processamento de coletar dados
que normalmente seria atribuída ao Zabbix Server.
Através do Zabbix Proxy é possível centralizar a coleta de dados em um
único ponto específico, ou seja, uma empresa matriz pode coletar dados de
suas filiais sem problemas, e centralizar toda informação na matriz.
Zabbix - Monitoramento de Ambientes na Prática
Monitoramento distribuído (Zabbix Proxy)
O Zabbix Proxy pode ser usado para:
� Monitorar localizações remotas
� Monitorar localizações com conexão instável
� Reduzir a carga de processamento no Zabbix Server quando este tem que
monitorar milhares de dispositivos
� Simplificar a manutenção da monitoração distribuída
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Para instalar o Zabbix Proxy vamos usar a mesma configuração da máquina
virtual do Zabbix Server, portanto basta criar uma nova máquina virtual.
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Instalando dependências
# apt-get -y install build-essential snmp vim libssh2-1-dev libssh2-1 libopenipmi-dev libsnmp-dev
wget libcurl4-gnutls-dev fping curl libcurl3-gnutls libcurl3-gnutls-dev libiksemel-dev libiksemel-utils
libiksemel3 sudo sqlite3 libsqlite3-dev
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Criando diretório /opt/zabbix
# mkdir /opt/zabbix && cd /opt/zabbix
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Adicionando usuário zabbix sem shell
# adduser zabbix --shell /bin/false
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Baixando Zabbix compactado
# wget http://downloads.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.0.1/zabbix-3.0.1.tar.gz
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Descompactando Zabbix
# tar -xzvf zabbix-3.0.1.tar.gz
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Permissão de execução
# chmod -R +x zabbix-3.0.1
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Entrando no diretório do sqlite3
# cd zabbix-3.0.1/database/sqlite3/ && mkdir /var/lib/sqlite3/
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Populando o banco de dados SQLite3
# sqlite3 /var/lib/sqlite3/zabbix.db < schema.sql
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Alterando usuário e grupo do diretório
# chown -R zabbix:zabbix /var/lib/sqlite3/
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Voltando para diretório zabbix-3.0.1
# cd ../../
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Compilando o Zabbix Proxy
# ./configure --enable-proxy --enable-agent --with-sqlite3 --with-net-snmp --with-libcurl=/usr/bin/curl-
config --with-ssh2 --with-openipmi
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Instalando o Zabbix Proxy
# make install
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
# vim /usr/local/etc/zabbix_proxy.conf
Zabbix - Monitoramento de Ambientes na Prática
Instalação ZabbixProxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha ProxyMode=0
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Insira o IP do Zabbix Server na frente do campo Server=
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Insira o nome CORRETO do Zabbix Proxy na frente do campo Hostname=
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha LogFileSize e insira o valor 2
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha DebugLevel
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a PidFile
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Na frente do campo DBName= insira o caminho do banco de dados “/var/lib/sqlite3/zabbix.db”
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha ProxyOfflineBuffer e complete com o 2
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha DataSenderFrequency
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Editando arquivo de configuração do Zabbix Proxy
Descomente a linha FpingLocation e corrige o local para /usr/bin/fping
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Algumas informações sobre os parâmetros configurados:
� Como estamos usando o banco de dados SQLite os parâmetros DBHost,
DBUser e DBPassword podem ser ignorados, só é necessário informar a
localização do banco no parâmetro DBName.
� O parâmetro LogFileSize significa o tamanho máximo que o arquivo de log
pode ter em megabytes.
� O parâmetro ProxyOfflineBuffer significa a quantidade de horas que o Zabbix
Proxy vai guardar os dados dos hosts no banco de dados, caso a conexão
com o Zabbix Server seja interrompida.
� O parâmetro DataSenderFrequency significa o intervalo em segundos que o
proxy ficará enviando os dados coletados ao servidor Zabbix.
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Criando o arquivo de inicialização do Proxy
# vim /etc/init.d/zabbix-proxy
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Criando o arquivo de inicialização do Proxy
# vim /etc/init.d/zabbix-proxy
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
#!/bin/sh
#
# Zabbix daemon start/stop script.
#
# Written by Alexei Vladishev
<alexei.vladishev@zabbix.com>.
NAME=zabbix_proxy
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/home/zabbix/bin
DAEMON=/usr/local/sbin/${NAME}
DESC="Zabbix server daemon"
PID=/tmp/$NAME.pid
test -f $DAEMON || exit 0
set -e
case "$1" in
start)
echo "Starting $DESC: $NAME"
start-stop-daemon --oknodo --start --pidfile $PID \
--exec $DAEMON
;;
Zabbix - Monitoramento de Ambientes na Prática
stop)
echo "Stopping $DESC: $NAME"
start-stop-daemon --oknodo --stop --pidfile $PID \
--exec $DAEMON
;;
restart|force-reload)
$0 stop
sleep 3
$0 start
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
Instalação Zabbix Proxy - Debian
Copiando o arquivo de inicialização do agente
# cp misc/init.d/debian/zabbix-agent /etc/init.d/
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Dando permissão para arquivos de inicialização do Zabbix
# chmod +x /etc/init.d/zabbix-proxy /etc/init.d/zabbix-agent
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Iniciando Zabbix Proxy e Zabbix Agent
# /etc/init.d/zabbix-proxy start
# /etc/init.d/zabbix-agent start
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Inicializando junto com o sistema operacional
# update-rc.d zabbix-proxy defaults
# update-rc.d zabbix-agent defaults
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Aba Administração > Proxies > Criar Proxy
Adicionando o proxy no Servidor Zabbix
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Preencha o campo Nome do Proxy
O campo Nome do Proxy deve ser preenchido com o mesmo nome que foi configurado o parâmetro
Hostname do arquivo /usr/local/etc/zabbix_proxy.conf
Zabbix - Monitoramento de Ambientes na Prática
Instalação Zabbix Proxy - Debian
Pronto! O Zabbix Proxy foi configurado.
Agora basta atribuir os hosts que forem necessários usando o proxy no campo Monitorado
por proxy.
Zabbix - Monitoramento de Ambientes na Prática
Lembre-se de alterar o IP do parâmetro Server= nos arquivos de configuração do Zabbix
Agent que será monitorado pelo proxy, o IP correto será o do Zabbix Proxy!
Integrando Zabbix com Grafana
O Grafana é uma ferramenta que proporciona de uma maneira mais elegante
a criação de dashboards mais estilizados. Geralmente ele é usado para a
visualização de dados de infra-estrutura, mas também pode exibir dados de
sensores industriais, automação residencial, clima e controle de processos.
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Fazendo o download do Grafana
# wget https://grafanarel.s3.amazonaws.com/builds/grafana_3.0.4-1464167696_amd64.deb
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Instalando dependências
# apt-get install -y adduser libfontconfig
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Instalando o pacote
# dpkg -i grafana_3.0.4-1464167696_amd64.deb
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando a inicialização com o sistema operacional
# update-rc.d -f grafana-server defaults
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Iniciando o Grafana
# service grafana-server start
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Listando os plugins disponíveis para serem instalados
# grafana-cli plugins list-remote
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Instalando o plugin
# grafana-cli plugins install alexanderzobnin-zabbix-app
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Reiniciando o Grafana
# /etc/init.d/grafana-server restart
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Acessando a interface web do Grafana
http://IP_DO_SERVIDOR:3000/login Usuário e Senha padrão: admin
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando plugin
Clique no ícone do Grafana, depois em Plugins
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando plugin
Clique na aba Apps, depois no ícone do Zabbix
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando plugin
Clique em Enable
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando banco de dados
Clique no ícone do Grafana, depois em Data Sources e + Add data source
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configurando banco de dados
O campo URL é preenchido com a URL da API do Zabbix
Zabbix - Monitoramento de Ambientes na Prática
Integrando Zabbix com Grafana
Configuração Finalizada
A ferramenta será demonstrada de forma prática.
Zabbix - Monitoramento de Ambientes na Prática
Zabbix - Monitoramento de 
Ambientes na Prática
Dúvidas 
maikilsoares@gmail.com

Continue navegando