Virtualização (I)


A virtualização é uma área de crescimento exponencial na computação e nas TI, criando "virtualmente" um número ilimitado de possibilidades para os administradores de sistemas. A virtualização já existe há muitos anos, de uma forma ou outra, o problema é ser capaz de compreender os diferentes tipos de virtualização, o que eles oferecem, e como podem ajudar-nos.

A virtualização tem sido definida como a abstracção dos recursos do computador ou como uma técnica para esconder as características físicas dos recursos computacionais da forma como outros sistemas, aplicações ou utilizadores interagem com esses recursos. De facto, virtualização sempre significa abstracção. Tornamos algo transparente adicionando camadas que lidam com traduções, fazendo com que os aspectos anteriormente importantes de um sistema se tornem quase irrelevantes.

Virtualização do Armazenamento


A quantidade de dados que as organizações estão a criar e armazenar, aumenta cada vez mais rapidamente devido à mudança de processos de negócios para aplicações digitais baseadas na Web e essa enorme quantidade de dados está a causar problemas para muitas delas. Em primeiro lugar, muitas aplicações geram mais dados que aqueles que podem ser armazenados fisicamente num único servidor. Depois, muitas aplicações, especialmente as baseadas na Internet, têm várias máquinas que precisam aceder aos mesmos dados. Ter todos os dados numa só máquina pode criar um estrangulamento, para não mencionar o risco que representa a situação em que muitas máquinas podem ser ficar inoperacionais se uma simples máquina, contendo todos os dados da aplicação, sofrer uma falha. Finalmente, o aumento do número de máquinas de backup causa problemas porque tentar criar cópias de segurança de dados é uma tarefa enorme, quando há centenas ou até milhares de máquinas que precisam de backup de dados.

Por estas razões, os dados foram movidos para a virtualização. As empresas utilizam armazenamento centralizado (armazenamento virtualizado), como forma de evitar problemas de acesso a dados. Além disso, a mudança para o armazenamento de dados centralizado pode ajudar as organizações de TI a reduzir custos e melhorar a eficiência da gestão de dados. A premissa básica das soluções de virtualização de armazenamento não é nova. O armazenamento em disco há muito que conta com particionamento para organizar faixas do disco físico e sectores em clusters, e em seguida abstrair clusters em unidades de partição lógica (por exemplo, a unidade C:). Isso permite que o sistema operativo possa ler e gravar dados nos discos locais sem ter em conta a localização física dos bytes individuais nos pratos do disco.

Camada de Virtualização de Amazenamento

A virtualização de armazenamento cria uma camada de abstracção entre o sistema operativo e os discos físicos utilizados para armazenamento de dados. O armazenamento virtualizado é então independente do local, o que pode permitir a utilização mais eficiente e a melhor gestão do armazenamento. Por exemplo, o software de virtualização de armazenamento, ou dispositivo, cria um espaço lógico e gere de metadados que estabelecem um mapa entre o espaço lógico o espaço em disco físico. A criação do espaço lógico permite uma plataforma de virtualização para apresentar volumes de armazenamento que podem ser criados e alterados dando pouca atenção aos discos subjacente.

A camada de virtualização de armazenamento é onde os recursos de muitos dispositivos de armazenamento diferentes são agrupados de modo a que aparentem ser todos apenas um grande contentor de armazenamento. Este é então gerido por um sistema central que faz tudo parecer muito simples para os administradores de rede. Esta é também uma óptima maneira de monitorizar recursos porque é possível saber exactamente quanto está disponível num determinado momento e cria muito muito menos preocupações quando se trata de backups, etc.
Na maioria dos centros de dados, apenas uma pequena percentagem do armazenamento é usada porque, mesmo com uma SAN, você tem que alocar uma LUN (Logical Unit Number) inteira ao servidor (ou servidores) associado a essa LUN. Imaginemos que uma LUN enche, mas existe espaço em disco disponível noutra LUN. É muito difícil tirar o espaço em disco de uma LUN e dá-lo a outra LUN. Além disso, é muito difícil de misturar e combinar armazenamento e fazê-lo aparecer como um todo.
Virtualização de Armazenamento
A virtualização de armazenamento funciona muito bem para espelhamento de tráfego através de uma WAN e para a migração de LUNs de um conjunto de armazenagem para outro, sem tempo de inactividade. Com alguns tipos de virtualização de armazenamento podemos, por exemplo, esquecer onde estão alocados os dados pois migrá-los para outro lugar é muito mais simples. De facto, muitos sistemas migram os dados com base na utilização de modo a optimizar o desempenho.

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.