Armazenamento de Alta Disponibilidade (II)


Storage Area Network


Uma Storage Area Network (SAN) é uma sub-rede de alto desempenho dedicada que oferece acesso a armazenamento de dados consolidado ao nível de bloco, e é usada principalmente para a transferência de dados entre sistemas de computadores e elementos de armazenamento e entre os próprios elementos de armazenamento, fazendo com que dispositivos de armazenamento, como conjuntos de discos, bibliotecas de fitas, e torres de armazenamento óptico estejam acessíveis aos servidores de modo a que os dispositivos apareçam como dispositivos locais ligados ao sistema operativo.

Storage Area Network

Uma SAN normalmente tem a sua própria infra-estrutura de comunicação, que geralmente não é acessível por outros dispositivos através da rede de área local. A SAN move dados entre vários dispositivos de armazenamento, permitindo a partilha de dados entre servidores diferentes, e fornece um meio de ligação rápido para backup, restauro, arquivo e recuperação de dados. Os dispositivos da SAN são normalmente instalados numa sala individual, mas também podem ser ligados a longas distâncias, tornando-os muito úteis para grandes empresas.

Benefícios das SAN


Os principais benefícios de uma SAN são:
  • Alta Disponibilidade: Uma cópia de quaisquer dados está sempre acessível a todos e quaisquer clientes via múltiplos caminhos;
  • Fiabilidade: O transporte de dados fiável assegura uma baixa taxa de erro e capacidades de tolerância a falhas;
  • Escalabilidade: Servidores e dispositivos de armazenamento podem ser adicionados de forma independente uns dos outros e de quaisquer sistemas proprietários;
  • Desempenho: Fibre Channel (o método padrão para a interligação nas SAN) tem agora mais de 2000MB/seg de largura de banda e separa as E/S de armazenamento e de rede.

Armazenamento de Alta Disponibilidade (I)


Conceitos sobre RAID


A sigla RAID significa Redundant Array of Inexpensive Disks e é uma tecnologia que fornece funções de armazenamento e fiabilidade através de redundância. Foi desenvolvida utilizando um grande número de discos rígidos de baixo custo unidos para formar um único dispositivo de armazenamento de grande capacidade que oferecia um desempenho, capacidade de armazenamento e fiabilidade superiores em relação aos sistemas mais antigos de armazenamento. Isto foi conseguido através da combinação de múltiplas unidades físicas numa única unidade lógica onde os dados foram distribuídos entre as unidades, numa de várias formas conhecidas como níveis de RAID.

Este conceito de virtualização de armazenamento foi inicialmente definido como Redundant Array of Inexpensive Disks (conjunto redundante de discos baratos) mas o termo mais tarde evoluiu para Redundant Array of Independent Disks como forma de dissociar a tecnologia RAID das expectativas de baixo custo.
Há duas principais razões pelas quais o RAID foi desenvolvido:

  • Redundância: Este é o factor mais importante no desenvolvimento de RAID para ambientes de servidor. Um sistema RAID típico vai garantir algum nível de tolerância a falhas, fornecendo recuperação de dados em tempo real com acesso ininterrupto no caso de ocorrer uma falha de disco; 

  • Aumento de desempenho: O aumento de desempenho só ocorre nalgumas versões específicas de RAID e será sempre dependente do número de unidades utilizadas e do controlador;

RAID baseado em software


Muitos sistemas operativos oferecem funcionalidades para a implementação de sistemas de RAID baseado em software onde o OS gera os algoritmos de RAID usando a CPU do servidor. Na verdade, a carga de processamento do RAID é suportada pela unidade de processamento central, em vez de ser pelo controlador RAID em si, o que pode limitar severamente o desempenho do RAID. Embora de implementação barata, estes sistemas não garantem qualquer tipo de tolerância a falhas; se um servidor falhar todo o sistema RAID é perdido.

RAID baseado em hardware


Ao usar controladores RAID de hardware, todos os algoritmos são gerados na placa controladora RAID, libertando assim a CPU do servidor. Num sistema desktop, um controlador RAID de hardware pode ser uma placa de expansão PCI ou PCIe placa ou um componente integrado na motherboard. Estes são mais robustos e tolerantes a falhas que o software RAID, mas requerem um controlador RAID dedicado a essa tarefa. Implementações de hardware fornecem um desempenho garantido, não acrescentam sobrecarga computacional para o computador e podem suportar muitos sistemas operativos; o controlador apresenta o conjunto RAID como apenas mais uma unidade lógica.

Unidade “Hot Spare”


Tanto os RAIDs de hardware como os de software podem suportar a utilização das chamadas drives “hot spare”, ou seja, uma unidade fisicamente instalada no conjunto mas que fica inactiva até que uma unidade activa falhe. O sistema automaticamente substitui a unidade que falhou com a de reserva, reconstruindo o conjunto com a unidade de reserva incluída. Isso reduz o tempo médio de recuperação (MTTR), mas não o elimina completamente porque uma falha adicional subsequente no mesmo grupo de redundância RAID antes deste ser totalmente reconstruído, pode resultar em perda de dados. A reconstrução pode levar várias horas, especialmente em sistemas muito carregados.

Failover Clustering (IV)

 

Configurações dos Nós do Cluster


O tamanho mais vulgar para um cluster de alta disponibilidade é um cluster de dois nós, já que esse é o mínimo necessário para garantir redundância, mas muitos clusters consistem de muitos mais, às vezes dezenas de nós e essas configurações podem ser categorizados num dos seguintes modelos:

Cluster Activo/Passivo


Numa configuração Activo/Passivo (ou assimétrica), as aplicações são executadas num servidor primário, ou mestre. Um servidor redundante dedicado está presente para o substituir em caso de falha mas, para além disso, não está configurado para desempenhar qualquer outra função. Assim, a qualquer momento, um dos nós é activo e o outro é passivo. Esta configuração fornece uma instância totalmente redundante de cada nó, que só é colocada online quando o seu nó primário associado falhar.

O cluster activo/passivo geralmente contém dois nós idênticos. As instâncias das aplicações de base de dados são instaladas em ambos os nós, mas a base de dados está localizada no armazenamento partilhado. Durante a operação normal, a instância da aplicação de base de dados é executada somente no nó activo. No caso de uma falha do sistema activo principal, o software de clustering vai transferir o controlo do subsistema de disco para o sistema secundário. Como parte do processo de failover, a instância da aplicação de base de dados no nó secundário é iniciada, retomando assim o serviço.
 
Cluster Activo/Passivo
 
Esta configuração é mais simples e mais fiável, mas normalmente exige mais hardware extra.