Steadfast tem vindo a fornecer servidores dedicados com configurações RAID há pelo menos uma década, e embora o RAID seja uma tecnologia amplamente utilizada, a forma como é implementado tem mudado muito com o advento das unidades de estado sólido (SSDs). Muitos clientes têm-nos perguntado sobre o RAID, o que é, como os afecta, e como podem obter dele a melhor fiabilidade e desempenho, mantendo-se atentos aos seus resultados. Por isso, pensei em dar uma vista de olhos aos posts do blogue que fizemos no passado e lançar uma versão actualizada para incluir os avanços modernos. Se ainda tiver mais perguntas, não hesite em contactar-nos.
O que é RAID?
RAID significa Redundant Array of Inexpensive Disks. Isso significa que RAID é uma forma lógica de juntar vários discos numa única matriz. A ideia então é que estes discos trabalhando em conjunto terão a velocidade e/ou fiabilidade de um disco mais caro. Agora, a velocidade e fiabilidade exactas que conseguirá com o RAID depende do tipo de RAID que estiver a utilizar.
Uma breve visão geral do disco giratório e das unidades de estado sólido
Disco giratório, discos rígidos mecânicos, ou discos rígidos (HDD) são tipicamente escolhidos em situações em que necessidades como velocidade e desempenho caem em segundo lugar em relação ao custo. Devido a limitações físicas e à natureza mecânica de muitas peças móveis de alta velocidade nelas contidas, os HDD também têm uma taxa de falhas relativamente elevada em comparação com as SSD. O RAID destina-se a ajudar a aliviar estes dois problemas, dependendo do tipo de RAID que se utiliza. Normalmente, um disco rígido mecânico tem uma probabilidade de falha de 2,5% em cada ano do seu funcionamento. Isto foi comprovado por múltiplos relatórios e nenhum fabricante ou modelo específico tem uma variação dramática em relação a essa taxa de 2,5%. Em suma, se valorizar os seus dados, vai precisar de implementar alguma metodologia para ajudar a protegê-los de falhas da unidade.
SSDs são tipicamente escolhidos em situações em que a velocidade e o desempenho têm prioridade em relação a considerações de custo. Como não têm partes móveis, a sua capacidade de escrever e ler dados sobre elas é significativamente mais rápida do que num HDD (pelo menos 8-10x mais rápido.) E a sua taxa de falhas é de aproximadamente .5% durante cada ano de funcionamento, o que reduz significativamente o risco em comparação com um HDD em rotação.
Por causa da dramática diferença entre as tecnologias de HDD e SSD, é importante afirmar que algumas implementações RAID que são óptimas para HDD não são para SSD, e vice-versa.
Quais são os tipos de RAID?
RAID 0 (Striping)
RAID 0 está a pegar em qualquer número de discos e a fundi-los num grande volume. Isto aumentará muito a velocidade, uma vez que se lê e escreve a partir de vários discos de cada vez. Um ficheiro individual pode então utilizar a velocidade e capacidade de todos os discos da matriz. A desvantagem do RAID 0, no entanto, é que NÃO é redundante. A perda de qualquer disco individual causará a perda completa de dados. Este tipo de RAID é muito menos fiável do que ter um único disco.
Raramente há uma situação em que se deve utilizar RAID 0 num ambiente de servidor. Pode utilizá-lo para cache ou outros fins em que a velocidade é importante e a fiabilidade/perda de dados não importa de todo. Mas não deve ser utilizado para nada que não seja isso. Como exemplo, com a taxa de falha anual de 2,5% de unidades, se tiver uma matriz RAID 0 de 6 discos, aumentou o risco anual de perda de dados para quase 13,5%.
RAID 1 (Mirroring)
Enquanto o RAID 1 é capaz de uma configuração muito mais complicada, quase todos os casos de utilização do RAID 1 são em que tem um par de discos idênticos espelham/copiam os dados de forma idêntica através das unidades do array. O objectivo do RAID 1 é principalmente a redundância. Se se perder completamente uma unidade, ainda se pode ficar a funcionar fora da unidade adicional.
Na eventualidade de qualquer uma das unidades falhar, pode-se então substituir a unidade avariada por pouco ou nenhum tempo de inactividade. O RAID 1 também lhe dá o benefício adicional de um maior desempenho de leitura, uma vez que os dados podem ser lidos em qualquer uma das unidades da matriz. As desvantagens são que terá uma latência de escrita ligeiramente superior. Uma vez que os dados precisam de ser escritos em ambas as unidades do array, só terá a capacidade disponível de uma única unidade enquanto precisar de duas unidades.
RAID 5/6 (Striping + Paridade Distribuída)
RAID 5 requer a utilização de pelo menos 3 unidades (RAID 6 requer pelo menos 4 unidades). É necessária a ideia de RAID 0, e remove os dados em múltiplas unidades para aumentar o desempenho. Mas, acrescenta também o aspecto da redundância, distribuindo informação de paridade pelos discos. Existem muitos recursos técnicos na Internet que podem entrar nos detalhes de como isto realmente acontece. Mas em resumo, com RAID 5 pode perder um disco, e com RAID 6 pode perder dois discos, e ainda assim manter as suas operações e dados.
RAID 5 e 6 irá melhorar significativamente o seu desempenho de leitura. Mas o desempenho de escrita depende em grande parte do controlador RAID utilizado. Para RAID 5 ou 6, irá certamente precisar de um controlador de hardware dedicado. Isto é devido à necessidade de calcular os dados de paridade e escrevê-los em todos os discos. RAID 5 e RAID 6 são frequentemente boas opções para servidores web padrão, servidores de ficheiros, e outros sistemas de uso geral onde a maioria das transacções são lidas, e obtêm-se um bom valor pelo seu dinheiro. Isto porque só precisa de comprar uma unidade adicional para RAID 5 (ou duas unidades adicionais para RAID 6) para adicionar velocidade e redundância.
RAID 5 ou RAID 6 não é a melhor escolha para um ambiente de escrita pesada, tal como um servidor de base de dados, uma vez que provavelmente prejudicará o seu desempenho geral.
Vale a pena mencionar que, numa situação RAID 5 ou RAID 6, se perder uma unidade, estará a sacrificar seriosamente o desempenho para manter o seu ambiente operacional. Uma vez substituída a drive falhada, os dados terão de ser reconstruídos a partir da informação da paridade. Isto exigirá uma quantidade significativa do desempenho total do conjunto. Estes tempos de reconstrução continuam a crescer cada vez mais a cada ano, à medida que as unidades ficam cada vez maiores.
RAID 10 (Mirroring + Striping)
RAID 10 requer pelo menos 4 unidades e é uma combinação de RAID 1 (mirroring) e RAID 0 (striping). Isto irá aumentar a sua velocidade e redundância. Este é muitas vezes o nível RAID recomendado se estiver à procura de velocidade, mas ainda precisa de redundância. Numa configuração de quatro unidades, duas unidades espelhadas retêm metade dos dados riscados e outras duas espelham a outra metade dos dados. Isto significa que se pode perder qualquer unidade, e depois possivelmente até uma segunda unidade, sem perder nenhum dado. Tal como o RAID 1, só terá a capacidade de metade das unidades, mas verá um melhor desempenho de leitura e escrita. Terá também o rápido tempo de reconstrução do RAID 1.
Quando Devo Utilizar RAID?
RAID é extremamente útil se o tempo de funcionamento e a disponibilidade forem importantes para si ou para o seu negócio. Os backups ajudarão a assegurar-lhe uma perda de dados catastrófica. Mas, a restauração de grandes quantidades de dados, como quando se verifica uma falha da unidade, pode levar muitas horas a realizar. Essas cópias de segurança podem ter horas ou dias, custando-lhe todos os dados armazenados ou alterados desde a última cópia de segurança. RAID permite-lhe resistir à falha de uma ou mais unidades sem perda de dados e, em muitos casos, sem qualquer tempo de inactividade.
RAID também é útil se tiver problemas de IO do disco, onde as aplicações estão à espera no disco para executar tarefas. A utilização de RAID proporciona-lhe rendimento adicional, permitindo-lhe ler e gravar dados de múltiplas unidades em vez de uma única unidade. Adicionalmente, se utilizar RAID por hardware, a placa RAID por hardware incluirá memória adicional para ser utilizada como cache, reduzindo a tensão colocada sobre o hardware físico e aumentando o desempenho global.
Nota: Geralmente não aconselhamos a utilização de uma placa RAID de hardware para volumes SSD, pois o cache adicional não é necessário devido à velocidade dos próprios SSDs.
Que tipo de RAID devo utilizar?
- Sem RAID – Bom se for capaz de suportar várias horas de inactividade e/ou perda de dados devida enquanto restaura o seu site a partir de backups.
- RAID 0 – Bom se os dados não são importantes e podem ser perdidos, mas o desempenho é crítico (tal como com cache).
- RAID 1 – Bom se estiver à procura de uma redundância adicional de dados e/ou velocidade de leitura a baixo custo. (Este é um bom nível de base para quem procura atingir um elevado tempo de funcionamento e aumentar o desempenho das cópias de segurança)
- RAID 5/6 – Bom se tiver servidores Web, ambientes de alta leitura, ou matrizes de armazenamento extremamente grandes como um único objecto. Isto terá um desempenho pior do que o RAID 1 em gravações. Se o seu ambiente for pesado em termos de escrita, ou se não precisar de mais espaço do que é permitido num disco com RAID 1, o RAID 1 é provavelmente uma opção mais eficaz.
- RAID 10 – Uma boa solução versátil que proporciona velocidade adicional de leitura e escrita, bem como redundância adicional.
Software vs Hardware?
Software RAID
Software RAID é uma opção incluída em todos os servidores dedicados do Steadfast. Isto significa que NÃO há custo para RAID 1 por software, e é altamente recomendado se estiver a utilizar armazenamento local num sistema. É altamente recomendável que as unidades numa matriz RAID sejam do mesmo tipo e tamanho.
RAID baseado em software irá aproveitar parte do poder computacional do sistema para gerir a configuração RAID. Se estiver a procurar maximizar o desempenho de um sistema, tal como com uma configuração RAID 5 ou 6, é melhor usar uma placa RAID baseada em hardware quando estiver a usar discos rígidos padrão.
Hardware RAID
Hardware-based RAID requer um controlador dedicado instalado no servidor. Os engenheiros Steadfast terão todo o prazer em lhe fornecer recomendações sobre qual o melhor tratamento RAID de hardware para si que se baseia na configuração RAID que pretende ter. Uma placa RAID baseada em hardware faz toda a gestão do(s) conjunto(s) RAID, fornecendo discos lógicos ao sistema, sem que o sistema em si seja ouvido. Além disso, o RAID por hardware pode fornecer muitos tipos diferentes de configurações RAID simultaneamente ao sistema. Isto inclui fornecer uma matriz RAID 1 para a unidade de arranque e aplicação e uma matriz RAID-5 para a grande matriz de armazenamento.
O que o RAID não faz?
- RAID não equivale a 100% de tempo de funcionamento. Nada pode. O RAID é outra ferramenta na caixa de ferramentas destinada a ajudar a minimizar o tempo de inactividade e os problemas de disponibilidade. Ainda existe o risco de falha de uma placa RAID, embora isso seja significativamente inferior a uma falha mecânica da unidade HDD.
- RAID não substitui as cópias de segurança. Nada pode substituir uma implementação de backups bem planeada e frequentemente testada!
- RAID não o protegerá contra corrupção de dados, erro humano, ou problemas de segurança. Embora possa protegê-lo contra uma falha da unidade, existem inúmeras razões para manter as cópias de segurança. Portanto, não tome RAID como um substituto para as cópias de segurança. Se não tiver cópias de segurança, não está preparado para considerar RAID como uma opção.
- RAID não lhe permite necessariamente aumentar dinamicamente o tamanho da matriz. Se precisar de mais espaço em disco, não pode simplesmente adicionar outra unidade à matriz. É provável que tenha de começar do zero, reconstruindo/reformatando o array. Felizmente, os engenheiros Steadfast estão aqui para o ajudar a arquitectar e executar quaisquer sistemas de que necessite para manter o seu negócio a funcionar.
- RAID nem sempre é a melhor opção para virtualização e failover de alta disponibilidade. Nessas circunstâncias, vai querer olhar para soluções SAN, que o Steadfast também fornece.
Editor’s Note: Este post foi originalmente publicado em Março de 2010 e foi completamente renovado e actualizado para acuracracidade e abrangência.