Upload
felipe-queiroz
View
3.116
Download
0
Embed Size (px)
DESCRIPTION
Apresentação no IV Debian Festival - Maceió/AL
Citation preview
Alta Disponibilidade em Ambientes Linux
Alta Disponibilidade em Ambientes Linux
Felipe Buarque de QueirozJorge Fernando Matsudo Iwano
{felipe.buarque, jorge.iwano}@gmail.com
Fundação de Amparo a Pesquisa do Estado de Alagoas - FAPEALUnidade Gestora de Tecnologia da Informação - UGTI
Agosto de 2009
1 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conteúdo I
1 IntroduçãoConceitosDefiniçãoProcessos Organizacionais
2 SPOFs
3 Soluções em HAFontes RedudantesLinks RedundantesMonitoração de NósReplicação de discosSistemas de ArquivosMonitoração de Serviços
4 Estudo de caso - FAPEAL
2 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conceitos
Tipos de disponibilidade
Disponibilidade Básica: encontrada em máquinas comuns,sem nenhum mecanismo especial em software ou hardware.Disponibilidade de 99% a 99, 9%
Alta Disponibilidade: adiciona-se mecanismos de detecção,recuperação e mascaramento de falhas. Disponibilidade de99, 99% a 99, 999%
Disponibilidade Contínua: cada vez mais próximo de 100%de disponibilidade. Tempo de inoperância desprezível. Todasas paradas são mascaradas.
3 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conceitos
Falha, Erro e Defeito
Falha: Ocorre no universo físico, nível mais baixo do hardware
Erro: Representação da falha no universo informacional
Defeito: Informação errônea não percebida e não tratada.Percebido no universo do usuário como travamento,mensagens de erro ou perda de dados
4 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conceitos
Failover e Failback
Failover: Processo no qual um recurso assume os serviços deoutro similar quando este último apresenta falha. Pode serautomático ou manual, sendo o primeiro desejado em umambiente de alta disponibilidade
Failback: Após a manutenção e correção, sendo recuperadodo estado de falha, o recurso é colocado em serviço, e entãose realiza o processo inverso ao de failover. Pode serautomático ou manual, sendo este segundo muitas vezesdesejado de forma a não haver nova interrupção nos serviços
5 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conceitos
Estatísticas
MTBF (Mean Time Between Failure): Tempo total deoperação / Número total de falhas
MTTR (Mean Time To Repair)
Disponibilidade: MTBF / (MTBF + MTTR)
6 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Conceitos
Os “noves”
7 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Definição
O que é Alta Disponibilidade (HA)?
HA
Projeto e desenho de todo o sistema e sua implementaçãocorrespondente, de modo a possuir um grau absoluto decontinuidade operacional durante um período determinado
NÃO é um produto ou aplicação, é uma característica dosistema
8 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Definição
O que é Alta Disponibilidade (HA)?
HA
Projeto e desenho de todo o sistema e sua implementaçãocorrespondente, de modo a possuir um grau absoluto decontinuidade operacional durante um período determinado
NÃO é um produto ou aplicação, é uma característica dosistema
8 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Processos Organizacionais
Processos Organizacionais
Identificar picos de demanda
Estabelecer metas de disponibilidade
Construir ambiente físico apropriado
Criar processos automatizados
Utilizar ambiente de desenvolvimento e testes
Manter estoque de peças sobressalentes
Contratar capacidade por demanda
9 / 32
Alta Disponibilidade em Ambientes Linux
Introdução
Processos Organizacionais
Processos Organizacionais
Definir um processo de escalonamento
Realizar um planejamento para desastres
Treinar a equipe para administração do sistema em HA
Realizar testes periodicamente
Documentar todo e qualquer detalhe
10 / 32
Alta Disponibilidade em Ambientes Linux
SPOFs
Conteúdo I
1 IntroduçãoConceitosDefiniçãoProcessos Organizacionais
2 SPOFs
3 Soluções em HAFontes RedudantesLinks RedundantesMonitoração de NósReplicação de discosSistemas de ArquivosMonitoração de Serviços
4 Estudo de caso - FAPEAL
11 / 32
Alta Disponibilidade em Ambientes Linux
SPOFs
Single Points of Failure - SPOFs
Recurso do sistema em que, caso falhe, provoca aindisponibilidade de todo o sistema
Reduzir os SPOFs exige custos e adiciona um considerávelgrau de complexidade na infra-estrutura
Um bom design de HA elimina pontos simples de falha
12 / 32
Alta Disponibilidade em Ambientes Linux
SPOFs
SPOF - Exemplo
13 / 32
Alta Disponibilidade em Ambientes Linux
SPOFs
Eliminando os SPOFs
Conexão LAN
Interface LAN
Discos do sistema (ROOT disk)
Discos dos dados
Fonte de energia
Interface com os discos
Sistema Operacional
Programas aplicativos
14 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Conteúdo I
1 IntroduçãoConceitosDefiniçãoProcessos Organizacionais
2 SPOFs
3 Soluções em HAFontes RedudantesLinks RedundantesMonitoração de NósReplicação de discosSistemas de ArquivosMonitoração de Serviços
4 Estudo de caso - FAPEAL
15 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Fontes Redudantes
Fontes Redudantes
Possibilidade de substituição “a quente”
Fases de energia distintas
Disponibilidade de gerador
16 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Links Redundantes
Links Redundantes
Links de operadoras distintas
Autonomous Systems
Virtual Router Redundancy Protocol (VRRP)
17 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Links Redundantes
Links Redundantes
18 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Monitoração de Nós
Heartbeat
Núcleo do ambiente de HA
Monitoramento dos servidores em produção
Coordena as ações de failover e failback
19 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Monitoração de Nós
KeepAlived
Adiciona facilidades ao LVS Project
Monitoramento dos servidores do pool LVS
Implementa o VRRP v2 para coordenar ações de failover
20 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Replicação de discos
Redundant Array of Independent Drives - RAID
Subsistema de armazenamento composto de vários discosindividuais
2 objetivos básicos: desempenho e segurança
Implementação via hardware ou software
Técnicas:
RAID 0
RAID 1
RAID 2
RAID 3
RAID 4
RAID 5
RAID 6
RAID 10
RAID 50
RAID 100
21 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Replicação de discos
RAID
Figura: Exemplo de RAID 10
22 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Replicação de discos
Distributed Replicated Block Device - DRBD
Espelhamento de dados, entre servidores, em partições
Conhecido como RAID 1 via rede
23 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Sistemas de Arquivos
Sistemas de Arquivos
Sistema de arquivo consistente
Compatível com o esquema de journaling - EXT3
Opções: ZFS, GFS...
24 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Monitoração de Serviços
Mon
Responsável pelo monitoramento de serviços
Envia alertas ao administrador da rede sobre quedas de serviço
Permite customização de scripts de alertas
25 / 32
Alta Disponibilidade em Ambientes Linux
Soluções em HA
Monitoração de Serviços
HAProxy
Responsável por balancear a carga entre servidores de umcluster
Provê suporte a failover e controle de sessão
Provê relatórios do sistema na web
26 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Conteúdo I
1 IntroduçãoConceitosDefiniçãoProcessos Organizacionais
2 SPOFs
3 Soluções em HAFontes RedudantesLinks RedundantesMonitoração de NósReplicação de discosSistemas de ArquivosMonitoração de Serviços
4 Estudo de caso - FAPEAL
27 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Ambiente
2 servidores HP DL360 virtualizados - XEN
Máquinas virtuais rodando Debian 5.0 64bits
Disponibilidade de links redundantes: RNP / Embratel
Serviços essenciais: página da FAPEAL, webmail, BCCT
28 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Estado atual
Heartbeat + DRBD
29 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Planos futuros
HAProxy + KeepAlived + Heartbeat + DRBD + Mon
30 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Links Interessantes
Linux HA - http://www.linux-ha.org/
LVS Project - http://www.linuxvirtualserver.org/
31 / 32
Alta Disponibilidade em Ambientes Linux
Estudo de caso - FAPEAL
Perguntas?
32 / 32