“Ambiente Tolerante a Falhas Utilizando Software Livre” Gerência de Suporte de Software 29/08/2003 Alessandro Luiz Petrocino Elaine Cristina Franchini dos Anjos Ementa da Palestra • Conceito de Ambiente Tolerante a Falhas • H.A. • Heartbeat • • IP Virtual (Floating Address) • Topologia 1 Load Balance e Linux Virtual Server (LVS) • • Espelhamento com DRBD (Block Device Redundancy) • • Topologia 3 Integração do DRBD com o Heartbeat • • Topologia 2 Topologia 4 Dúvidas Motivação -Ligada diretamente a nossa dependência aos computadores -Transtornos cada vez maiores causados pela eventual falha destes sistemas -Nossos clientes desejam um sistema operante a qualquer momento, com qualidade -Qual é a missão crítica ? A EFICIÊNCIA se torna um diferencial O que é “Alta Disponibilidade”? Disponibilidade = probabilidade de um sistema estar disponível (em perfeito funcionamento) Redundância do ambiente sistemático existente (equipamentos de rede, link, serviços, QoS) FUNCIONALIDADE 24x7 • Básica Qualquer sistema que garanta 99% de disponibilidade • Alta Sistemas especializados (acréscimos de 0,99%s – 99,99...%) • Contínua Situação ideal (teórica) – Disponibilidade = 1 (Non-Stop-System) Teoria dos 0,99%s Quanto mais 0,9s , mais qualidade e robustez o sistema garante. Mais 0,9s? Mais ga$to! (Quanto se pode gastar ???) “A Alta Disponibilidade deve estar associada a real necessidade existente da empresa e em seus serviços.” Sistema X Ambiente Sistema Servidores responsáveis pelos serviços existentes, que devem estar sempre disponíveis Ex: Web Servers, DB Servers, Application Servers, Mail Servers, etc Ambiente TODOS os recursos responsáveis pela Alta Disponibilidade !!! Ex: Link, hubs e switches, computadores, placas de rede, roteadores, servidores, etc. Vantagens da HA Manutenção programada Atualização de Software e Hardware (sempre tem uma redundância ao mexer em um sistema) Satisfação do cliente (ele sempre consegue acesso aos serviços) Não afeta o usuário final, pois o serviço se mantém no ar, com QUALIDADE Solução adotada Linux+Heartbeat+LVS+DRBD+Mon Software Livre •Baixo cu$to •Documentação ampla existente na Web •Conhecimento já existente •Filesystem dinâmico (ReiserFS ou EXT3) Heartbeat Protocolo para monitoramento (UDP/694) Mensagens enviadas em intervalos regulares Se não recebida, o protocolo assume que a máquina falhou, tomando uma ação específica Master Slave Inicia e encerra serviços (http, mail, NFS, etc) IP Address Takeover (IPAT) (reconfigura a interface de rede) alias Topologia 1 – Heartbeat 192.168.0.10 Public Network 192.168.0.11 Cluster System System A A WebServer Database 192.168.0.12 Ethernet Heartbeat connection Serial Heartbeat connection SCSI BUS Disk 1 Cluster System System B B Linux Virtual Server - LVS É um Linux Director Box Layer 4 Switching (camada de transporte) Redirecionamentos por NAT e Directing Routing Permite escalabilidade Como funciona? – LVS •Redireciona os serviços dos clientes para os real-servers por reescrita de pacotes (NAT) ou por direct routing. •Algoritmo de decisão (WLC, Round Robin) •Vários serviços implementados (schedulers) (http, https, ftp, pop, imap, ldap) •Possibilidade de agregar novos serviços (none) (imaps, pops, etc) Topologia 2 – LVS LVS + Heartbeat LVS + Heartbeat DRBD Distributed Replicated Block Device Espelha os dados diretamente em blocos (raw device), através da rede Funciona com um filesystem montado e o outro, desmontado. Topologia 3 – DRBD System A /export/database System B Ethernet Heartbeat connection DRBD Dedicated Channel Unmounted fylesystem Monitoramento – MON Monitora vários serviços ao mesmo tempo Consome poucos recursos Notificação inteligente (mail, SMS, bip) Atitudes pré-definidas ou com intervenção do Administrador Mon - Exemplo Referências High-Availability Linux Project http://www.linux-ha.org H.A. Brasil http://ha.underlinux.com.br Linux Virtual Server Project http://www.linuxvirtualserver.org Ultra Monkey H.A. http://www.ultramonkey.org DRBD Project http://www.complang.tuwien.ac.at/reisner/drbd/ Dúvidas Contato Suporte Unix – CCUEC [email protected]