terça-feira, 29 de abril de 2014

Armazenamento NAS



A sigla que dá nome ao produto já exemplifica bem a sua função. NAS (Network Attached Storage) ou Armazenamento conectado à rede, em tradução livre, é um servidor dedicado ao armazenamento de arquivos dentro de uma rede. O aparelho possui, logicamente, entrada para cabo de internet e os arquivos podem ser acessados de qualquer lugar com o endereço IP associado ao NAS.
Geralmente contando com vários discos rígidos funcionando em alguma variação de RAID (dependendo do foco em desempenho ou segurança), um hardware simples e um sistema operacional baseado em Linux ou UNIX, o NAS fica conectado à rede como uma unidade independente.

É importante lembrar que é possível montar um NAS sem ter que comprar um equipamento pronto, solução adotada por muitos usuários e empresas que precisam de um sem ter que fazer grandes investimentos. Existem distribuições Linux ou BSD que permitem transformar um PC comum em um NAS de forma prática. Um bom exemplo é o FreeNAS (baseado no FreeBSD), que pode ser instalado de forma simples, ocupando apenas 32 MB, e é inteiramente administrado através de uma interface de gerenciamento via web, sem precisar de monitor. Ele suporta o uso de RAID, compartilhamentos via CIFS (Samba), FTP, NFS e SFTP, além de oferecer um grande volume de recursos de gerenciamento.

Os modos RAID disponiveis são:

RAID 0 (Striping): No RAID 0 todos os HDs passam a ser acessados como se fossem um único drive. Ao serem gravados, os arquivos são fragmentados nos vários discos, permitindo que os fragmentos possam ser lidos e gravados simultaneamente, com cada HD realizando parte do trabalho. Isso permite melhorar brutalmente a taxa de leitura e de gravação e continuar usando 100% do espaço disponível nos HDs. O problema é que no RAID 0 não existe redundância. Os HDs armazenam fragmentos de arquivos, e não arquivos completos. Sem um dos HDs, a controladora não tem como reconstruir os arquivos e tudo é perdido. Isso faz com que o modo RAID 0 seja raramente usado em servidores.

RAID 1 (Mirroring): No RAID 1 são usados dois HDs (ou qualquer outro
número par). O primeiro HD armazena dados e o segundo armazena um cópia exata do primeiro, atualizada em tempo real. Se o primeiro HD falha, a controladora automaticamente chaveia para o segundo HD, permitindo que o sistema continue funcionando. Em servidores é comum o uso de HDs com suporte a hot-swap, o que permite que o HD defeituoso seja substituído a quente, com o servidor ligado. A desvantagem em usar RAID 0 é que metade do espaço de armazenamento é sacrificado.

RAID 10 (Mirror/Strip): Este modo combina os modos 0 e 1 e pode ser usado com a partir de 4 HDs (ou outro número par). Metade dos HDs são usados em modo striping (RAID 0), enquanto a segunda metade armazena uma cópia dos dados dos primeiros, oferecendo redundância.

RAID 5: Este é o modo mais utilizado em servidores com um grande número de HDs. O RAID 5 usa um sistema de paridade para manter a integridade dos dados. Os arquivos são divididos em fragmentos e, para cada grupo de fragmentos, é gerado um fragmento adicional, contendo códigos de paridade. Os códigos de correção são espalhados entre os discos. Dessa forma, é possível gravar dados simultaneamente em todos os HDs, melhorando o desempenho.
O RAID 5 pode ser usado com a partir de 3 discos. Independentemente da quantidade de discos usados, sempre temos sacrificado o espaço equivalente a um deles. Em um NAS com 4 HDs de 1 TB, por exemplo, você ficaria com 3 TB de espaço disponível, em um servidor com 10 HDs de 1 TB, você ficaria com 9 TB disponíveis e assim por diante. Os dados continuam seguros caso qualquer um dos HDs usados falhe, mas se um segundo HD falhar antes que o primeiro seja substituído (ou antes que a controladora tenha tempo de regravar os dados), todos os dados são perdidos. Você pode pensar no RAID 5 como um RAID 0 com uma camada de redundância.

RAID 6: O RAID 6 dobra o número de bits de paridade, eliminando o ponto fraco do RAID 5, que é a perda de todos os dados caso um segundo HD falhe. No RAID 6, a integridade dos dados é mantida caso dois HDs falhem simultaneamente, o que reduz brutalmente as possibilidades matemáticas de perda de dados.
A percentagem de espaço sacrificado decai conforme são acrescentados mais discos, de forma que o uso do RAID 6 vai tornado-se progressivamente mais atrativo. No caso de um grande servidor, com 20 HDs, por exemplo, seria sacrificado o espaço equivalente a apenas dois discos, ou seja, apenas 10% do espaço total. O maior problema é que o RAID 6 exige o uso de algoritmos muito mais complexos por parte da controladora, de forma que ele não é suportado por todos os dispositivos.