
Organizar um único espaço em disco é uma tarefa que pode ser facilmente resolvida usando um controlador RAID de hardware. No entanto, você deve primeiro se familiarizar com os recursos de uso e gerenciamento de um controlador desse tipo. Falaremos sobre isso hoje em nosso artigo.
A confiabilidade e a velocidade das unidades de disco são motivo de preocupação para todos os administradores de sistema. Apesar das garantias dos fabricantes sobre a qualidade de seus próprios dispositivos - HDD e SSD continuam a falhar no momento mais inoportuno, perdendo dados preciosos. A tecnologia SMART, na maioria dos casos, permite avaliar a "saúde" da unidade, mas isso não garante que a unidade continue funcionando sem problemas.
É impossível prever a falha de uma unidade com 100% de precisão, portanto, você deve considerar a opção em que isso não se torna um problema ou causa uma parada de serviço. O uso de matrizes RAID resolve esse problema. Considere as três principais abordagens usadas para esta tarefa:
- O RAID de software é a opção mais barata, mas também a menos produtiva. A matriz é criada pelo sistema operacional, toda a carga de processamento de dados recai sobre os ombros do processador central.
- O RAID de hardware integrado (também chamado de Fake-RAID) é um microchip instalado na placa-mãe, que assume parte da funcionalidade do controlador RAID de hardware, trabalhando em conjunto com o processador central. Essa abordagem funciona um pouco mais rápido que o RAID de software, mas a confiabilidade de uma matriz desse tipo deixa muito a desejar.
- O RAID de hardware é um controlador separado com seu próprio processador e memória cache, assumindo completamente o desempenho de todas as operações do disco. A opção mais cara, no entanto, a mais produtiva e confiável de usar.
Vejamos o RAID de hardware em detalhes.
Aparência
Selecionamos as soluções Adaptec da Microsemi. Estes são controladores RAID com usabilidade comprovada e alto desempenho. Nós os instalamos se nosso cliente decidir
solicitar um servidor de configuração arbitrária ou fixa.

Para conectar discos, são usados cabos de interface especiais. No lado do controlador, os conectores
SFF8643 são
usados . Cada cabo permite conectar até 4 unidades SAS ou SATA (dependendo do modelo). Além disso, o cabo de interface também possui um conector
SFF-8485 de oito pinos para o barramento SGPIO, sobre o qual falaremos um pouco mais adiante.
Além do próprio controlador RAID, existem dois dispositivos adicionais que podem aumentar a confiabilidade:
- BBU (Battery Backup Unit) - um módulo de expansão com uma bateria de íons de lítio, que permite manter a tensão em um chip de cache volátil. No caso de um blecaute repentino do servidor, seu uso permite salvar temporariamente o conteúdo do cache, que ainda não foi gravado em discos.
Assim que a fonte de alimentação do servidor for restaurada, o conteúdo do cache será gravado em discos no modo normal. Segundo o fabricante, uma bateria totalmente carregada é capaz de armazenar dados em cache por 72 horas. - O ZMCP (Zero-Maintenance Cache Protection) é um módulo de expansão especial para o controlador RAID, que possui sua própria memória não volátil e supercapacitor. No caso de uma falha de energia do servidor, o supercapacitor fornece energia elétrica ao microcircuito, o suficiente para gravar o conteúdo da memória volátil do cache na memória ZMCP NAND.
Após a restauração da energia do servidor, o conteúdo do cache será gravado automaticamente em discos. Esses módulos são instalados em nossos servidores com controlador RAID de hardware e proteção de cache.

Isso é especialmente importante quando o Writeback está ativado. No caso de uma falha de energia, o conteúdo do cache não será liberado para discos, o que levará à perda de dados e, como resultado, a operação regular da matriz de discos será interrompida.
Especificações técnicas
Temperatura
Primeiro, gostaria de abordar uma coisa tão importante quanto o regime de temperatura dos controladores RAID de hardware Adaptec. Todos eles estão equipados com pequenos radiadores passivos, o que pode causar uma falsa impressão de uma pequena dissipação de calor.
O fabricante do controlador cita 200 LFM (pés lineares por minuto) como o valor recomendado do fluxo de ar, que corresponde a um indicador de 8,24 litros por segundo (ou 1,02 metros por segundo). Esses controladores são projetados exclusivamente para instalação em pacotes montados em rack, onde esse fluxo de ar é criado por refrigeradores padrão de alta velocidade.
De 0 ° C a 40-55 ° C - a temperatura de operação da maioria dos controladores Adaptec RAID (dependendo da disponibilidade dos módulos instalados), recomendada pelo fabricante. A temperatura operacional máxima do chip é de 100 ° C. Operar o controlador em temperaturas elevadas (acima de 85 ° C) pode danificá-lo. Por uma questão de conveniência, abaixo do spoiler, fornecemos uma placa de temperaturas recomendadas para diferentes séries de controladores Adaptec.
Temperaturas recomendadas Nossos clientes não precisam se preocupar com o superaquecimento dos controladores, porque nossos data centers mantêm um
regime de temperatura constante e a montagem de servidores de configuração arbitrários leva em consideração os recursos desses componentes (como mencionamos em nosso
artigo anterior ).
Velocidade de trabalho
Para demonstrar como a disponibilidade de um controlador RAID de hardware ajuda a aumentar a velocidade do servidor, decidimos construir um banco de testes com a seguinte configuração:
- CPU Intel Xeon E3-1230v5;
- RAM 16 Gb DDR4 2133 ECC;
- 4 HDs com capacidade de 1 TB.
O sistema operacional será instalado no CentOS 7. A função do aplicativo de servidor assumirá o 1C Bitrix24. Primeiro, construiremos o software RAID usando mdadm e mediremos o desempenho usando o teste interno do Bitrix24. Não fazemos alterações ou configurações adicionais ao sistema, especialmente, uma instalação demo com as configurações padrão está instalada.
Em seguida, colocaremos o controlador Adaptec ASR 7805 RAID com o módulo de proteção de cache AFM-700 no mesmo suporte, conectaremos os mesmos discos rígidos e realizaremos exatamente o mesmo teste.
Com RAID de software
A vantagem indubitável do RAID de software é a facilidade de uso. Uma matriz no Linux é criada usando o utilitário mdadm padrão. Ao instalar o sistema operacional, na maioria das vezes a criação de uma matriz é fornecida diretamente pelo instalador. No caso em que o instalador não oferece essa oportunidade, basta acessar o próximo console usando a combinação de teclas Ctrl + Alt + F2 (onde o número da tecla de função é o número do chamado tty).
Criar uma matriz é muito simples. O
comando fdisk -l examina quais discos estão presentes no sistema. No nosso caso, são 4 discos:
/dev/sda /dev/sdb /dev/sdc /dev/sdd
Verifique se não há metadados nos discos, por exemplo, da matriz anterior:
mdadm --examine /dev/sda /dev/sdb /dev/sdc /dev/sdd
Nos 4 discos, deve haver uma mensagem:
mdadm: No md superblock detected
Se houver metadados em um ou vários discos, você poderá excluí-los da seguinte forma (em que sdX é o disco necessário):
mdadm --zero-superblock /dev/sdX
Crie partições em cada disco para a futura matriz usando o
fdisk . O tipo de partição deve ser
fd (detecção automática de RAID do Linux) .
fdisk /dev/sdX
Coletamos a matriz RAID 10 das partições criadas usando o comando:
mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1
Imediatamente depois disso, a matriz / dev / md0 será criada e o processo de reconstrução dos dados nos discos será iniciado. Para rastrear o status atual do processo, digite:
cat /proc/mdstat

Até que o processo de reconstrução dos dados seja concluído, a velocidade da matriz do disco será reduzida.
Depois de instalar o sistema operacional e o Bitrix24 na matriz criada, lançamos o teste padrão e obtivemos os seguintes resultados:

Com RAID de hardware
Antes que o servidor possa usar o espaço em disco único da matriz RAID, é necessário executar a configuração básica do controlador e das unidades lógicas. Existem duas maneiras de fazer isso:
- usando o utilitário do controlador interno,
- utilitário do sistema operacional.
O primeiro método é ideal para a configuração inicial. O login no utilitário no modo Legado (o modo padrão para nossos servidores) é realizado usando a combinação de teclas CTRL + A quando uma notificação aparece durante o processo de inicialização do POST.

O utilitário permite não apenas controlar as configurações do controlador, mas também dispositivos lógicos. Inicializamos discos físicos (todas as informações sobre os discos durante a inicialização serão destruídas) e criamos uma matriz RAID-10 usando a seção Criar matriz. Ao criar, o sistema solicitará o tamanho de faixa desejado, ou seja, o tamanho do bloco de dados para uma operação de E / S:
- um tamanho de faixa maior é ideal para trabalhar com arquivos grandes;
- um tamanho de faixa menor é adequado para processar um grande número de arquivos pequenos.
Importante - o tamanho da faixa é definido apenas uma vez (ao criar a matriz) e esse valor não pode ser alterado no futuro.

Imediatamente após o controlador receber o comando para criar uma matriz, assim como com o RAID de software, o processo de reconstrução de dados em discos é iniciado. Esse processo é executado em segundo plano e a unidade lógica é imediatamente acessível ao BIOS. O desempenho do subsistema de disco também será reduzido até que o processo seja concluído. Se várias matrizes foram criadas, é necessário determinar a matriz de inicialização usando o atalho de teclado
Ctrl + B.Depois que o status do array mudou para
Optimal , instalamos o Bitrix24 e realizamos exatamente o mesmo teste. Resultado do teste:

Imediatamente fica claro que o controlador RAID de hardware acelera as operações de leitura e gravação na mídia de disco através do uso de um cache, o que permite um processamento mais rápido de solicitações de usuários em massa.
Gerenciamento de controlador
Diretamente do sistema operacional, o controlador é controlado usando o software disponível para download
no site do fabricante . As opções estão disponíveis para a maioria dos sistemas operacionais e hipervisores:
- Debian
- Ubuntu
- Red Hat Linux,
- Fedora
- SuSE Linux,
- FreeBSD
- Solaris,
- Microsoft Windows
- Citrix XenServer,
- VMware ESXi
Outras distribuições Linux também têm códigos-fonte de driver disponíveis. Além dos drivers e do utilitário do console ARCCONF, o fabricante também oferece um programa com uma interface gráfica para controle conveniente do controlador - maxView Storage Manager.
Usando esses utilitários, sem interromper o servidor, você pode gerenciar facilmente discos lógicos e físicos. Você também pode usar funcionalidades úteis como "destaque do disco". Já mencionamos o quinto cabo para conectar o SGPIO - este cabo se conecta diretamente ao backplane (do backplane inglês - a placa de conexão para unidades de servidor) e permite que o controlador RAID controle totalmente a indicação de luz de cada disco.
Lembre-se de que os backplanes suportam não apenas o SGPIO, mas também o I2C. A alternância entre esses modos geralmente é feita usando jumpers no próprio backplane.
Cada dispositivo conectado ao controlador RAID de hardware Adaptec recebe um identificador que consiste em um número de canal e um número de disco físico. Os números dos canais correspondem aos números das portas no controlador.
A substituição do disco é uma operação regular, no entanto, requer identificação inequívoca. Se você cometer um erro durante esta operação, poderá perder dados e interromper o servidor. Com um controlador RAID de hardware, esse erro é raro.
Isso é feito de maneira muito simples:
- Uma lista de unidades mapeadas para o controlador é solicitada:
arcconf getconfig 1
- Foi encontrado um disco que requer substituição e suas “coordenadas” são gravadas (parâmetro Canal Reportado, Dispositivo (T: L) ).

- O disco é "destacado" com o comando:
arcconf identify 1 device 0 0
O controlador dará o comando apropriado do backplane, e o LED da unidade desejada começará a piscar uniformemente em uma cor diferente da padrão de trabalho.
Por exemplo, nas plataformas Supermicro, a operação regular do disco é verde ou azul e o disco "destacado" pisca em vermelho. É impossível misturar os discos nesse caso, o que permitirá evitar erros devido ao fator humano.

Configurar cache
Agora, algumas palavras sobre as opções para trabalhar o cache de gravação. A opção
Write Through significa que o controlador informa o sistema operacional sobre o sucesso da operação de gravação somente depois que os dados foram realmente gravados nos discos. Isso aumenta a confiabilidade da segurança dos dados, mas não aumenta a produtividade.
Para atingir a velocidade máxima, você deve usar a opção
Write Back . Com esse esquema de operação, o controlador informará o sistema operacional da operação bem-sucedida de E / S imediatamente após a chegada dos dados no cache.
Importante - ao usar Write Back, é altamente recomendável usar um módulo BBU ou ZMCP, pois sem ele, durante uma queda repentina de energia, alguns dados podem ser perdidos.
Configuração de monitoramento
A questão de monitorar o status do equipamento e a possibilidade de notificação é bastante aguda para qualquer administrador de sistema. Para configurar o "pacote" do Zabbix e do controlador RAID Adaptec, recomendamos o uso das
soluções listadas .
Frequentemente, você precisa monitorar o status do controlador diretamente do hipervisor, por exemplo, VMware ESXi. O problema é resolvido instalando o provedor CIM usando
a instrução Microsemi .
Firmware
A necessidade de firmware do controlador RAID surge com mais freqüência para corrigir os problemas identificados pelo fabricante com a operação do dispositivo. Apesar de o firmware estar disponível para atualização automática, essa operação deve ser abordada com muita responsabilidade, principalmente se o procedimento for realizado em um sistema de “combate”.
Se nosso cliente precisar alterar a versão do firmware do controlador, ele precisará
criar um ticket em nosso painel de controle. Os engenheiros do sistema farão o flash do controlador RAID para a versão necessária no horário especificado e o farão da maneira mais correta possível.
Importante - você não deve executar o flashing sozinho, pois qualquer erro pode levar à perda de dados!
Conclusão
O uso de um controlador RAID de hardware é justificado na maioria dos casos, quando são necessárias alta velocidade e confiabilidade do subsistema de disco.
Os engenheiros de sistema da Selectel executarão a configuração básica do conjunto de discos no controlador RAID de hardware gratuitamente ao solicitar um servidor de configuração arbitrária. Caso seja necessária assistência adicional com a configuração, teremos prazer em ajudar como parte de nosso
serviço de administração . Além disso, preparamos para nossos leitores uma pequena
nota sobre os comandos do utilitário arcconf.
Você usa controladores RAID de hardware? Vejo você nos comentários.