Zabbix Network Monitoring ZABBIX Network Monitoring Por Alessandro Silva Alessandro Silva Zabbix Network Monitoring Sobre o palestrante ● Bacharel em Informática e Especialista em TI Aplicada a Educação pelo NCE/UFRJ. ● Pós-graduando em Gerência de Segurança da Informação – NCE/UFRJ ● Mais de 10 anos na indústria de TI e 7 somente com Linux. ● Certificações: LPIC-3, Red Hat Certified System Administrator, Novell CLA e DCTS, Zabbix Certified Specialist e Zabbix for Large Enviroments. ● Desde 2011 trabalhando com projetos de monitoração com Zabbix. ● Principais interesses: – – – – Linux e Certificações Zabbix Moodle Drupal Alessandro Silva Zabbix Network Monitoring Zabbix - É um história típica ... ● Uma ideia de uma solução melhor para monitoração ● Foi lançado como um software livre sob a GPL v2 ● A empresa foi criada para fins comerciais ● Foco na prestação de serviços ● É história bastante típica: Alessandro Silva Zabbix Network Monitoring Por que Monitorar? ● Zabbix pode salvar sua vida ($$$$$$$) - Downtimes custam caro! ● Identificar e corrigir problemas prematuramente. - O cliente não pode descobrir o problema primeiro ● Mensurar e analisar a disponibilidade e o desempenho. - Trabalho mais produtivo dos SysAdmins. - Reduz os custos com automatização. - Administração manual custa caro. ● Planejar upgrades de hardware e reestruturar o ambiente com antecedência. Alessandro Silva Zabbix Network Monitoring Tudo numa única solução ● Possíveis Modelos - Versões enterprise e community - Tudo incluído ● ● Sistema de monitoramento Enterprise Open Source. Sem add-ons proprietários e sem edições profissionais ou demo. Alessandro Silva Zabbix Network Monitoring O que é o Zabbix? Zabbix é um software livre e de código aberto para monitoração distribuída, capaz de monitorar disponibilidade e performance de servidores, ativos de rede e aplicações. Funcionalidades do Zabbix: ● Monitoração por agentes ● Auto busca ● Escalonamentos e repetição de notificações ● Monitoramento pró-ativo ● Ações remotas ● Monitoramento via web ● Gráficos, mapas, telas ● SLA, Reports ● Monitoração distribuída, IPV6, etc. Alessandro Silva Zabbix Network Monitoring Fatores Críticos de sucesso ● Não compará-lo a outro sistema de monitoramento. – Criação de um sistema do zero! ● Ouvidos a usuários e comunidade ● Desenvolvimento de uma solução de monitoramento confiável ● Manter as coisas simples ● Evolução, não revolução! Não há grandes saltos. ● ● Seja eficiente: usar poucos recursos do sistema quanto possível (Memória / CPU) Dependência mínima de terceiros Alessandro Silva Zabbix Network Monitoring Zabbix – Componentes principais ● Servidor: - Zabbix Server, a lógica do sistema - Processamento de dados, escalations … ● Web front-end: - O acesso aos dados históricos - Configuração ● Agente: - Servidor de coleta de dados, ações ● Proxy: - Coleta de dados remota Alessandro Silva Zabbix Network Monitoring Detalhes Técnicos ● Utilização de interface web para visualização e configuração. ● Core escrito em C e front-end em PHP. ● Suporte multiplataforma (Linux, *BSD, Solaris, AIX, HP-UX,Windows,...) ● Suporte a diferentes SGBDs: MySQL, PostgreSQL, Oracle, SQLite... ● Não é baseado em nenhuma ferramenta como Nagios, RRD, Cacti, ● Funciona em ambientes embarcados. ● Princípios chave do desenvolvimento do Zabbix – – – Manter tudo simples e flexível Manter os pré-requisitos de hardware acessíveis Política de zero bug. Alessandro Silva Zabbix Network Monitoring Funcionamento Dispositivos monitorados Notificação raç Monito Controle Centralizado ão SN MP Dispositivos de rede Monitoração com agente Monit oraçã o com p ing e porta Configuração Status Checagens Servidores com Agente Zabbix Servidores sem Agente Zabbix Alessandro Silva Zabbix Network Monitoring Como monitorar ? SNMP v1, v2, v3 Checagem de serviços: ● FTP, SSH, HTTP, SMTP, DNS … Agente Zabbix: ● ● ● ● Verificações Аtiva e passiva Monitoramento de logs, logs de eventos Fácil de estender Execução de comando remoto ● Dispositivos de rede ● NET-SNMP para servidores ● SNMP traps Monitoramento de aplicações ● IPMI ● ● Extremamente eficiente! Oracle, Weblogic, JBOSS, Websphere, PgSQL, TomCat. ● Monitoramento de Hardware Gerenciamento remoto (reboot, reset, halt) Outros: WMI, JMX, Nagios plugins Alessandro Silva Zabbix Network Monitoring Monitoração com Agente ● Checagem ativa - Altamente eficiente - Buffer de coleta de dados ● Checagem passiva - Requer pollers - O servidor conecta no agente - Requer performance adicional - Limitações de rede Alessandro Silva Zabbix Network Monitoring Plataformas suportadas Alessandro Silva Zabbix Network Monitoring Alta Disponibilidade Alessandro Silva Zabbix Network Monitoring Monitoramento JMX ● Utilização ZapCat ● Versão 2.0 - Suporte nativo JMX seguro - Monitoramento de infraestrutura: ● ● ● ● JBOSS Weblogic Websphere TomCat ' - Monitoramento de aplicações Java Alessandro Silva Zabbix Network Monitoring Zabbix para ambientes virtuais ● ● Ambientes virtuais – KVM – VMware – Xen Monitoramento – ● Gerenciamento – ● VMBix Adicionar ou remover recursos sob demanda Alto load – Adicione novas VM's Alessandro Silva Zabbix Network Monitoring Monitoramento de Banco de Dados Alessandro Silva Zabbix Network Monitoring Zabbix e Cloud ● Amazon EC2 ● Rackspace Cloud ● VMWare ● Virtuozo ● Gerenciamento: Adição de recursos sob demanda – – Alta carga de CPU - Adicionar um Cloud server Falta de espaço em disco - Adicionar um novo cloud storage. Alessandro Silva Zabbix Network Monitoring Zabbix Mobile Mobbix - Android Zax - Android Mozaby - iPhone MoZBX – Android/iPhone/Windows Mobile Alessandro Silva Zabbix Network Monitoring Zabbix Mobile - Mobbix Alessandro Silva Zabbix Network Monitoring Zabbix Proxy Proxy é um coletor de dados! Vantagens: ● ● ● ● Facilidade na administração da infraestrutura Gerenciado no front-end do Zabbix Configuração é armazenada no Zabbix Server Serve para distribuir a carga do Zabbix Server - Zabbix Server não consegue trabalhar com balanceamento de carga. Alessandro Silva Zabbix Network Monitoring Zabbix Proxy: Como funciona? ● ● ● ● ● Pode ser passivo ou ativo É capaz de coletar milhares de valores por segundo (VPS) Mantém a monitoração em caso de perda de conexão com Zabbix Server Dados são armazenados no banco de dados do proxy (buffer) Envia os dados para o Zabbix Server ao recuperar a conexão. ● Não requer muitos recursos ● Não envia alertas! Proposta: Raspberry pi Alessandro Silva Zabbix Network Monitoring Monitoramento Distribuído ● Estrutura de árvore ● Cada nó é um Zabbix Server ● Cada nó é independente ● Administração descentralizada ● Podemos combinar proxies e nodes. Alessandro Silva Zabbix Network Monitoring Performance Tuning Hardware: CPU Quad Core, 8GB, RAID10 BBWC Custo: R$ 6.500,00 ● ● Zabbix pode entregar 1 milhão de valores por minuto ou cerca de 15.000 valores por segundo. Mesmo assim, poderíamos ter baixa performance. Alessandro Silva Zabbix Network Monitoring Sintomas de baixa performance ● Zabbix com fila sem entregar os alarmes em tempo. – ● ● ● Administration->Queue Frequente lentidão para gerar gráficos e dados em branco. Falso positivos de eventos que já não existem ou chegaram atrasados. Tempo de resposta do front-end (lentidão) Alessandro Silva Zabbix Network Monitoring Performace: Problemas na implantação ● Uso de templates padrão - Faça seu próprios templates ● Banco sem otimização - Converse com seu DBA para tunar seu BD ● Configuração não otimizada - Tuning nas configurações do Zabbix ● Housekeeper ● Uso de versões antigas ● Não otimização do Apache e PHP Alessandro Silva Zabbix Network Monitoring Eu tentei de tudo e minha performance continua deixando a desejar ... Execute todos os componentes em hardware separados! Zabbix Server 8 GB Memória CPU 8 núcleos Zabbix Database 16 GB Memória CPU 8 núcleos Storage ou RAID 10 Alessandro Silva Zabbix Front-end 4 GB Memória CPU 2 núcleos Zabbix Network Monitoring Mas, se aplica somente a TI ? Alessandro Silva Tem café ? Portão de garagem Monitoração – Temperatura e umidade Transbordamento – Nível de água Cluster – Bomba D'água Vazamento de água Zabbix Network Monitoring Por que escolher o Zabbix ? ● Uma solução completa para monitoração da infraestrutura. ● É Open Source e licenciado pela (GPLv2). Não há versões comerciais. ● Todos os dados históricos, tendências e configurações são armazenadas em um banco de dados. ● Pronto para o monitoramento de pequenos e grandes ambientes distribuídos. ● Baixo custo de implantação, uma vez que não há custo de aquisição. ● Extremamente flexível! Você poderá adaptá-lo as suas necessidades. ● Tem suporte da Zabbix SIA e o desenvolvimento é constante. Alessandro Silva Zabbix Network Monitoring Software Proprietário? Pense duas vezes! ● Ele vem com certas limitações – Você pode fazer apenas o que o fabricante impõe. ● O código fonte não está disponível ● Limitações de contrato: – Número máximo de ativos monitorados – Licença cobrada por agente ● Somente uso não comercial ● Restrições técnicas: Números de CPUs, tamanho de dados, etc. ● Seja cuidadoso: Sua liberdade pode estar restrita a quanto você pode pagar! Alessandro Silva Zabbix Network Monitoring Como ganhar dinheiro com Zabbix ? ● Suporte Comercial ● Treinamento ● 0% com a venda de licenças ● Desenvolvimento patrocinado ● Implementações ● Consultoria e Serviços Alessandro Silva Zabbix Network Monitoring Novidades ● Treinamento Zabbix Essentials – EAD – – ● AgendaLivre.org – [email protected] Linux Solutions Zabbix Meeting Brasil – 1º Evento de Zabbix na América do Sul 2013 – Rio de Janeiro Alessandro Silva Zabbix Network Monitoring Referências ● Dois livros estão disponíveis: Inglês e Japonês. ● Documentação farta e de alta qualidade. ● http://blog.zabbix.com/ ● http://www.zabbix.com/documentation/ Alessandro Silva Zabbix Network Monitoring Obrigado! Alessandro Silva E-mail: [email protected] Facebook: http://alessandrosilva.info/facebook Twitter: http://alessandrosilva.info/twitter Linkedin: http://alessandrosilva.info/linkedin Alessandro Silva