• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Zabbix FLISOL Campinas 28-04-2012
 

Zabbix FLISOL Campinas 28-04-2012

on

  • 7,601 views

Palestra sobre Zabbix ministrada no FLISOL Campinas 2012.

Palestra sobre Zabbix ministrada no FLISOL Campinas 2012.

Statistics

Views

Total Views
7,601
Views on SlideShare
3,741
Embed Views
3,860

Actions

Likes
0
Downloads
158
Comments
0

2 Embeds 3,860

http://zabbixbrasil.org 3859
http://translate.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Zabbix FLISOL Campinas 28-04-2012 Zabbix FLISOL Campinas 28-04-2012 Presentation Transcript

    • FLISOL CAMPINAS 2012 André Déo
    • Gerência de Redes com Zabbix
    • Agenda• NMS (Network Management System)• O que é Zabbix?• Por que usar Zabbix?• História• Características• Funcionalidades• Exemplos Práticos• Zabbix 2.0: O que vem por aí?• Zabbix-BR
    • NMS (Network Management System)O Sistema de Gerenciamento de Rede (Network Management System – NMS) é umsistema responsável pelas aplicações que monitoram e controlam os DispositivosGerenciados. Normalmente é instalado em um (ou mais de um) servidor de redededicado a estas operações de gerenciamento, que recebe informações (pacotesSNMP) de todos os dispositivos gerenciados daquela rede.
    • 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 são muito caros• Planejamento de investimentos em recursos de hardware• Avaliação de qualidade de serviços• Um bom sistema de gerenciamento nos torna confiantes, nosso negócio está funcionando!
    • Zabbix
    • O que é?Um software Livre (e de código fonte aberto – Open Source) com sistema demonitoramento distribuído capaz de monitorar a disponibilidade e performance detoda 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;
    • 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 bancode dados.Preparado para controle dos pequenos e grandes ambientes distribuídos.Solução verdadeiramente Software Livre (GPLv2), não existe versões comerciais.
    • Porque escolher o Zabbix?Toda a lógica está do lado do servidor, os agentes são usados apenas para coleta dedadosExtremamente flexível! Triggers, escalations, new checks, screens e muito mais.Projetado para lidar com as comunicações instáveisSuporte total ao IPv6
    • HistóriaCriado por Alexei VladishevLinha do tempo:• 1998 : Escolhas disponíveis HP OpenView,IBM, BMC: muito caros para comprar e manterQue nome eu dou para este software?ABCDE…Zabbix!2001 : versão 1.0alpha1 em GPL2004 : versão 1.02006 : versão 1.1 Alexei Vladishev Fundador e CEO da Zabbix SIA Desenvolvedor do Zabbix
    • História• 2007 : versão 1.4• 2008 : versão 1.6Zabbix 1.6.4, 500 downloads por dia, 15.000 usuários no forumA compania Zabbix company está crescendo, 20 parceiros Zabbix (Europa, Japão, EUA,BRASIL)Zabbix Hoje:• Downloads desde 2001: Mais de 1.300.000• Usuários no Fórum: Dezembro quase 54.000; Hoje são mais de 60.000!• Usuários na lista Brasileira: Mais de 480
    • Características• Versão atual: 1.8.12• Excelente Manual• Suporte do Fórum• Suporte Comercial (ZABBIX SIA - sales@zabbix.com)• Suporte Comercial no Brasil pela Unirede: http://www.zabbix.com.br
    • Características• Envio de alertas para: e-mail, Jabber, SMS e scripts personalizados• 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
    • Características• Fácil instalação e customização• 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 Windows XP quase 7.000 itens !! Windows Server 2003 R2 mais de 23.000 itens !!
    • Características Exemplos de Configuração de Hardware:Name Plataform CPU/Memory Database Monitored HostsSmall Ubuntu Linux PII 350 MHZ MySQL MyISAM 20 256MBMedium Ubuntu Linux 64 bit ADM Athlon 3200+ MySQL InnoDB 500 2 GBLarge Ubuntu Linux 64 bit Intel Dual Core 6400 MySQL InnoDB >1000 4GB or RAID 10 PostgreeSQLVery Large RedHat Enterprise Intel Xeon MySQL InnoDB >10000 2xCPU or 8GB PostgreeSQL Fast RAID10 * Zabbix Manual Online http://www.zabbix.com/documentation
    • CaracterísticasAlguns 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;
    • ComponentesServer:• Núcleo do Zabbix, lógica do sistema• Processamento de Dados, Escalonamento Interface Web• Acesso ao histórico de dados• ConfiguraçãoAgente• Servidor de coleta de dados, ações Proxy:• Coleta remota de dados
    • Componentes
    • Detalhes TécnicosLinguagem de Programação:• Servidor e agentes: C• Interface de administração: PHP• Não houve reuso de código do Nagios, RRD, CactiPrincí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
    • Como MonitorarVerificaçõ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
    • Como MonitorarSNMP 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)
    • Uso do Agente do ZabbixChecagens Ativas:• Altamente eficiente• Buffer de dados coletadosChecagens Passivas:• Requer polling do lado do Servidor Zabbix• Desempenho adicional por causa dos pollings e da largura de banda de rede
    • Uso do Agente do Zabbix
    • 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)• {<server>:<key>.<function>(<parameter>)}<operator><const>
    • Hummm ... Triggers!• CPU load is too high: {host:cpuload.last(0)}>5• A trigger será verdadeira toda vez que a leitura mais recente da carga do processador for maior que 5.• CPU load is too high: {host:cpuload.min(300)}>2• A trigger será verdadeira se a carga do processador for maior que 2 nos últimos cinco minutos.• CPU load is too high: {host:cpuload.min(300)}>2 & {host:cpuuser.min(300)}>50• A trigger será verdadeira se a carga do processador for maior que 2 nos últimos cinco minutos E a carga do processador com processos de usuário for maior que 50 nos últimos cinco minutos.
    • Hummm ... Triggers!• CPU load is too high: {host:cpuload.min(300)}>2 & {host2:backup.last(0)}=0• A trigger será verdadeira se a carga do processador for maior que 2 nos últimos cinco minutos E a leitura mais recente do status do backup do host2 for 0 (Pode ser definido o que 0, 1, 2 ... N significam)Nós decidimos como definir «CPU load is too high» não o Zabbix sozinho!
    • DependênciasElas são usadas 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
    • EscalabilidadeCená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
    • Exemplo: Reação para a falha de um Servidor WebAumente 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
    • Visualização: DashboardRecursos 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
    • Visualização: Dashboard
    • Visualização: GráficosAcesso 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-timeTipos de Gráficos:• Standard (Pontos, Linhas, Cores)• Empilhado (Stacked)• Torta
    • Visualização: Gráficos
    • Visualização: Telas (Screen)Diferentes Blocos:• Gráficos• Mapas• Dados em texto plano• Lista de problemas• Lista dos últimos alertasSlide Show:• Conjunto de telas• Exibidas uma após a outra
    • Visualização: Telas (Screen)
    • Web MonitoringObjetivos:• Acompanhamento da experiência do usuário• Suporte a cenários complexos• Monitoramento de desempenho• Monitoramento de disponibilidadeExemplo:• Passo 1 – Acesso a home page• Passo 2 – Login (POST, GET)• Passo3 – Executar relatório• Passo 4 - Logout
    • Web Monitoring
    • Serviços de TIObjetivos:• Monitoramento de nível de negócio• Monitoramento SLA• Nós nos preocupamos com os serviços• Escalonamento de problemas• Causa raíz do problemaEstrutura de árvore baseada em:• Dependências• Localização Física• Tipo de serviço, etc
    • Serviços de TI
    • Gerenciamento de UsuáriosAutenticação:• Standard: Banco de dados do Zabbix• LDAP (Active Directory)• Apache (Kerberos, Unix, etc)Permissões:• Depende do tipo de usuário• Nível de permissão por gruposE ainda:• Notificações apenas para grupos de usuários
    • Extendendo o ZabbixNovas checagens no agente:• UserParameter=mysql.qps,mysqladmin –uroot status|cut –f9 –d”:”• UserParameter=sum[*],echo “$1+$2”|bcExemplos: mysql.qps = 456, sum[4,5] = 9Novo 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
    • Monitoramento de Grandes AmbientesAmbiente da Zabbix SIA:• Vários milhares de servidores e dispositivos de rede• Distribuídos em 2-100 Data Centers ou Filiais• Monitoramento centralizado é necessário
    • 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
    • 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
    • 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
    • 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
    • Monitoramento DistribuídoAtributos Básicos:• Estrutura em árvore• O nó é um servidor Zabbix• Os nós são plataformas independentesGerencia:• Configuração de replicação em duas vias• Nó pai controla nó filhos
    • Monitoramento Distribuído
    • Tratamento de Perda de ConexãoO que vai parar de trabalhar?• Envio de dados para o nó pai• Sincronização da configuraçãoTodo o resto vai continuar funcionando
    • Milhares de Dispositivos: SoluçõesProblemas 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: Templates, Atualizações em massa• Atualizações: Todos os componentes do Zabbix da maioria das versões são compatíveis com a release 1.8.x
    • 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) • Monitoramento Distribuído • Adicione Proxies• Comece a usar o Zabbix• Adapte o Código Fonte
    • Exemplos PráticosCaso 1 – Problema• Como saber, antes do diretor, que a telefonia deixou de funcionar na residência?
    • Exemplos PráticosCaso 1 – Solução• Monitoramento de rádios via ping• Aviso via email sempre que algum ponto deixar de responder
    • Exemplos PráticosCaso 1 – Visão Gráfica
    • Exemplos PráticosCaso 2 – Problema• O ar-condiciando na sala dos servidores deixou de funcionar corretamente, podendo comprometer a integridade de diversos servidores/serviços.
    • Exemplos PráticosCaso 2 – Solução• Monitoramento de temperatura do servidor ZABBIX• Aviso via email (guarita) se temperatura ultrapassar limite definido
    • Exemplos PráticosCaso 2 – Visão Gráfica
    • Exemplos PráticosCaso 3 – Problema• Possuir informações históricas sobre a disponibilidade da conexão de internet dos clientes
    • Exemplos PráticosCaso 3 – Solução• Monitoramento de servidor(es) de clientes (com menor frequência)• Histórico de disponibilidade (e outras informações para auxiliar o gerenciamento dos servidores)
    • Exemplos PráticosCaso 3 – Visão Gráfica
    • O Futuro
    • Zabbix 2.0Design AtualizadoMelhor usabilidade do Zabbix Front-endRevisão de todas os Forms e Páginas
    • Zabbix 2.0Melhor desempenhoO desempenho é melhorado a cada lançamento do ZabbixCache de memória para quase todos os dados de configuraçãoAPI Zabbix mais eficiente
    • Zabbix 2.0Descoberta de baixo nívelSituação atual:• Descoberta de Hosts apenas• Difículdade de usar templates para hosts que possuem diferentes sistemas de arquivos, interfaces de rede, etc.Zabbix 2.0:• Descoberta automática de dispositivos de rede, sistemas de arquivos processos, etc.• Descoberta de interfaces SNMP e contadores JMX• Um template para hosts com recursos diferentes!
    • Zabbix 2.0Múltiplas interfaces de redeSituação atual:• Um endereço IP por dispositivo monitorado• Não é possível monitorar diferentes recursos em IPs diferentesZabbix 2.0:• Dispositivo monitorado suportará múltiplos Ips• Um IP: monitoramento por SNMP, noutro: Agente Zabbix
    • Zabbix 2.0Monitoramento remoto JMXSituação atual:• Uso do ZapCat ou outras ferramentas de terceirosZabbix 2.0:• Suporte nativo de monitoramento JMX seguro• Descoberta de contadores JMX• Monitoramento de infra-estrutura Java: JBoss, WebLogic, Websphere, Tomcat• Monitoramento de Aplicações Java
    • Zabbix 2.0Coleta automática de dados de inventário de hardwareSituação atual:• Informações de Hardware devem ser atualizada manualmente Zabbix 2:• Dados coletados automaticamente• Processamento manual também
    • Zabbix 2.0Comandos remotosComandos remotos baseados em Telnet e SSHAtualmente scripts já podem ser usados, mas o Zabbix não possui suporte nativoIrão simplificar ações automáticas em dispositivos de redeComandos remotos baseados em IPMI (shutdown remoto, reboots)Para dispositivos que não possuem Agente Zabbix ou Agente SNMP
    • O que veremos em breve
    • Zabbix 2.XArmazenamentos NãoSQLZabbix Suporta: MySQL, PostgreSQL, Oracle, DB2, SQLiteProblema:Máximo de 15.000 valores por segundoNão é possível escalar!O desempenho cai significativamente quando o tamanho de dados históricosaumentam
    • Zabbix 2.XSolução:Uso de amazenamento NãoSQL para dados históricos (Cassandra, Hadoop, HBase,Hypertable, MongoDB, CouchDB, Neo4J). Terabytes de dados.Teoricamente, o desempenho pode ser superior a 100.000 valores por segundoPode ser escalado horizontalmente. Mais servidores – mais performance!API para os dados históricos, você poderá escolher qualquer engine!
    • Zabbix 2.XZabbix na nuvemIntegração com APIs de nuvens:• Amazon EC2• Rackspace Cloud• VMWareMonitoramento• Gestão (adicionar ou remover recursos sob demanda)• Carga de CPU alta  adicionar um servidor novo na nuvem• Falta de armazenamento em disco  adicionar um novo storage em nuvem
    • Zabbix 2.XZabbix para ambientes virtuais:• KVM• XEN• VMWareMonitoramento• Gestão (adicionar ou remover recursos sob demanda)• Carga de CPU alta  adicionar novas VMs
    • Zabbix 2.XAgendador Global de tarefas“Nós já temos tudo para tornar isso possível” - Alexei VladishevTipo de calendário global para todo ambiente monitoradoPode ser usado para:• Agendar backups e outras tarefas periódicas• Iniciar / desligar servidores físicos e virtuais, recursos na nuvem• Execução condicional de comandos, dependendo dos problemas existentes. Exemplo: Desligue os nós do cluster à noite, apenas se a carga da CPU estiver baixa.
    • A Comunidade no Brasil
    • Zabbix-BRFundada em junho de 2008 por André Déo482 usuáriosSite:http://zabbixbrasil.orgTwitter:http://twitter.com/zabbixbrWiki:http://zabbixbrasil.org/wikiLista de discussão:http://br.groups.yahoo.com/group/zabbix-brasil/
    • ReferênciasSite do Zabbix:http://www.zabbix.comLicença Zabbix:http://www.zabbix.com/licence.phpManual do Zabbix:http://www.zabbix.com/documentation.phpLista da Comunidade Brasileira:http://br.groups.yahoo.com/group/zabbix-brasil
    • ReferênciasApresentações:• Alexei Vladishev, Fundador do Zabbix – Open Source Data Center Conference 2009http://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) 2009http://danielbauermann.wordpress.com/2009/10/07/ciartec-2009/• Alexei Vladishev, Fundador do Zabbix – Free Software that helps, FISL 12, 2011.http://www.slideshare.net/zabbixbr/fisl12-2011
    • ContatosE-mail:• andredeo@gmail.comBlog:• http://andredeo.blogspot.comTwitter:• @deoandre