O documento discute soluções para alta disponibilidade em ambientes de TI. Ele explica que alta disponibilidade significa manter serviços disponíveis por longos períodos, diferente de escalabilidade. Também descreve duas soluções possíveis: replicação periódica de dados para recuperação, e o uso do DRBD e Heartbeat para replicação síncrona e failover automático entre dois nós.
2. Alta disponibilidade No ambienteatualtemosumadependência de recursoscomputacionaisparaquasetodas as atividades. Somando-se a isso o alcance global e tráfegovariávelchegamosnumaequaçãoondedisponibilidade (e escalabilidade) sãofatoresfundamentais.
3. Alta disponibilidade Alta disponibilidade != Escalabilidade Apesar de andaremfrequentemente juntas as soluçõesparaaltadisponibilidadepossuemobjetivose estratégiasdiferentes
4. Alta disponibilidade Alta disponibilidade = capacidade de estardisponívelporgrandesperíodos de tempo Escalabilidade = capacidade de oferecerserviços com qualidadeaceitávelmesmo com o crescimento do uso
5. Alta disponibilidade As paralisações do serviço (outages) podem ser divididasemduascategorias: Nãoplanejadas (falhas) São resultado de falhasaleatórias (imprevisíveis) dos sistemasassociadas a componentes de hardware ou software
6. Alta disponibilidade b) Planejadas (manutenções) Associadas a paralizações agendas para a atualização de hardware ou software. Costumamoferecermenorimpactoaonegócio
7. Alta disponibilidade Qual o impacto de umaparalisação? Ex. Um servidordemora 5 minutosparareiniciar (reboot) Se ele é responsávelporatender a 100 requisiçõesporsegundoissosignifica 5 x 60 x 100 = 30.000 requisiçõesnãoatendidas!
8. Alta disponibilidade Atingir 100% de disponibilidadenão é possível e pode ser proibitivamentecaro. O comum é definir um nível de disponibilidadeaceitável
10. Alta disponibilidade Disponibilidade (%) Downtime no ano 99 3.65 dias 99.9 8.76 horas 99.99 52.6 minutos 99.999 5.26 minutos 99.9999 30 segundos
11. Alta disponibilidade Alta disponibilidade é comumenteassociada a sistemastolerantes a falhas. Nesses sistemas a falha de um componentenãoafeta a operaçãopois é compensadaporoutro de maneiratransparente e (normalmente) automática
12. Alta disponibilidade As soluçõesusuaisparaobtersistemastolerantesenvolvemsoluçõesproprietárias de hardware (e software) taiscomo: cpusredundantes subsistemas de memória disco, fornecimento de energia refrigeração
16. Alta disponibilidade No ambiente Linux existe um projeto (Linux HA) que desde 1999 oferece soluções para prover níveis de alta disponibilidade open source. Para atingir a alta disponibilidade teremos que usar vários componentes, de acordo com o nível de disponibilidade desejada.
20. Alta disponibilidade Prós: simples. Funciona em muitos ambientes e requer pouca / nenhuma modificação do ambiente atual Cons: a sincronização é periódica. O que aconteceu entre um intervalo de sincronização e outro é perdido. A configuração é manual (para, por exemplo trocar o IP e reiniciar os serviços)
23. Alta disponibilidade Prós: atua de maneira automática e síncrona Provê um meio síncrono de replicar + migrar os dados serviços de forma automática Cons: alterações na configuração Requer uma configuração mais específica e possui um overhead maior de rede
25. Alta disponibilidade Um servidor (primário) com duas interfaces de rede Um servidor (secondário) com duas interfaces de rede
26. Alta disponibilidade A interface interna é usada para sincronização dos dados com uma faixa interna de Ips A interface externa de cada um possui um IP público. O servidor primário fica com os recursos (serviços) ativos
27. Alta disponibilidade Software necessário: SO Linux Heartbeat (para detectar status e notificar mudanças) DRBD (sincronização física)
28. Alta disponibilidade Etapa 1 : Configuração básica IP A / IPi A 172.16.117.162 / 192.168.0.2 IP B / IPi B 172.16.117.163 / 192.168.0.3 IP C Serviço 172.16.117.160 Apache instalado nos dois (mas desligado)
29. Alta disponibilidade Etapa 2: Criar os devicesdrbd Emcada um dos servidorester o /etc/drbd.confconformeabaixo: resource apache { protocol C; startup { wfc-timeout 0; degr-wfc-timeout 120; } disk { on-io-errordetach; } net { cram-hmac-alg "sha1"; shared-secret “senha"; } syncer { rate 10M; }
30. Alta disponibilidade onnode0 { device /dev/drbd0; disk /dev/sdb; address 192.168.0.2:7788; meta-disk internal; }
31. Alta disponibilidade onnode1 { device /dev/drbd0; disk /dev/sdb; address 192.168.0.3:7788; meta-disk internal; } }
32. Alta disponibilidade Emcada um dos servidores #drbdadm create-md apache O apache é o nome do resource especificado no drbd.conf
33. Alta disponibilidade Eleirásolicitarautorização e inicializará o processo v08 Magic number not found v07 Magic number not found About to create a new drbd meta data block on /dev/sdb. . ==> This might destroy existing data! <== Do you want to proceed? [need to type 'yes' to confirm] yes Creating meta data... initialising activity log NOT initialized bitmap (256 KB) New drbd meta data block sucessfully created.
36. Alta disponibilidade Quandoeleestiverem 100% vocêpodeformatar a partiçãocomofaznormalmente #mkfs.ext3 /dev/drbd0 E usarnormalmente #mkdir /mnt/apache #mount /dev/drbd0 /mnt/apache
37. Alta disponibilidade Vocêdeve agora configurar o heartbeat parafazer o monitoramento e trocaautomática dos recursos No /etc/ha.d/authkeys auth1 1 sha1 senha-do-heartbeat Onde1 é um númeroigual entre ospontos
39. Alta disponibilidade Definição do quefazerquando um nó for up ou down /etc/ha.d/haresources node0IPaddr::172.16.117.160/24 drbddisk::apache br />Filesystem::/dev/drbd0::/mnt/apache::ext3::defaults httpd