62
Gerência de Redes com Zabbix André Déo

Zabbix 2010

  • Upload
    andredeo

  • View
    12.445

  • Download
    1

Embed Size (px)

DESCRIPTION

Palestra sobre Zabbix André Déo - 2010

Citation preview

Page 1: Zabbix 2010

Gerência de Redes com Zabbix

André Déo

Page 2: Zabbix 2010

Agenda• NMS (Network Management System)

• Zabbix

• Exemplos

Page 3: Zabbix 2010

NMS (Network Management System)

O Sistema de Gerenciamento de Rede (Network Management System – NMS) é um sistema responsável pelas aplicações que monitoram e controlam os Dispositivos Gerenciados. Normalmente é instalado em um (ou mais de um) servidor de rede dedicado a estas operações de gerenciamento, que recebe informações (pacotes SNMP) de todos os dispositivos gerenciados daquela rede.

Page 4: Zabbix 2010

Por que utilizar um NMS?

• Monitorar problemas de forma automatizada

• Receber aviso de problema antes da ligação do usuário (ou do diretor!)

• Servidores inativos → perda $$$

• Planejamento de investimentos em recursos de hardware

• Avaliação de qualidade de serviços

• Inventário de hardware

Page 5: Zabbix 2010

Zabbix

Page 6: Zabbix 2010

História

• Criado por Alexei Vladishev• Linha do tempo:• 1998 : Escolhas disponíveis HP OpenView, IBM, BMC: muito caros para comprar e manter• Que nome eu dou para este software? ABCDE…Zabbix!• 2001 : versão 1.0alpha1 em GPL• 2004 : versão 1.0• 2006 : versão 1.1• 2007 : versão 1.4• 2008 : versão 1.6• Zabbix 1.6.4, 500 downloads por dia, 15.000 usuários no forum• A compania Zabbix company está crescendo, 20 parceiro Zabbix (Europa, Japão, EUA, BRASIL)

Page 7: Zabbix 2010

O que é?

• Um software Livre (e de código fonte aberto – Open Source) com sistema de monitoramento distribuído capaz de monitorar a disponibilidade e performance de toda sua infra-estrutura de rede, além de aplicações;

• Suporte a maioria dos sistemas operacionais:

•Linux, Solaris, HP-UX, AIX, FreeBSD, OpenBSD, NetBSD, Mac OS, Windows, entre outros;

• Monitora serviços simples (http, pop3, imap, ssh) sem o uso de agentes;

Page 8: Zabbix 2010

Características

• Suporte nativo ao protocolo SNMP;

• Interface de gerenciamento Web, de fácil utilização;

• Integração com banco de dados (MySQL, Oracle, PostgreSQL ou SQLite);

• Geração de gráficos em tempo real;

• Fácil instalação e customização;

Page 9: Zabbix 2010

Características

• Agentes disponíveis para diversas plataformas:• Linux,Solaris, HP-UX, AIX, FreeBSD, OpenBSD, SCO-OpenServer, Mac OS, Windows 2000/XP/2003/Vista;

• Agentes para plataformas 32 bits e 64 bits;

• Integração com os Contadores de Performance do Windows;

Page 10: Zabbix 2010

Características

• Versão atual: 1.8.1

• Versão em desenvolvimento: 1.7.4

• Software Open Source distribuído pela Licença GPL v2;

• Excelente Manual (Em Inglês) – Possui licenciamento próprio – Não GPL;

•Suporte do Fórum (Em Inglês);

• Suporte Comercial (ZABBIX SIA - [email protected]);

Page 11: Zabbix 2010

Características

• Suporte Comercial no Brasil pela Unirede: http://www.zabbix.com.br

• Suporte da comunidade brasileira• Site: http://www.zabbixbrasil.org• Lista: http://br.groups.yahoo.com/group/zabbix-brasil/

• Envio de alertas para:• E-mail;• Jabber;• SMS;•Scripts personalizados.

Page 12: Zabbix 2010

Características

Exemplos de Configuração de Hardware:Name Plataform CPU/Memory Database Monitored

Small Ubuntu Linux PII 350 MHZ 256MB

MySQL MyISAM 20

Medium Ubuntu Linux 64 bit

ADM Athlon 3200+ 2 GB

MySQL InnoDB 500

Large Ubuntu Linux 64 bit

Intel Dual Core 6400 4GBRAID 10

MySQL InnoDBorPostgreeSQL

>1000

Very Large RedHat Enterprise Intel Xeon 2xCPU8GBFast RAID10

MySQL InnoDBorPostgreeSQL

>10000

* Zabbix Manual v. 1.6 – Páginas 33-34

Page 13: Zabbix 2010

Características

• Alguns tipos de itens que não dependem de agente (Simple Checks):• icmpping – Verifica se o host está acessivel através do ping;• http – Verifica se a porta http (80) está respondendo;• pop – Verifica se a porta pop3 (110) está respondendo;• ftp_perf – Tempo de resposta (em ms) do serviço de FTP;

Page 14: Zabbix 2010

Componentes• Server:

• Núcleo do Zabbix, lógica do sistema• Processamento de Dados, Escalonamento

• Interface Web• Acesso ao histórico de dados•Configuração

•Agente• Servidor de coleta de dados, ações

• Proxy:• Coleta remota de dados

Page 15: Zabbix 2010

Componentes

Page 16: Zabbix 2010

Detalhes Técnicos

• Linguagem de Programação: • Servidor e agentes: C• Interface de administração: PHP

• Princípios fundamentais da Zabbix desenvolvimento:• Mantenha as coisas simples (KISS), no entanto, tem que ser muito flexível

• Manter os requisitos de hardware baixos, mas não deve afetar a produção

Page 17: Zabbix 2010

Porque escolher o Zabbix?

O que torna o Zabbix tão especial?• All-in-one (Tudo em um), única solução quando se trata de monitoramento!

• Todos os dados históricos, tendências e configuração são armazenados em um banco de dados

• Preparado para controle dos pequenos e grandes ambientes distribuídos

Page 18: Zabbix 2010

Porque escolher o Zabbix?

• Solução verdadeiramente Software Livre (GPLv2), não existe versões comerciais.

• Toda a lógica está do lado do servidor, os agentes são usados apenas para coleta de dados

• Extremamente flexível! Triggers, escalations, new checks, screens e muito mais.

• Projetado para lidar com as comunicações instáveis

• Suporte total ao IPv6

Page 19: Zabbix 2010

Como monitorar

• Verificações de serviço:• FTP, SSH, HTTP, SMTP, DNS ...

• Agente Zabbix:• Checagem Аtiva e Passiva• Monitoramento de registros, logs de eventos• Fácil de personalizar• Execução de comando remoto• Extremamente eficiente!

• Outros:• Plugins WMI, JMX, Nagios

Page 20: Zabbix 2010

Como monitorar

• SNMP v1, v2, v3:• Dispositivos de rede• Normalmente NET-SNMP para servidores• Monitoramento de aplicações (Oracle, Weblogic, Websphere, PostgreSQL, MySQL, ...)• Traps SNMP

• IPMI:

• Monitoramento de hardware

• Gerenciamento remoto (reboot, reset, desligamento)

Page 21: Zabbix 2010

Uso do Agente do Zabbix

• Checagens Ativas:• Altamente eficiente• Buffer de dados coletados

• Checagens Passivas:• Requer polling do lado do Servidor Zabbix

• Desempenho adicional por causa dos pollings e da largura de banda de rede

Page 22: Zabbix 2010

Uso do Agente do Zabbix

Page 23: Zabbix 2010

Hummm ... Triggers!

• Trigger é uma expressão lógica flexível usada para definir uma condição de problema.

• Status (value) de uma trigger representa o estado do sistema

• Alteração do valor da trigger gera eventos

• É uma das maneiras de lidar com flapping (Intefaces intermitentes, up, down, up, down)

Page 24: Zabbix 2010

Hummm ... Triggers!

• CPU load is too high: {host:cpuload.last(0)}>5

• CPU load is too high: {host:cpuload.min(300)}>2

• CPU load is too high: {host:cpuload.min(300)}>2 & {host:cpuuser.min(300)}>50

• CPU load is too high: {host:cpuload.min(300)}>2 & {host2:backup.last(0)}=0

• Nós decidimos como definir «CPU load is too high» não o Zabbix sozinho!

Page 25: Zabbix 2010

Dependências

• Eles são usados para:• Evitar notificações• Definir dependências entre diferentes problemas (relacionados a redes, aplicações, qualquer coisa). Sem dependências de host!

• Server está down Switch1 está down Switch2 está down

• Servidor Web está down MySQL não está respondendo Sem espaço livre no /tmp

Page 26: Zabbix 2010

Escalabilidade

• Cenários diferentes:• Notificações atrasadas• Notificações repetidas• Execução de comandos• Aviso para outros usuários• Recuperação de mensagens

• Diferentes ações para eventos conhecidos e não conhecidos

Page 27: Zabbix 2010

Exemplo (reação para a falha de checagem de um Servidor Web)• Aumente a etapa a cada 5 minutos

• Etapa 1-3: Enviar mensagem para os Unix Admins• Etapa 3-5: Enviar mensagem para Chefe, se não ACK• Passo 6: Reinicie o Apache, se não ACK• Passo 7: Reiniciar o servidor se não ACK• Passo 10: Enviar mensagem a todos os não ACK

Page 28: Zabbix 2010

Visualização: Dashboard

• Recursos Prediletos:• Mapas• Gráficos• Screens (Telas)

• Exibição dos itens principais:• Problemas por grupos de hosts• Estatísticas do Zabbix• Lista dos últimos alertas• Informações do Web Monitoring• Auto Discovery

Page 29: Zabbix 2010

Visualização: Dashboard

Page 30: Zabbix 2010

Visualização: Gráficos

• Acesso Imediato:• Qualquer período de tempo• Navegação de linha do tempo fácil• Zoom a um clique do mouse• Problemas são visualizados• Marcação de tempo de down-time

• Tipos de Gráficos:• Standard (Pontos, Linhas, Cores)• Empilhado (Stacked)• Torta

Page 31: Zabbix 2010

Visualização: Gráficos

Page 32: Zabbix 2010

Visualização: Telas (Screens)

• Diferentes Blocos:• Gráficos• Mapas• Dados em texto plano• Lista de problemas• Lista dos últimos alertas

• Slide Show:

• Conjunto de telas

• Exibidas uma após a outra

Page 33: Zabbix 2010

Visualização: Telas (Screens)

Page 34: Zabbix 2010

Web Monitoring

• Objetivos:• Acompanhamento da experiência do usuário• Suporte a cenários complexos• Monitoramento de desempenho• Monitoramento de disponibilidade

• Exemplo:• Passo 1 – Acesso a home page• Passo 2 – Login (POST, GET)• Passo3 – Executar relatório• Passo 4 - Logout

Page 35: Zabbix 2010

Web Monitoring

Page 36: Zabbix 2010

Serviços de TI

• Objetivos:• Monitoramento de nível de negócio• Monitoramento SLA• Nós nos preocupamos com os serviços• Escalonamento de problemas• Causa raíz do problema

• Estrutura de árvore baseada em:• Dependências• Localização Física• Tipo de serviço, etc

Page 37: Zabbix 2010

Serviços de TI

Page 38: Zabbix 2010

Gerenciamento de usuários

• Autenticação:• Standard: Banco de dados do Zabbix• LDAP (Active Directory)• Apache (Kerberos, Unix, etc)

• Permissões:• Depende do tipo de usuário• Localização Física• Nível de permissão por grupos

• E ainda:• Notificações apenas para grupos de usuários

Page 39: Zabbix 2010

Extendendo o Zabbix

• Novas checagens no agente:• UserParameter=mysql.qps,mysqladmin –uroot status|cut –f9 –d”:”• UserParameter=sum[*],echo “$1+$2”|bc• Examples: mysql.qps = 456, sum[4,5] = 9

• Novo método de notificação:• Apenas uma questão de escrever um shell script (geração de voz, chamada Skype, qualquer coisa)

• Novas checagens no servidor:• Apenas uma questão de escrever um shell script

Page 40: Zabbix 2010

Zabbix: Várias Abordagens

• Um Sevidor Zabbix faz tudo

• Um Sevidor Zabbix• Um Proxy por Data Center ou Filial

• Um Sevidor Zabbix por Data Center• Mais esforço para manter• Pode ser usado Proxy

Page 41: Zabbix 2010

O que é um Proxy?

• Proxy é um coletor de dados. É usado também para auto discovery.

• Vantagens:• Torna arquitetura mais fácil• Não requer recursos significativos• Diminui a carga do servidor

Page 42: Zabbix 2010

Proxy: Como funciona?

• Gerenciamento:• Apenas coleta dados• Gerenciamento completo via front-end Web• A configuração é armazenada no Servidor Zabbix• Todas as conexões são iniciadas pelo Proxy• Coleta de milhares de valores por segundo

Page 43: Zabbix 2010

Proxy: Como funciona?

• Tratamento de perda de conexão:• Os dados estão armazenados no banco de dados do Proxy• Serão enviados quando a conexão for restabelecida• Não envia notificações de problemas locais

Page 44: Zabbix 2010

Monitoramento Distribuído

• Atributos Básicos:• Estrutura em árvore• O nó é um servidor Zabbix• Os nós são plataformas independentes

• Gerencia:

• Configuração de replicação em duas vias

• Nó pai controla nó filhos

Page 45: Zabbix 2010

Monitoramento Distribuído

Page 46: Zabbix 2010

Tratamento de perda de conexão

• O que vai parar de trabalhar?• Envio de dados para o nó pai• Sincronização da configuração

• Todo o resto vai continuar funcionando

Page 47: Zabbix 2010

Milhares de dispositivos: Soluções

• Problemas e soluções:• Volume de dados enorme: usar partições de banco de dados para informações de históricos• Integração com os sistemas existentes: Autenticação LDAP, XML import / export para a configuração, gerenciamento e inventário• Manutenção: Modelos, Atualizações em massa

• Atualizações: Todos os componentes do Zabbix da maioria das versões são compatíveis com a release 1.6.x

Page 48: Zabbix 2010

Escolha o melhor esquema

• Dependendo dos requisitos:• Administração Local• Toda as opções de monitoramento quando não houver conexão entre os data centers (filiais)

• Comece a usar o Zabbix• Adapte o Código Fonte

• Adicione Proxies• Monitoramento Distribuído

Page 49: Zabbix 2010

Exemplos Práticos

• Caso 1 – problema

• Como saber, antes do diretor, que a telefonia deixou de funcionar na residência?

Page 50: Zabbix 2010

Exemplos Práticos

• Caso 1 – solução

• Monitoramento de rádios via ping

• Aviso via email sempre que algum ponto deixar de responder

Page 51: Zabbix 2010

Exemplos Práticos

• Caso 1 – visão gráfica

Page 52: Zabbix 2010

Exemplos Práticos

• Caso 2 – problema

• O ar-condiciando na sala dos servidores deixou de funcionar corretamente, podendo comprometer a integridade de diversos servidores/serviços.

Page 53: Zabbix 2010

Exemplos Práticos

• Caso 2 – solução

• Monitoramento de temperatura servidor ZABBIX

• Aviso via email (guarita) se temperatura ultrapassar limite definido

Page 54: Zabbix 2010

Exemplos Práticos

• Caso 2 – visão gráfica

Page 55: Zabbix 2010

Exemplos Práticos

• Caso 3 – problema

• Possuir informações históricas sobre a disponibilidade da conexão de internet dos clientes

Page 56: Zabbix 2010

Exemplos Práticos

• Caso 3 – solução

• Monitoramento de servidor(es) de clientes (com menor freqüência)

• Histórico de disponibilidade (e outras informações para auxiliar o gerenciamento dos servidores)

Page 57: Zabbix 2010

Exemplos Práticos

• Caso 3 – visão gráfica

Page 58: Zabbix 2010

Referências:

• Site do Zabbix:

http://www.zabbix.com

• Licença Zabbix:

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

• Manual do Zabbix:

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

• Lista da Comunidade Brasileira:

http://br.groups.yahoo.com/group/zabbix-brasil

Page 59: Zabbix 2010

Referências:

• Artigos:

http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=3951

http://www.dicas-l.com.br/dicas-l/20070728.php

http://www.slacklife.com.br/article.php?sid=1498

http://gentoo-wiki.com/HOWTO_Zabbix

Page 60: Zabbix 2010

Referências:• Apresentações:

João Ricardo Pecanha Mendes - 3º Encontro Nacional LinuxChix-BR 2005

http://www.linuxchix.org.br/files/evento/2005/palestras/zabbix.pdf

Alexei Vladishev, Fundador do Zabbix – Open Source Data Center Conference 2009

http://www.netways.de/osdc/y2009/programm/v/open_source_enterprise_monitoring_with_zabbix/

Daniel Baurmann - IV Semana das Ciências, Artes e Tecnologias (CIARTEC) promovida pelo Instituição Evangélica de Novo Hamburgo (IENH) 2009

http://danielbauermann.wordpress.com/2009/10/07/ciartec-2009/

Page 61: Zabbix 2010

Contatos André Déo:• [email protected]

• http://andredeo.blogspot.com

Page 62: Zabbix 2010