Propriedades da matriz

Uma propriedade-chave de uma matriz não distribuída é que algumas unidades dentro da matriz são designadas como "unidades sobressalentes". Em uma configuração de matriz não distribuída, as unidades sobressalentes são usadas somente quando outras unidades na matriz falham.

Uma matriz não distribuída pode conter de 2 a 16 unidades e várias matrizes criam a capacidade para um conjunto. Para redundância, unidades sobressalentes (hot-spares) são alocadas para assumir operações de leitura/gravação se alguma das outras unidades falhar. No restante do tempo, as unidades sobressalentes ficam inativas e não processam solicitações para o sistema. Quando uma unidade do membro falha na matriz, os dados podem ser recuperados apenas na sobressalente com a mesma rapidez com que essa unidade pode gravar os dados. Devido a esse gargalo, a reconstrução dos dados pode levar muitas horas, pois o sistema tenta balancear a carga de trabalho do host e da reconstrução. Consequentemente, a carga nas unidades restantes do membro pode aumentar significativamente. A latência de E/S na matriz de reconstrução é afetada durante todo esse tempo. Como os dados de volume são divididos entre MDisks, todos os volumes são afetados durante o tempo gasto para reconstruir a unidade.

Exemplos de uma matriz

A Figura 1 mostra um exemplo de uma matriz configurada com o nível de RAID 6. Essa matriz contém 5 unidades ativas e 2 unidades sobressalentes.
  •  1  Uma unidade ativa
  •  2  Unidades sobressalentes; ambas as unidades estão inativas
  •  3  Faixa de dados, que é composta de faixas individuais de dados
  •  4  Largura da faixa, que se iguala à largura da matriz; somente as unidades ativas são incluídas na largura da faixa
Figura 1. Matriz não distribuída (nível de RAID 6)
Esta figura mostra um exemplo de uma matriz não distribuída com uma configuração de nível de RAID 6; todas as unidades estão ativas.
A Figura 2 mostra uma matriz que contém uma unidade com falha. Os dados são lidos a partir de todas as unidades ativas remanescentes. Todos os dados recuperados são então gravados em uma das unidades sobressalentes. A outra unidade sobressalente permanece não utilizada e inativa durante esse processo.
  •  1  Unidade com falha
  •  2  Unidades ativas remanescentes, a partir das quais os dados recuperados são lidos
  •  3  Os dados recuperados são gravados em uma unidade sobressalente
  •  4  A unidade sobressalente remanescente permanece não utilizada e inativa
Figura 2. Matriz não distribuída (nível de RAID 6) com uma unidade com falha
Esta figura mostra um exemplo de uma matriz não distribuída com uma configuração de nível RAID 6. Uma unidade falhou.

Níveis de RAID suportados

O sistema suporta os seguintes níveis de RAID: RAID 0, RAID 1, RAID 5, RAID 6 e RAID 10.

RAID 0
As matrizes RAID 0 não têm redundância e não suportam o controle hot spare. Todas as unidades em uma matriz de RAID 0 de unidades internas devem estar no mesmo nó.
RAID 1
O RAID 1 fornece espelhamento de disco, o que duplica os dados entre as duas unidades. Uma matriz RAID 1 é idêntica internamente a uma matriz RAID 10 de dois membros. O par de unidades deve conter uma unidade de um nó no grupo de E/S e uma unidade do outro nó. Cada par espelhado deve conter uma unidade de cada nó, portanto, se um nó falhar ou for reconfigurado, a cópia espelhada estará disponível.
RAID 5
As matrizes de RAID 5 distribuem dados pelas unidades do membro com uma faixa de paridade em cada faixa. As matrizes RAID 5 têm redundância única com o maior thin provisioning de matrizes RAID 10, mas com alguma perda de desempenho. As matrizes de RAID 5 podem tolerar a falha de uma unidade do membro.
RAID 6
As matrizes de RAID 6 distribuem dados pelas unidades do membro com duas faixas de paridade em cada faixa. Uma matriz RAID 6 pode tolerar qualquer uma das duas falhas simultâneas da unidade de membro.
RAID 10
As matrizes RAID 10 fazem stripe de dados em pares espelhados de unidades. As matrizes RAID 10 têm redundância única. Os pares espelhados se reconstroem independentemente. Um membro de cada par pode estar sendo reconstruído ou ausente ao mesmo tempo. O RAID 10 combina os recursos de RAID 0 e RAID 1. As unidades são especificadas como uma sequência de pares de unidades. Cada par de unidades deve conter uma unidade de um nó no grupo de E/S e uma unidade de outro nó. Cada par espelhado deve conter uma unidade de cada nó, portanto, se um nó falhar ou for reconfigurado, a cópia espelhada estará disponível.

A Tabela 1 compara as características de níveis do RAID.

Tabela 1. Comparação de nível do RAID
Nível Contagem de unidade (DC)1 Capacidade de matriz aproximada Redundância2
RAID 0 1 - 8 DC * DS3 Nenhuma
RAID 1 2 DS 1
RAID 5 3 - 16 (DC - 1) * DS 1
RAID 6 5 – 16 Menor que (DC – 2) * DS 2
RAID 10 2 – 16, uniforme (DC/2) * DS 14
  1. No GUI de gerenciamento, não é possível criar matrizes de todos os tamanhos porque o tamanho depende de como as unidades são configuradas.
  2. A redundância significa quantas falhas da unidade a matriz pode tolerar. Em alguns casos, uma matriz pode tolerar a falha de mais de uma unidade. Para obter detalhes, consulte Falhas de unidade e redundância.
  3. DS significa tamanho da unidade.
  4. Entre 1 e MC/2.

Inicialização da matriz

Quando uma matriz for criada, os membros da matriz serão sincronizados entre si por um processo de inicialização de segundo plano. A matriz está disponível para E/S durante esse processo. A inicialização não tem nenhum impacto sobre a disponibilidade, devido a falhas na unidade do membro.

Falhas de unidade e redundância

Se uma matriz tiver a redundância necessária, uma unidade será removida da matriz se ela falhar ou se seu acesso tiver sido perdido. Se uma unidade sobressalente adequada estiver disponível, ela será levada à matriz e a unidade, em seguida, iniciará a sincronização.

Cada matriz tem um conjunto de objetivos que descreve a localização e o desempenho preferencial de cada membro da matriz. Se você perder o acesso a um nó, você perderá o acesso a todas as unidades no nó. As unidades configuradas como membros da matriz não são removidas da matriz. Quando um nó está disponível, o sistema copia os dados que foram modificados enquanto o nó estava off-line entre a unidade adequada e a unidade desatualizada.

O rebalanceamento é atingido usando a troca simultânea que migra dados entre as unidades sem afetar a redundância.

É possível iniciar uma troca e os objetivos da matriz também podem ser atualizados para facilitar as mudanças na configuração.

unidade de proteção e objetivos

Cada membro da matriz é protegido por um conjunto de unidades sobressalentes que são correspondências válidas. Algumas dessas unidades sobressalentes são mais adequadas do que outras. Por exemplo, algumas unidades sobressalentes podem comprometer o desempenho, a disponibilidade da matriz ou ambos. Para cada membro da matriz, uma boa unidade sobressalente está on-line e está no mesmo nó. Uma unidade sobressalente adequada tem uma das seguintes características:
  • Uma correspondência exata de capacidade, desempenho e localização do objetivo do membro.
  • Uma correspondência de desempenho: a unidade sobressalente possui uma capacidade igual ou maior e possui o mesmo desempenho ou melhor.
Uma boa unidade sobressalente também tem uma destas características:
  • Uma unidade com um uso de spare.
  • Uma unidade antiga de troca simultânea destinada a se tornar uma unidade hot spare quando a troca for concluída.

Comandos na Matriz possuem um atributo que é chamado spare_protection, que pode ser usado para especificar o número de sobressalentes válidos para um membro da matriz. O atributo da matriz spare_protection_min é o mínimo de proteção sobressalente dos membros da matriz.

O atributo de matriz spare_goal é o número de boas unidades sobressalentes que são necessárias para proteger cada membro da matriz. Esse atributo será configurado quando a matriz for criada e poderá ser alterado com o comando charray.

Se o número de unidades sobressalentes adequadas pelas quais um membro da matriz é protegido incidir abaixo do objetivo sobressalente da matriz, você receberá um erro de evento 084300.

Configurações de prioridade de gravação lenta

Quando um nível de matriz redundante está executando operações de E/S de leitura/gravação, o desempenho da matriz é comprometido pelo desempenho da unidade de membro mais lenta. Quando as unidades executam os processos ERP internos, se a rede SAS estiver instável ou se um trabalho em excesso estiver sendo direcionado para a matriz, então o desempenho das unidades do membro poderá ser muito pior do que o normal. Nessa situação, as matrizes que oferecem redundância podem aceitar uma breve interrupção na redundância para evitar gravação ou leitura no componente mais lento. As gravações que são mapeadas para uma unidade de execução insatisfatória são confirmadas para a outra cópia ou paridade e são, então, concluídas com um status de satisfatório (presumindo nenhuma outra falha). Quando a unidade do membro é recuperada, a redundância será restaurada por um processo de segundo plano de gravar as faixas que foram marcadas como fora de sincronização enquanto o membro estava lento.

Essa técnica é controlada pela configuração do atributo slow_write_priority da matriz, que é padronizada para latency. Quando configurado como latency, a matriz tem permissão para ficar fora de sincronização em uma tentativa de suavizar o desempenho insatisfatório do membro. É possível usar o comando charray para mudar o atributo slow_write_priority para redundancy. Quando configurado para redundancy, não é permitido que a matriz fique fora de sincronização. No entanto, a matriz pode evitar a perda de desempenho de leitura retornando leituras para o componente lento a partir de caminhos redundantes.

Quando a matriz usa o modo latency ou tenta evitar a leitura de um componente no modo redundancy, o sistema avalia a unidade regularmente para verificar quando ela irá se tornar uma parte confiável do sistema novamente. Se a unidade nunca oferece bom desempenho ou se provoca muitas falhas de desempenho em na matriz, o sistema provoca falha no hardware para evitar a exposição contínua para a unidade de desempenho insatisfatório. O sistema falhará no hardware apenas se ele não puder detectar outra explicação para o mau desempenho da unidade.

Reconstrução incremental offline da unidade

Quando uma unidade fica off-line em uma matriz RAID interna, o sistema não a substitui imediatamente por uma unidade hot-spare. Para um período de 60 segundos, a unidade marca onde ocorreram novas gravações. Se a unidade reaparecer online, ela concluirá uma "reconstrução incremental" dos locais em que as gravações ocorreram em vez de uma reconstrução integral do componente. Esta técnica ocorrerá independentemente da configuração slow_write_priority da matriz porque evitar um controle sobressalente é desejável manter a alta disponibilidade do sistema.

Substituição da Unidade

Uma unidade com um LED de falha aceso indica que a unidade foi marcada como com falha e não está mais em uso pelo sistema. Quando o sistema detecta que tal unidade com falha foi substituída, ele reconfigura a unidade de substituição para ser uma unidade sobressalente. A unidade com falha que foi substituída é automaticamente removida da configuração. A nova unidade sobressalente é, então, usada para cumprir os objetivos de associação da matriz do sistema.