Baixe o app para aproveitar ainda mais
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 4 - Monitoramento Inteligente • Monitoramento de logs em arquivos do Windows. • Funcionalidades de configuração de mapas de acesso web. • Coletando variáveis MIB de roteadores. • Criando Cenários Web. • Comandos remotos e encaminhamento de mensagens em caso de ocorrência de incidentes usando triggers inteligentes. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs O Zabbix tem a capacidade de monitorar arquivos de log, inclusive de sistemas operacionais Windows, essa é uma ótima opção para automatizar processos que dependem de uma ação caso aconteça algum problema, ou até mesmo uma notificação relatando algo que aconteceu no sistema operacional. Podemos verificar a temperatura de servidores Windows e caso chegue a uma certa temperatura, envie uma notificação para o administrador, e é esse exemplo que vamos colocar em prática. O Zabbix não possui um item específico e nativo para monitorar temperaturas, por isso vamos usar uma ferramenta para gerar o log e o Zabbix para capturar os dados do log. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows O primeiro passo a se fazer é baixar o software Real Temp 3.70, que pode ser encontrado neste link: https://www.techpowerup.com/downloads/2089/real-temp-3-70/start?server=6 Após fazer o download, crie uma pasta onde preferir, por exemplo C:\RealTemp3.70\ e descompacte o download lá dentro. Por fim execute a aplicação “RealTemp.exe”. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Depois que o software abrir clique em Settings. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Marque a opção Log File (seconds) e deixa em 30 segundos. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Verifique o arquivo de log em C:\RealTemp3.70\RealTempLog.txt Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Agora é preciso baixar o software Disk Temp, que pode ser encontrado neste link: http://www.satsignal.eu/software/DiskTemp.zip Após fazer o download, crie uma pasta onde preferir, por exemplo C:\DiskTemp\ e descompacte o download lá dentro. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Outro passo importante é o download de um pacote de softwares interessante chamado UnxUtils, nele há executáveis de comandos Unix que usaremos no nosso laboratório. Nele podemos encontrar comandos como tail, cat, head, grep, etc. O link do download é esse: http://unxutils.sourceforge.net/UnxUpdates.zip Após o download extraia os arquivos em alguma pasta e por fim copie os executáveis ‘tail.exe’, ‘gawk.exe’ e ‘head.exe’ para dentro do C:\Windows\System32 Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Para testar o RealTemp abra o prompt de comando do Windows e execute o seguinte comando: tail -1 C:\RealTemp3.70\RealTempLog.txt | gawk “{print $4}” Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Para testar o Disk Temp abra o prompt de comando do Windows e execute o seguinte comando: C:\DiskTemp\DiskTemp.exe | head -1 Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Edite o arquivo de configuração do Zabbix Agent e adicione as três linhas abaixo: UserParameter=temp.tempcore0,tail -1 C:\RealTemp3.70\RealTempLog.txt | gawk "{print $4}" UserParameter=temp.cpu.load,tail -1 C:\RealTemp3.70\RealTempLog.txt | gawk "{print $5}“ UserParameter=hdtemp,C:\DiskTemp\DiskTemp.exe | head -1 Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Após acrescentar as 3 linhas no arquivo, salve e reinicie o serviço do Zabbix Agent. Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows No Zabbix Server execute os comandos e verifique o retorno: # zabbix_get -s 192.168.1.4 -k temp.tempcore0 # zabbix_get -s 192.168.1.4 -k temp.cpu.load # zabbix_get -s 192.168.1.4 -k hdtemp Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Aba Configuração > Templates > Criar template Preecha os campos Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Criando novo item do template com a chave ‘temp.tempcore0’ Crie mais dois itens com as duas outras chaves Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Criando novo gráfico do template com os três itens Zabbix - Monitoramento de Ambientes na Prática Monitoramento de logs em arquivos do Windows Por último associe o host Windows ao template e verifique os dados e gráfico Zabbix - Monitoramento de Ambientes na Prática Mapas No Zabbix também é possível criar mapas de sua infraestrutura, este é um passo interessante pra quem pretende ter uma documentação de como funciona sua rede. O processo de criação de mapas de rede pode ser definido em duas etapas, sendo que a primeira é a configuração dos parâmetros gerais (externos) do mapa, e a segunda etapa é a configuração dos elementos e dos links entre eles (interna). É possível popular um mapa com elementos como hosts, grupo de hosts, triggers, imagens ou outros mapas. Zabbix - Monitoramento de Ambientes na Prática Criando mapas Aba Monitoramento > Mapas > Criar mapa Zabbix - Monitoramento de Ambientes na Prática Criando mapas Aba Compartilhamento A aba Compartilhamento é usada caso queira compartilhar seus mapas com usuários ou grupos Zabbix - Monitoramento de Ambientes na Prática Criando mapas Construindo o mapa Clique no botão Construtor Zabbix - Monitoramento de Ambientes na Prática Criando mapas Adicionando novo ícone Clique no botão Adicionar, que está na frente de ícone Zabbix - Monitoramento de Ambientes na Prática Criando mapas Configurando elemento Clique no ícone criado e preencha os campos Zabbix - Monitoramento de Ambientes na Prática Criando mapas Criando novo ícone Crie um novo ícone, porém agora apontando para o Zabbix Server Zabbix - Monitoramento de Ambientes na Prática Criando mapas Criando um link Selecione os 2 ícones segurando a tecla CTRL, depois clique em Adicionar na frente de Link Zabbix - Monitoramento de Ambientes na Prática Criando mapas Editando um link Clique no botão Editar e preencha os campos Zabbix - Monitoramento de Ambientes na Prática Criando mapas Criando uma trigger Adicione uma trigger, por exemplo a Zabbix agent on Servidor Linux is unreachable for 5 minutes Zabbix - Monitoramento de Ambientes na Prática Criando mapas Atualizando mapa No final o mapa ficará dessa forma, cliquem em Atualizar e faça um teste, desative a interface de rede do Zabbix Agent Zabbix - Monitoramento de Ambientes na Prática Criando mapas Destacando problema na rede pelo mapa O mapa ficará em destaque mostrando o que está acontecendo e qual trigger está sendo acionada. Inicie a interface de rede do Zabbix Agent e verifique que o mapa voltará ao normal Zabbix - Monitoramento de Ambientes na Prática Variáveis MIB MIB é uma base de informação de gerenciamento, são variáveis organizadas de forma hierárquica nos hosts e exibem diversos tipos de valores que são utilizados para gerencia e análise de redes. O número de variáveis é bem grande, cerca de milhares, e para manter essa estrutura organizada foi adotado um formato de árvore. Como no exemplo abaixo: Zabbix - Monitoramento de Ambientes na PráticaVariáveis MIB A identificação de um objeto é realizada através do caminho disposto entre a raiz e o objeto desejado, por exemplo um objeto com o OID (Object Identifier) igual a iso.org.dod.internet.mgmt.mib-2.system.sysDescr identifica um objeto simples que tem uma única instancia, cujo seu nome simbólico é iso.org.dod.internet.mgmt.mib-2.system.sysDescr.0. Já o nome numérico desse objeto seria 1.3.6.1.2.1.1.1.0. Se comparar o nome simbólico com o nome numérico é possível ver que os dois percorrem o mesmo caminho na árvore MIB. Zabbix - Monitoramento de Ambientes na Prática Descobrindo OID O comando snmpwalk pode ser utilizado para obter uma lista dos OIDs de dispositivos. Um exemplo de como usá-lo é: # snmpwalk -v 2c -c public <host IP> O 2c significa a versão do SNMP, ou seja, nesse comando será usado a segunda versão do SNMP. O public significa a comunidade de leitura (community) do dispositivo, por padrão ela é public, mas pode ser facilmente alterada. Zabbix - Monitoramento de Ambientes na Prática Descobrindo OID Considerando que desejamos monitorar o volume em bytes que é recebido pela interface do roteador, iremos capturar o OID IF-MIB::ifInOctets, conforme no exemplo: # snmpwalk -v 2c -c public <host IP> ifInOctets Agora será usado o comando snmpget para descobrir o número associado ao nome de OID: # snmpget -v 2c -c public -On <host IP> ifInOctets.10000 Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Após descobrir o nome simbólico e numérico do OID iremos criar um host que será nosso roteador e por enquanto não iremos atribuir um template para esse host. Lembrando que para funcionar, é necessário ativar a opção de SNMP do seu equipamento. Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Aba Configuração > Host > Criar Host No campo Interface SNMP coloque o IP do seu roteador, e no campo Interface do agente deixe desativada Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Criando item interface de entrada Crie um item no host roteador, e preencha os campos de forma semelhante a este exemplo, lembrando que o campo SNMP OID pode ser diferente para outro equipamento Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Criando item interface de saída Crie mais um item no host roteador, e preencha os campos de forma semelhante a este exemplo, lembrando que o campo SNMP OID pode ser diferente para outro equipamento Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Criando gráfico Por último crie um gráfico com os dados coletados através de protocolo SNMP e MIBs e teste o gráfico Zabbix - Monitoramento de Ambientes na Prática Trabalhando com MIBs Atribuindo template Por fim vamos associar um template a este host, pois o template já possui grande parte dessas configurações de MIBs pronta Zabbix - Monitoramento de Ambientes na Prática Monitoramento Web O Zabbix também possibilita a verificação da disponibilidade de vários aspectos de sites web. Essa função é realizada através de cenários web, que consiste em uma ou mais requisições HTTP em forma de passos. O passos são executados periodicamente pelo Zabbix Server em uma ordem pré-definida. Os cenários web coletam informações como velocidade média de download de todos os passos do cenário, número de passos com falha e última mensagem de erro. E cada passo do cenário web coleta informações como velocidade de download por segundo, tempo de resposta e código de resposta. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Para criar um cenário web iremos usar o servidor que já instalamos o Apache anteriormente. Acesse o host e clique na opção Cenários web, depois clique em Criar cenário web. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Preencha os campos conforme abaixo, o agente podemos escolher outro navegador pois será realizado apenas requisições HTTP. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Agora iremos adicionar os passos necessários para o monitoramento, clique no Adicionar. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web O campo URL é o endereço da página que pretende monitorar, que no caso é o Servidor Apache, já o campo Código de status requerido é o código de retorno do status HTTP, no caso 200 significa que a resposta a solicitação HTTP foi OK. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Agora verifique o cenário web, vá na aba Monitoramento > Web. Já é possível ver o Status da verificação, a última checagem e o número de passos usado. Clique no link Servidor Apache. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Para que a captura de dados comece a ocorrer, acesse a página do Apache no navegador. Zabbix - Monitoramento de Ambientes na Prática Criando um cenário web Por fim verifique os dados coletados. Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Através da opção de usar comandos remotos do Zabbix, é possível definir algum determinado comando para que seja executado automaticamente no host monitorado, isso quando alguma condição for atendida. Estes comandos remotos são interessantes pois se trata de um monitoramento proativo inteligente. EXEMPLO: Usando parte do conhecimento adquirido nos hosts, itens e triggers, criaremos uma situação que usará comandos remotos. No host onde está instalado o Zabbix Agent será usado um comando remoto para iniciar o Apache. Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Primeiro passo é instalar o Apache no Host # apt-get install apache2 Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Edite o arquivo de configuração do agente # vim /usr/local/etc/zabbix_agentd.conf Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Descomente e altere os valores EnableRemoteCommands=1 LogRemoteCommands=1 Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Reinicie o Zabbix Agent # /etc/init.d/zabbix-agent restart Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Edite o arquivo /etc/sudoers através do comando visudo # visudo Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Adicione na última linha do arquivo zabbix ALL=(ALL) NOPASSWD: /etc/init.d/apache2 restart Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Aba Configuração > Hosts > (Host do Apache2) > Itens > Criar item Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Preencha os campos dessa forma Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Aba Configuração > Hosts > (Host do Apache2) > triggers > Criar trigger Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Preencha os campos dessa forma Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Aba Configuração > Ações > Criar ação Na caixa origem do evento é necessário que esteja selecionado a opção Triggers Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Preencha os campos Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Preencha os campos Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Preencha os campos Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Para testar a configuração primeiro pareo serviço do apache usando o comando: # /etc/init.d/apache2 stop É possível acompanhar o log do agente usando o comando tail: # tail -f /tmp/zabbix_agentd.log Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Como sei qual a chave devo usar quando vou criar o item? Estas chaves já estão pré-configuradas no Zabbix, cada chave tem sua explicação de como usar e qual valor ela retorna. Essas informações são encontradas neste link: https://www.zabbix.com/documentation/3.0/pt/manual/config/items/itemtypes/zabbix_agent Zabbix - Monitoramento de Ambientes na Prática Usando comandos remotos e o Monitoramento Inteligente Como a trigger funciona? A trigger verifica o valor da chave net.tcp.service para tomar alguma atitude, de acordo com o link anterior quando o valor for 1 significa que o serviço está ativo e recebendo requisições na porta especificada. Já quando o valor for 0, significa que o serviço está inativo. O comando remoto para reiniciar o apache será executado quando a o valor da chave do item for igual a 0, a trigger é responsável por verificar este valor e disparar a ação necessária. Baseado neste lógica é possível criar diversos comandos remotos para deixar o ambiente o mais proativo possível. https://www.zabbix.com/documentation/3.0/pt/manual/appendix/triggers/functions Zabbix - Monitoramento de Ambientes na Prática Zabbix - Monitoramento de Ambientes na Prática Dúvidas maikilsoares@gmail.com
Compartilhar