Sistema de alta disponibilidade (em inglês HA ou High-Availability) é uma solução resistente a falhas. Principalmente aplicado a equipamentos de informática e datacenters, esses sistemas são soluções que possuem redundância contra falhas de hardware, software, energia, localização e operação.
Como garantir a disponibilidade de serviços por tempo integral (24×7) através de sistemas de informação é cada vez mais necessário em operações empresariais, toda solução sujeita a falhas pode causar verdadeiras catástrofes na continuidade de negócios.
Servidores e storages de alta disponibilidade
Servidores e sistemas de armazenamento de dados (storages) de grandes empresas como bancos, hospitais e órgãos públicos não podem parar, perder informações ou ter interrupções em seus serviços.
Para garantir a ausência total de interrupções desses e de outros serviços geralmente é necessário alocar hardware, software e outros recursos de forma sobressalente (redundante), e mantê-los prontos para entrar em funcionamento de forma automática quando algum desses componentes falhar.
Dentre as principais causas de falhas estão os componentes mecânicos que integram essas soluções, como hard disks e/ou placas lógicas de sistemas computacionais e unidades de armazenamento. Como qualquer hardware está sujeito a falhas, seja por fim da vida útil ou por falha de funcionamento, manter ambientes de missão crítica sem nenhum tipo de redundância é muito arriscado.
Assim, quanto maior for a redundância da solução, menor será a probabilidade de interrupções nos serviços prestados e, consequentemente, maior a satisfação dos usuários envolvidos. Até pouco tempo atrás, tais sistemas exigiam investimentos impensáveis para a maioria das empresas, porém com a constante evolução da tecnologia e redução de custos, surgiram uma série de soluções alternativas, melhorando assim o nível de prestação de serviços como um todo.
O surgimento dos clusters
Clusters são sistemas computacionais construídos através da agregação de módulos de hardware semelhante, que são altamente escaláveis e de custo acessível. Esse conceito está diretamente relacionado aos sistemas de alta disponibilidade que permite agregar vários computadores, servidores ou storages como se fossem uma única máquina de grande porte.
Como se pode observar na imagem, não existe um único ponto nesta arquitetura que, ao falhar, implique em indisponibilidade de outro ponto qualquer. A abreviação SPOF ou Single Point Of Failure é a busca incessante da vulnerabilidade de um sistema computacional através de testes para localizar e corrigir possíveis pontos de falha.
Geralmente, quanto maior a disponibilidade, maior é a redundância e o custo das soluções: A alta disponibilidade pode ser implementada em níveis, dependendo do tipo de serviço que se pretende disponibilizar.
Por exemplo, soluções HA funcionando em grandes bancos ou UTIs de hospitais possuem níveis diferentes de disponibilidade quando comparados, por exemplo, a empresas de call-center. O nível de tolerância a falhas depende da atividade que se pretende exercer e dos custos envolvidos, pois as consequências também serão diferentes caso o sistema sofra falhas.
No entanto, empresas que trabalham em horário comercial e não possuem ambientes de missão crítica podem eventualmente considerar que 90% de disponibilidade são suficientes. É importante salientar que soluções antes integravam apenas ambientes de maior disponibilidade como arranjos de discos tolerantes a falha (RAID) ou equipamentos com controladoras redundantes estão cada vez mais acessíveis para a maioria da empresas.
Atualmente temos empresas como a Synology, que tem disponibilizado soluções de armazenamento como storages NAS com recursos de replicação em tempo real e controle de funcionamento (conexão heartbeat), proporcionando alta disponibilidade de armazenamento a custos que qualquer empresa pode pagar.
Tolerância a falhas
A tolerância a falhas consiste, basicamente, em ter hardware e software redundante(s) que entra(m) em funcionamento automaticamente após qualquer detecção de falha no sistema principal. Sistemas tolerantes a falhas não permitem que serviços sejam interrompidos, porém custam significativamente mais caro que os de alta disponibilidade.
Independentemente da solução adotada, é possível mensurar o grau de disponibilidade de um sistema resistente a falhas através do MTBF – Mean Time Between Failures (tempo médio entre falhas) e do MTTR – Mean Time To Repair (tempo médio de recuperação), que é o tempo médio calculado entre o início do evento (ocorrência da falha) e a recuperação total do sistema. Assim, o nível de disponibilidade de um sistema pode ser calculado pela fórmula:
Disponibilidade = MTBF / (MTBF + MTTR)
Alta disponibilidade
A alta disponibilidade (HA) é a característica mensurável que garante que um sistema mantenha um nível de desempenho operacional elevado, normalmente baseando-se no tempo de atividade, que é usualmente superior ao oferecido por outras soluções.
Com o nível de concorrência aumentando ano após ano, empresas de diversas áreas tem desenvolvido produtos cada vez mais robustos, bem como melhorado sensivelmente os níveis de SLA (service level agreement), otimizando assim a entrega de soluções e serviços em diversas áreas de negócios.
Mesmo em pequenas e médias empresas já é possível encontrar sistemas de armazenamento robustos funcionando, mantendo suas operações sempre online e com sistemas de contingência bem definidos, como planos de backup corporativos sempre atualizados.
Como a percepção de disponibilidade refere-se à capacidade dos usuários de obter serviços ou bens como acessar um sistema para enviar, atualizar, visualizar ou alterar algum tipo de informação, caso algum usuário não consiga acessar o sistema, o mesmo estará, do ponto de vista do usuário, indisponível. O termo “downtime” é tempo de inatividade de um sistema e é usado para se referir a períodos em que o mesmo não está disponível.