Alta Disponibilidade na Prática
  utilizando servidores Linux



   - Tito Lívio Castro
   - Edison Pignaton de Freitas
  ...
Roteiro

   Introdução
   Tolerância a falhas
   Metodologia de projeto de sistemas
    tolerantes a falhas
   Estudo ...
Introdução

   Disponibilidade de um sistema computacional
    é a probabilidade de que este sistema esteja
    funcionan...
Introdução

   Alta Disponibilidade é uma sub-área da
    Tolerância a Falhas que visa manter a
    disponibilidade dos s...
Conceitos básicos
   Falha
    –   Origem do problema
    –   Ex. :um bloco de código inconsistente
   Erro
    –   Cons...
Conceitos básicos
   Failover
    –   Uma máquina assume os serviços de outra, quando esta
        última falha
    –   A...
Tolerância a Falhas

   Como conseguir ???
    – Redundância
    – Monitoração
    – Reação imediata
Metodologia de Projeto
   Definição de objetivos
     – Custo, desempenho, confiabilidade
   Limitação de escopo
     – ...
Estudo de Caso


   Servidor de Arquivos e Autenticação
   600 estações de trabalho
   Ambiente heterogêneo
   Necessi...
Estudo de Caso


   Requisitos
    –   Custo: baixo
    –   Desempenho: tempo de acesso aos arquivos no
        servidor ...
Estudo de Caso


   Escopo
    –   Falhas consideradas
            Degradação de hardware
            Falhas de softwar...
Estudo de Caso

   Níveis de Tratamento
    –   Falhas consideradas em nível de componentes
        individuais (LDAP, sa...
Estudo de Caso

   Recuperação e reparos
    –   Replicação da base de usuários
    –   Recovery da base de usuários
    ...
Estudo de Caso

   Solução para Replicação - RAID Nível 1
    –   Escrita nos discos “D” de dados é replicada nos
       ...
Hardcore

   2 servidores com SO Suse
    9.2 (+ 1 p/desenvolvimento)
   2 placas de rede
     – Ligação direta entre os...
Hardcore

SERVIÇOS
   Samba (versão 3.0.9-2.1)
   OpenLDAP (versão 2.2.15-5.1)
   Apache (versão 2.0.50-7.3)


ALTA DIS...
DRBD

   Replicação de disco através da rede
   Driver de bloco para o kernel que cria um dispositivo
    de bloco virtu...
HeartBeat

   Monitoração dos nodos do cluster
   Coordena as ações de failover e failback
   Solução de reativação aut...
Mon

   Monitoração Periódica dos Serviços (rápida e ágil)
   Pode enviar alertas por e-mail, pagers, celulares e
    lo...
Ambiente de Teste

   SITUAÇÃO INICIAL   APÓS O CRASH DO
                         PRIMÁRIO
DEMONSTRAÇÃO


• Configuração dos serviços

• Teste da alta disponibilidade
Demonstração
Upcoming SlideShare
Loading in...5
×

Alta Disponibilidade na Prática utilizando servidores Linuxes Linux

2,351

Published on

Published in: Technology, News & Politics
1 Comment
1 Like
Statistics
Notes
No Downloads
Views
Total Views
2,351
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
135
Comments
1
Likes
1
Embeds 0
No embeds

No notes for slide

Alta Disponibilidade na Prática utilizando servidores Linuxes Linux

  1. 1. Alta Disponibilidade na Prática utilizando servidores Linux - Tito Lívio Castro - Edison Pignaton de Freitas - Jorgito Matiuzzi Stochero 6º Fórum Internacional de Software Livre
  2. 2. Roteiro  Introdução  Tolerância a falhas  Metodologia de projeto de sistemas tolerantes a falhas  Estudo de Caso  Implementação  Demonstração
  3. 3. Introdução  Disponibilidade de um sistema computacional é a probabilidade de que este sistema esteja funcionando e pronto para uso  Classes – Disponibilidade Básica (99% a 99,9%) – Alta Disponibilidade (99,99% a 99,999%) – Disponibilidade Contínua (99,999...%)
  4. 4. Introdução  Alta Disponibilidade é uma sub-área da Tolerância a Falhas que visa manter a disponibilidade dos serviços prestados por um sistema computacional – redundância de hardware – reconfiguração de software – Vários computadores juntos agindo como um só, cada um monitorando os outros e assumindo seus serviços caso perceba que algum deles falhou
  5. 5. Conceitos básicos  Falha – Origem do problema – Ex. :um bloco de código inconsistente  Erro – Consequência da falha, gerando comportamento não desejado do sistema – Ex. : buffer overflow  Defeito – Resultado aparente do comportamento indevido – Ex. Crash devido ao buffer overflow
  6. 6. Conceitos básicos  Failover – Uma máquina assume os serviços de outra, quando esta última falha – Automático ou manual (pode ou não ser transparente)  Failback – Processo inverso do failover, executado quando o servidor que apresentou falha é recolocado em sv
  7. 7. Tolerância a Falhas  Como conseguir ??? – Redundância – Monitoração – Reação imediata
  8. 8. Metodologia de Projeto  Definição de objetivos – Custo, desempenho, confiabilidade  Limitação de escopo – Tipo de falhas consideradas, que partes do sistema serão tolerantes a falhas  Definição de níveis de tratamento  Definição da reconfiguração e reparos  Projeto dos mecanismos de tratamento  Identificação do hard core  Avaliação do resultado
  9. 9. Estudo de Caso  Servidor de Arquivos e Autenticação  600 estações de trabalho  Ambiente heterogêneo  Necessidade de alta disponibilidade
  10. 10. Estudo de Caso  Requisitos – Custo: baixo – Desempenho: tempo de acesso aos arquivos no servidor próximo ao tempo de acesso de arquivos locais – Confiabilidade: o sistema não deve sair do ar em horários de expediente normal (acima de 99%)
  11. 11. Estudo de Caso  Escopo – Falhas consideradas  Degradação de hardware  Falhas de software – Partes tolerantes  Acesso, edição e armazenamento de arquivos  Sistema de autenticação
  12. 12. Estudo de Caso  Níveis de Tratamento – Falhas consideradas em nível de componentes individuais (LDAP, samba, hw, etc) – Erros serão considerados do tipo paradas imprevistas (crash) – Defeitos: não acesso aos dados e impossibilidade de autenticação  Mecanismos de Tratamento – Detecção de erros durante a operação do sistema – Recuperação através do mascaramento do defeito para o usuário
  13. 13. Estudo de Caso  Recuperação e reparos – Replicação da base de usuários – Recovery da base de usuários – Replicação dos dados – Acesso aos dados replicados  Projeto dos mecanismos de tratamento – Detecção: técnica de heartbeat (heartbeat) – Tratamento: mascaramento (heartbeat/drbd/slurp)
  14. 14. Estudo de Caso  Solução para Replicação - RAID Nível 1 – Escrita nos discos “D” de dados é replicada nos discos “D´” -> Esquema de Espelhamento D D´ Variantes: a a´ - Hw: componentes prontos unidos por barramentos b b´ (somente um nível possível de falha) - Sw: controle por sincronização (baixo custo e maior flexibilidade)
  15. 15. Hardcore  2 servidores com SO Suse 9.2 (+ 1 p/desenvolvimento)  2 placas de rede – Ligação direta entre os dois – Acesso dos clientes em diferentes switches  Samba e OpenLDAP  Heartbeat + DRBD + Mon
  16. 16. Hardcore SERVIÇOS  Samba (versão 3.0.9-2.1)  OpenLDAP (versão 2.2.15-5.1)  Apache (versão 2.0.50-7.3) ALTA DISPONIBILIDADE  DRBD -Duplicated Redundant Block Device – (versão 0.7.10 - http://oss.linbit.com/drbd)  Heartbeat (versão 1.2.3-3.1)  Mon (versão 0.99.2-354)
  17. 17. DRBD  Replicação de disco através da rede  Driver de bloco para o kernel que cria um dispositivo de bloco virtual (disco real local + conexão de rede)
  18. 18. HeartBeat  Monitoração dos nodos do cluster  Coordena as ações de failover e failback  Solução de reativação automática de serviços são baseadas neste pacote
  19. 19. Mon  Monitoração Periódica dos Serviços (rápida e ágil)  Pode enviar alertas por e-mail, pagers, celulares e logs.  Conceitos principais – Máquinas (hostgroup) + Serviços + Monitores + Alertas
  20. 20. Ambiente de Teste SITUAÇÃO INICIAL APÓS O CRASH DO PRIMÁRIO
  21. 21. DEMONSTRAÇÃO • Configuração dos serviços • Teste da alta disponibilidade
  22. 22. Demonstração
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×