Gestão e reconstrução do RAID software nos servidores em modo de arranque legado (BIOS)
Informações sobre a tradução
Esta tradução foi automaticamente gerada pelo nosso parceiro SYSTRAN. Em certos casos, poderão ocorrer formulações imprecisas, como por exemplo nomes de botões ou detalhes técnicos. Recomendamos que consulte a versão inglesa ou francesa do manual, caso tenha alguma dúvida. Se nos quiser ajudar a melhorar esta tradução, clique em "Contribuir" nesta página.
Objetivo
O RAID (Redundant Array of Independent Disks) é um conjunto de técnicas concebidas para mitigar a perda de dados num servidor replicando-os em vários discos.
O nível RAID predefinido para as instalações de servidores OVHcloud é o RAID 1, o que duplica o espaço ocupado pelos seus dados, reduzindo assim metade do espaço de disco utilizável.
Este guia explica como gerir e reconstruir um RAID software em caso de substituição de um disco no seu servidor em modo de arranque legado (BIOS).
Antes de começar, note que este guia se concentra nos servidores dedicados que utilizam o modo de arranque legado (BIOS). Se o seu servidor utiliza o modo UEFI (placas-mãe mais recentes), consulte este guia Gestão e reconstrução do RAID software nos servidores em modo de arranque UEFI.
Para verificar se um servidor está a executar em modo BIOS ou em modo UEFI, execute o seguinte comando:
Requisitos
- Ter um servidor dedicado com uma configuração de RAID software.
- Ter acesso ao seu servidor via SSH com privilégios de administrador (sudo).
- Conhecimento de RAID e partições.
Instruções
Apresentação do conteúdo
Informações básicas
Numa sessão de linha de comandos, introduza o seguinte código para determinar o estado atual do RAID.
Este comando indica-nos que dois dispositivos RAID software estão atualmente configurados, sendo md4 o maior. O dispositivo RAID md4 é composto por duas partições, denominadas nvme0n1p4 e nvme1n1p4.
O [UU] significa que todos os discos estão a funcionar normalmente. Um _ indica um disco defeituoso.
Se tiver um servidor com discos SATA, obterá os seguintes resultados:
Embora este comando nos devolva os nossos volumes RAID, não nos indica o tamanho das próprias partições. Podemos encontrar esta informação com o seguinte comando:
O comando fdisk -l permite-nos também identificar o tipo de partição. Esta é uma informação importante para reconstruir o seu RAID em caso de falha de um disco.
Para as partições GPT, a linha 6 mostrará: Disklabel type: gpt. Estas informações só são visíveis quando o servidor está em modo normal.
Ainda com base nos resultados de fdisk -l, podemos ver que /dev/md2 é composto por 888.8GB e /dev/md4 contém 973.5GB.
Alternativamente, o comando lsblk oferece uma visão diferente das partições:
Tome nota dos dispositivos, das partições e dos seus pontos de montagem, pois isso é importante, especialmente após a substituição de um disco. Isso irá permitir-lhe verificar que as partições estão corretamente montadas nos seus pontos de montagem respetivos no novo disco.
No nosso exemplo, temos:
- Partições que fazem parte de md2 (
/): sda2 e sdb2. - Partições que fazem parte de md4 (
/home): sda4 e sdb4. - Partições swap: sda3 e sdb3.
- Partições de arranque BIOS: sda1 e sdb1.
A partição sda5 é um config drive, ou seja, um volume de leitura apenas que fornece ao servidor os seus dados de configuração iniciais. É lida apenas uma vez durante o arranque inicial e pode ser removida posteriormente.
Simular uma falha de disco
Dispomos de todas as informações necessárias para simular uma falha de disco. Neste exemplo, vamos fazer falhar o disco sda.
O meio preferido para isso é o ambiente em modo rescue da OVHcloud.
Reinicie primeiro o servidor em modo rescue e faça login com as credenciais fornecidas.
Para remover um disco do RAID, o primeiro passo é marcá-lo como Failed e remover as partições dos seus arrays RAID respetivos.
A partir da saída acima, sda é composto por duas partições em RAID que são sda2 e sda4.
Remover o disco defeituoso
Começamos por marcar as partições sda2 e sda4 como Failed.
Agora simulámos uma falha do RAID, quando executamos o comando cat /proc/mdstat, obtemos o seguinte resultado:
Como podemos ver acima, o [F] ao lado das partições indica que o disco está defeituoso ou com falha.
Em seguida, removemos estas partições dos arrays RAID.
Para nos certificarmos de que obtemos um disco semelhante a um disco vazio, utilizamos o seguinte comando. Substitua sda pelos seus próprios valores:
O disco aparece agora como um disco novo e vazio:
Se executarmos o seguinte comando, vemos que o nosso disco foi corretamente "apagado":
O estado do nosso RAID deve agora ser semelhante a isto:
Os resultados acima mostram que agora apenas duas partições aparecem nos arrays RAID. Conseguimos fazer com que o disco sda falhasse e agora podemos proceder à substituição do disco.
Para obter mais informações sobre como preparar e solicitar a substituição de um disco, consulte este guia.
O comando seguinte permite obter mais detalhes sobre o(s) array(s) RAID:
Reconstruir o RAID
Este processo pode variar dependendo do sistema operativo instalado no seu servidor. Recomendamos que consulte a documentação oficial do seu sistema operativo para obter os comandos adequados.
Para a maioria dos servidores em RAID software, após a substituição de um disco, o servidor é capaz de iniciar em modo normal (no disco saudável) para reconstruir o RAID. No entanto, se o servidor não conseguir iniciar em modo normal, será reiniciado em modo rescue para proceder à reconstrução do RAID.
Reconstrução do RAID em modo normal
No nosso exemplo, substituímos o disco sda.
Depois de substituir o disco, precisamos copiar a tabela de partições do disco saudável (neste exemplo, sdb) para o novo (sda).
O comando deve ter o seguinte formato: sgdisk -R /dev/novo_disco /dev/disco_saudavel.
O comando deve ter o seguinte formato: sfdisk -d /dev/disco_saudavel | sfdisk /dev/novo_disco.
Depois de concluir esta operação, o próximo passo é atribuir um GUID aleatório ao novo disco para evitar conflitos com os GUIDs de outros discos:
Se a seguinte mensagem for exibida:
Pode simplesmente executar o comando partprobe. Se ainda não conseguir ver as partições recém-criadas (por exemplo, com lsblk), deve reiniciar o servidor antes de continuar.
Em seguida, adicionamos as partições ao RAID:
Utilize o seguinte comando para monitorizar a reconstrução do RAID:
Por fim, adicionamos um rótulo e montamos a partição [SWAP] (se aplicável).
Para adicionar um rótulo à partição SWAP:
Em seguida, recupere os UUID das duas partições SWAP:
Substituímos o antigo UUID da partição SWAP (sda4) pelo novo no ficheiro /etc/fstab.
Exemplo:
De acordo com os resultados acima, o UUID antigo é b7b5dd38-9b51-4282-8f2d-26c65e8d58ec e deve ser substituído pelo novo b3c9e03a-52f5-4683-81b6-cc10091fcd15.
Certifique-se de substituir o UUID correto.
Em seguida, verificamos se tudo está montado corretamente usando o seguinte comando:
Execute o seguinte comando para ativar a partição SWAP:
Em seguida, reinicie o sistema usando o seguinte comando:
A reconstrução do RAID está agora concluída.
Reconstrução do RAID em modo rescue
Se o seu servidor não conseguir reiniciar em modo normal após a substituição do disco, será reiniciado em modo rescue pela nossa equipa do datacenter.
Neste exemplo, substituímos o disco sdb.
Depois de substituir o disco, devemos copiar a tabela de partições do disco saudável (neste exemplo, sda) para o novo (sdb).
O comando deve estar no seguinte formato: sgdisk -R /dev/novo_disco /dev/disco_saudavel
Exemplo:
O comando deve estar no seguinte formato: sfdisk -d /dev/disco_saudavel | sfdisk /dev/novo_disco
Exemplo:
Depois de realizar esta operação, o passo seguinte consiste em atribuir um GUID aleatório ao novo disco para evitar quaisquer conflitos com os GUID de outros discos:
Se aparecer a seguinte mensagem:
Pode simplesmente executar o comando partprobe.
Agora podemos reconstruir o array RAID adicionando de novo as novas partições (sdb2 e sdb4):
Utilize o comando cat /proc/mdstat para monitorizar a reconstrução do RAID:
Por fim, adicionamos uma etiqueta e montamos a partição [SWAP] (se necessário).
Depois de concluir a reconstrução do RAID, montamos a partição que contém a raiz do nosso sistema operativo em /mnt. No nosso exemplo, esta partição é md2.
Adicionamos o rótulo à nossa partição swap com o seguinte comando:
Em seguida, montamos os seguintes diretórios para garantir que todas as operações que realizamos no ambiente chroot funcionem corretamente:
Agora, acedemos ao ambiente chroot:
Recuperamos os UUID das duas partições SWAP:
Exemplo:
Em seguida, substituímos o antigo UUID da partição SWAP (sdb4) pelo novo em /etc/fstab:
Exemplo:
No nosso exemplo acima, o UUID a substituir é d6af33cf-fc15-4060-a43c-cb3b5537f58a pelo novo b3c9e03a-52f5-4683-81b6-cc10091fcd15.
Certifique-se de substituir o UUID correto.
Em seguida, verificamos que tudo está corretamente montado:
Ative a partição swap com o seguinte comando:
Saímos do ambiente chroot com exit e reiniciamos o sistema:
Desmontamos todos os discos:
Concluímos com sucesso a reconstrução do RAID no servidor e agora podemos reiniciá-lo em modo normal.
Quer saber mais?
Substituição a quente - RAID software
Substituição a quente - RAID hardware
Para serviços especializados (referênciação, desenvolvimento, etc), contacte os parceiros OVHcloud.
Se desejar beneficiar de assistência no uso e configuração das suas soluções OVHcloud, consulte as nossas diferentes ofertas de suporte.
Se precisar de formação ou assistência técnica para a implementação das nossas soluções, contacte o seu contacto comercial ou clique neste link para obter um orçamento e solicitar uma análise personalizada do seu projeto aos nossos especialistas da equipa Professional Services.
Fale com a nossa comunidade de utilizadores.