|
Para se entender corretamente do que se está falando quando se discute
uma solução de Alta Disponibilidade, deve-se conhecer os conceitos
envolvidos. Não são muitos, porém estes termos são
muitas vezes utilizados de forma errônea em literatura não
especializada. Antes de mais nada, deve-se entender o que é falha,
erro e defeito. Estas palavras, que parecem tão próximas, na
verdade designam a ocorrência de algo anormal em três universos
diferentes de um sistema computacional.
Uma falha acontece no universo físico, ou seja, no nível
mais baixo do hardware. Uma flutuação da fonte de alimentação,
por exemplo, é uma falha. Uma interferência eletromagnética
também. Estes são dois eventos indesejados, que acontecem
no universo físico e afetam o funcionamento de um computador ou de
partes dele.
A ocorrência de uma falha pode acarretar um erro, que é a
representação da falha no universo informacional. Um computador
trabalha com bits, cada um podendo conter 0 ou 1. Uma falha pode fazer com
que um (ou mais de um) bit troque de valor inesperadamente, o que certamente
afetará o funcionamento normal do computador. Uma falha, portanto,
pode gerar um erro em alguma informação.
Já esta informação errônea, se não for
percebida e tratada, poderá gerar o que se conhece por defeito. O sistema
simplesmente trava, mostra uma mensagem de erro, ou ainda perde os dados
do usuário sem maiores avisos. Isto é percebido no universo
do usuário.
Recapitulando, uma falha no universo físico pode causar um erro
no universo informacional, que por sua vez pode causar um defeito percebido
no universo do usuário. A Tolerância a Falhas visa exatamente
acabar com as falhas, ou tratá-las enquanto ainda são erros.
Já a Alta Disponibilidade permite que máquinas travem ou errem,
contanto que exista outra máquina para assumir seu lugar.
Para que uma máquina assuma o lugar de outra, é necessário
que descubra de alguma forma que a outra falhou. Isso é feito através
de testes periódicos, cujo período deve ser configurável,
nos quais a máquina secundária testa não apenas se a
outra está ativa, mas também fornecendo respostas adequadas
a requisições de serviço. Um mecanismo de detecção
equivocado pode causar instabilidade no sistema. Por serem periódicos,
nota-se que existe um intervalo de tempo durante o qual o sistema pode estar
indisponível sem que a outra máquina o perceba.
fonte http://www.dimap.ufrn.br/~aguiar/Livros/Conectiva9Server/ha.html
|