Criar RAID no Linux

O RAID foi criado com o objetivo de melhorar o desempenho e segurança dos discos rígidos existentes em um servidor, ou uma estação de trabalho, através da utilização de HDs extras. Neste material, iremos utilizar o mdadm para gerenciar os volumes com RAID no LINUX.

[ Hits: 19.099 ]

Por: Diego Mendes Rodrigues em 22/02/2021 | Blog: https://www.linkedin.com/in/diegomendesrodrigues/


Introdução



O que é RAID

RAID é a sigla de Redundant Array of Independent Disks (traduzido para: Conjunto Redundante de Discos Independentes), sendo ele um mecanismo criado com o objetivo de melhorar o desempenho e segurança dos discos rígidos existentes em um servidor, ou uma estação de trabalho, através da utilização de HDs extras.

Existem diversos mecanismos de RAID, desde o RAID 0 até o RAID 6, além dos RAID 10 e RAID 01. Cada um deles foi criado para uma necessidade específica, possuindo suas características próprias. Dentre os tipos de RAID suportados no Linux com a ferramenta abordada nesse material, destaco:

Lineares: São usados no mínimo 2 discos nessa configuração. Um grupo de discos que vão sendo usados sequencialmente (linear), ou seja, o segundo disco só começa a ser usado após o primeiro encher, o terceiro após o segundo. A capacidade de armazenamento de RAID Linear é a soma dos discos. Não possui backup (redundância) e nem melhora na velocidade de leitura e escrita(I/O). Exemplo, RAID 0 com dois discos de 100 GB cada totaliza em 200 GB. Se um disco falhar é perdido todo o conteúdo.

RAID 0: São usados no mínimo 2 discos nessa configuração. A capacidade de armazenamento é a soma dos discos utilizados. Não possui nenhum backup (redundância), embora melhore de forma significante a performance, dando mais velocidade de I/O. Exemplo, RAID 0 com dois discos de 200 GB cada um, totalizando em 400 GB o volume montado no RAID. Se um disco falhar é perdido todo o conteúdo. Possui striping, ou seja, os discos executam tarefas como leitura e gravação de dados de forma simultânea, entregando maior desempenho e liberando a capacidade total dos discos para armazenar informações.

RAID 1: São usados no mínimo 2 discos nessa configuração. A capacidade de armazenamento é metade da soma total dos discos. Exemplo, RAID 0 com dois discos de 200 GB cada um deles, o espaço total no volume montado será de 200 GB. Se um disco falhar, o conteúdo não é perdido.

RAID 4: São usados no mínimo 3 discos nessa configuração. Um dos discos é dedicado à paridade. A capacidade de armazenamento é a soma de todos dos discos, menos um. Exemplo, 3 discos de 100GB cada um, resulta em um RAID 4 de 200GB. O próximo nível de RAID, o 5, possui mais vantagens se comparado com o RAID 4.

RAID 5: São usados no mínimo 3 discos nessa configuração. Possui paridade e striping. Conforme o RAID 4, a capacidade de armazenamento é a soma de todos os discos, menos um.

RAID 6: Existe um segundo disco de paridade, diferentemente do RAID 5, que possui apenas 1.

RAID 10: combinação do RAID 0 e do RAID 1. Dois ou mais RAID 0 se juntam, formando um RAID 1, e por consequência, um RAID 10.

O que é o mdadm

"md" significa múltiplos dispositivos. O "adm" de mdadm é abreviação para administração.

O RAID, como exposto anteriormente, significa Conjunto Redundante de Discos Independentes, sendo de forma resumida, uma combinação de dispositivos, que juntos trabalham como se fossem apenas um. Quando falo de dispositivos posso estar falando de discos, ou partições de um disco, SSDs, dentre outras opções.

O mdadm gerencia dispositivos md, conhecidos também como programas de RAIDs em Linux.

Instalação do mdadm

Instalar o mdadm no Debian/Ubuntu:

sudo apt install mdadm -y

Instalar o mdadm no CentOS/AlmaLinux:

sudo yum install mdadm -y

Verificar a versão instalada:

sudo mdadm -V
Linux: Criar RAID no Linux

Criar um RAID 0 com o mdadm

Estou utilizando uma máquina virtual, com o Debian 10.8. Nesta máquina, possuo os seguintes discos:
  • /dev/sda - 50GB (Disco principal)
  • /dev/sdb - 2GB
  • /dev/sdc - 2GB
  • /dev/sdd - 2GB
  • /dev/sde - 2GB

Linux: Criar RAID no Linux
Irei utilizar os 4 discos com 2GB, para criar um volume em RAID 0, com 8GB.

sudo -i

# mdadm --create /dev/md0 --level=0 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
mdadm: Defaulting to version 4.1 metadata
mdadm: array /dev/md0 started


Agora o disco virtual chamado /dev/md0 foi criado em meu sistema. Devemos então atualizar o arquivo de configuração do mdadm, forçando o dispositivo a se chamar /dev/md0. Caso contrário, o udev irá automaticamente renomeá-lo para /dev/md127.

sudo -i

# mdadm --detail --scan /dev/md0 >> /etc/mdadm/mdadm.conf
Linux: Criar RAID no Linux
Posteriormente, devemos executar o seguinte comando para atualizar o initrd:

sudo -i

# update-initramfs -u

Para que você veja o status do RAID criado, pode utilizar os seguintes comandos:

cat /proc/mdstat
sudo mdadm --detail /dev/md0
Linux: Criar RAID no Linux
Iremos agora formatar o RAID no Linux, utilizando o Ext4, e depois, montar esse volume.

sudo -i

# mkfs.ext4 /dev/md0
# mkdir /mnt/md0
# mount /dev/md0 /mnt/md0
# df -h

Observe que tenho o volume com 8GB, montado em:

/dev/md0        7,9G   36M  7,4G   1% /mnt/md0
Linux: Criar RAID no Linux

Remover o RAID 0 com o mdadm

Caso eu deseje remover o RAID 0 criado com os 4 discos, devo executar os seguintes comandos:

sudo -i

# umount /dev/md0
# mdadm --stop /dev/md0
# mdadm --zero-superblock /dev/sdb
# mdadm --zero-superblock /dev/sdc
# mdadm --zero-superblock /dev/sdd
# mdadm --zero-superblock /dev/sde

Alterar o arquivo /etc/mdadm/mdadm.conf e remover a última linha adicionada:

nano /etc/mdadm/mdadm.conf

Remover:

ARRAY /dev/md0 metadata=1.2 name=debian:0 UUID=5ecf1997:9d6ea966:a3590659:e36f5a88

Posteriormente, devemos executar o seguinte comando para atualizar o initrd:

sudo -i

# update-initramfs -u

Conclusão

As configurações em RAID são utilizadas frequentemente em servidores Linux, aumentando a confiança e a disponibilidade das informações de uma empresa, ou em estações de trabalho, buscando uma maior velocidade de estrada/saída (I/O) com os discos disponíveis.

Você utiliza RAID? Nos conte sua experiência!

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Instalar o TeamViewer no Ubuntu/Debian

Gerar senhas seguras com Python

Taskwarrior, o Guerreiro das Tarefas - Gerenciar sua Lista TODO no Terminal

Ubuntu 18.04 LTS - LAMP - Linux, Apache, MySQL ou MariaDB, PHP 7.2

13 dicas de segurança para o Apache

Leitura recomendada

NFS rápido e direto usando Slackware 12

Instalando e configurando um servidor CVS com Subversion

Dm-crypt - Criptografia no filesystem - Kernel 2.6

Montando partições em memória

Montando Volumes no Docker

  
Comentários
[1] Comentário enviado por maurixnovatrento em 22/02/2021 - 20:31h


Muito Bom.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[2] Comentário enviado por cizordj em 03/04/2021 - 15:07h

Uma vez fiz RAID0 em um notebook com dois SSDs usando o ZFS como sistema de arquivos, na época eu era fã do BSD então eu fazia essas loucuragens rsrs

[3] Comentário enviado por alabliuk em 03/06/2021 - 18:05h

show!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts