Alta Disponibilidade (High Availability) em sistemas GNU/Linux

Alta disponibilidade é um tema que tem despertado muito interesse. São artigos, testes, diferentes soluções, empresas oferecendo pacotes e suporte. Vamos então observar mais de perto e descobrir o que há de tão interessante neste tema. Vamos verificar os conceitos envolvidos, suas vantagens e desvantagens, e alguns exemplos práticos.

[ Hits: 89.253 ]

Por: Douglas Vigliazzi em 16/12/2002


Exemplo de uma solução



A solução que utilizei foi a combinação de ext3 + drbd + heartbeat + mon.

Sistema de Arquivos Journaled - Ext3: talvez o Reiserfs seja mais utilizado pois foi um dos primeiros sistemas journaled que apareceram, mas o ext3 oferece a compatibilidade com o ext2, eliminando a necessidade de se recriar o filesystem. Alguns testes mostraram uma leve superioridade do Reiserfs sobre o Ext3, mas tal diferença não chega a ser tão grande para suplantar a facilidade e segurança na mudança.

Espelhamento de dados - Drbd: o DRBD (Distributed Replicated Block Device) espelha os dados em blocos, repassando-os através da rede. Funcionando em pares, ele estabelece em cada nodo uma partição para espelhar, e seta um dos nodos como primário. Toda alteração neste irá ser refletida no secundário. O primário tem a partição montada com drbd montada, enquanto o secundário não.

Sinal de Vida - Heartbeat: onde reside a configuração dos serviços e do 'ip de serviço'. É o hertbeat o responsável pela reconfiguração automatizada na ocorrência de problemas. Cada máquina possui seu ip próprio, válido ou não, mas o conjunto é identificado por um ip de serviço, que é mantido pela máquina primária no par. Ao acontecer uma pane no sistema, o heartbeat de um lado libera os serviços e ips, e do outro assume.

Mon: bastante leve, possui diversos monitores e sistemas de alerta para as mais variadas funções e serviços. Possui envio de mensagens via página, correio, sms, bem como pode ser configurado para disparar programas em quaisquer linguagens. Inclusive o heartbeat :-)

Então, num quadro geral, o Mon ficaria monitorando o sistema. Ao detectar que um serviço não está respondendo, que a máquina está com alguma pane, perceber que está isolado da rede (no nodo primário), ou que o nodo secundário não está respondendo, ele dispararia o heartbeat, para derrubar ou para levantar os serviços. Um destes serviços deve ser o Drbd, que embora sempre espelhando não estaria com a partição montada. Montando estas partições, que contem os dados atualizados para o serviço que se oferece, estes serviços estarão em condições de responder com autoridade para os usuários.

Talvez alguém se pergunte: mas porque vários aplicativos e não um sistema geral? Além de ser muito mais portável e leve, estes aplicativos podem ter várias outras aplicações. Pode ser que se deseje apenas monitorar um servidor. Pode ser que se possua um storage externo compartilhado por duas máquinas e queira-se coordenar o controle de deste.

Oferecemos assim uma visão geral do que está envolvido na Alta Disponibilidade e um exemplo de um ambiente. Para maiores detalhes de como implementar este ambiente, disponibilizei na página http://ha.underlinux.com.br/ um HOWTO com todos os passos para a instalação e configuração de tal ambiente. Espero que seja útil.
Página anterior     Próxima página

Páginas do artigo
   1. Motivação
   2. Exemplificando
   3. O que é Alta Disponibilidade?
   4. Como aumentar a disponibilidade do seu sistema
   5. Gerenciamento de um ambiente de Alta Disponibilidade
   6. Montando um ambiente de HA
   7. Exemplo de uma solução
   8. Créditos
Outros artigos deste autor

Seu maior inimigo é você mesmo!

Segurança Física (Parte 1)

Segurança Física (Parte 2)

Leitura recomendada

Nmap do início ao fim (parte 1)

Atirando o pau no gato com Metasploit

PuTTY - Estabelecendo Chave Secreta com OpenSSH

SSH Connection With non-NIST Russian Cipher and Distro for Military Use

Configurando o IDS - Snort / Honeypot (parte 2)

  
Comentários
[1] Comentário enviado por removido em 09/04/2003 - 11:31h

Desculpe, mas este artigo é pertencente ao site ha.underlinux.com.br, acho que você deveria ter feito uma dica e indicado o site com os devidos créditos de seu autor (Sulamita Garcia), ao invés de transpor todo ele aqui.
Só um comentario :) eu vi que tem os créditos no final, mas td bem... ai ja nao eh comigo...

[2] Comentário enviado por pingofdeath em 05/04/2005 - 20:56h

Boa Tarde, nós somos estudantes técnicos de redes de computadores. Nós temos um projeto de formatura cujo o tema é Servidor Web de Alta Disponibilidade. Nós gostariamos de pedir a sua ajuda com algumas dicas de como podemos fazê-lo. Precisamos de como configurar o Apache, Webmin, Rsync, DNS. A idéia básica do projeto é que tenhamos dois micros rodando os Servidores e se um falhar o outro assume seu lugar. Temos a idéia de que tem que ser o mesmo ip para ambas as máquinas, porém não sabemos fazer (Ip virtual). Agradecemos desde já a sua ajuda.
contatos: robgol_silva@yahoo.com.br ou pedrovinicius.brito@gmail.com

[3] Comentário enviado por gabrielsimas em 28/01/2009 - 11:03h

doug, sendo o artigo se sua autoria ou não, você foi muito feliz em colocá-lo por aqui...este artigo te ajudou em algumas situações??? poste aqui as suas aventuras com relação a ele!

Abraços

[4] Comentário enviado por andrecaleiros em 25/06/2011 - 00:04h

o Site esta fora...

http://ha.underlinux.com.br/

[5] Comentário enviado por sonny em 13/03/2012 - 17:59h

http://ha.underlinux.com.br/ continua fora.....

[6] Comentário enviado por vandocouto em 09/04/2012 - 21:25h

Continua...

[7] Comentário enviado por caca2012 em 31/05/2013 - 20:58h

Qual o link com o HOWTO com todos os passos para a instalação e configuração de tal ambiente?

Obrigada

[8] Comentário enviado por lgouveia em 18/12/2014 - 15:54h

Boa tarde doug, preciso configurar o Nagios e o Zabbix em alta disponibilidade, não sei qual ferramenta usar? me de um norte por favor.

Obrigado,
Leandro


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts