Creación de RAID 5 (creación de bandas con paridad distribuida) en Linux - Parte 4


En RAID 5, los datos se distribuyen en varias unidades con paridad distribuida. La creación de bandas con paridad distribuida significa que dividirá la información de paridad y dividirá los datos en varios discos, lo que tendrá una buena redundancia de datos.

Para el nivel RAID, debe tener al menos tres discos duros o más. RAID 5 se está utilizando en el entorno de producción a gran escala, donde es rentable y proporciona rendimiento y redundancia.

La paridad es el método común más simple para detectar errores en el almacenamiento de datos. La paridad almacena información en cada disco, digamos que tenemos 4 discos, en 4 discos un espacio de disco se dividirá en todos los discos para almacenar la información de paridad. Si alguno de los discos falla, podemos obtener los datos reconstruyéndolo a partir de la información de paridad después de reemplazar el disco fallado.

  1. Ofrece un mejor rendimiento
  2. Soporta redundancia y tolerancia a fallas.
  3. Admite opciones de repuesto en caliente.
  4. Perderá la capacidad de un solo disco para usar información de paridad.
  5. No se pierden datos si falla un solo disco. Podemos reconstruir desde la paridad después de reemplazar el disco fallido.
  6. Adecuado para entornos orientados a transacciones, ya que la lectura será más rápida.
  7. Debido a la sobrecarga de paridad, la escritura será lenta.
  8. La reconstrucción lleva mucho tiempo.

Se requieren 3 discos duros como mínimo para crear Raid 5, pero puede agregar más discos, solo si tiene un controlador de raid de hardware dedicado con puertos múltiples. Aquí, estamos usando el software RAID y el paquete "mdadm" para crear un raid.

mdadm es un paquete que nos permite configurar y administrar dispositivos RAID en Linux. Por defecto, no hay ningún archivo de configuración disponible para RAID, debemos guardar el archivo de configuración después de crear y configurar la instalación de RAID en un archivo separado llamado mdadm.conf.

Antes de continuar, le sugiero que lea los siguientes artículos para comprender los conceptos básicos de RAID en Linux.

  1. Conceptos básicos de RAID en Linux - Parte 1
  2. Creación de RAID 0 (Stripe) en Linux - Parte 2
  3. Configuración de RAID 1 (duplicación) en Linux - Parte 3

Operating System :	CentOS 6.5 Final
IP Address	 :	192.168.0.227
Hostname	 :	rd5.tecmintlocal.com
Disk 1 [20GB]	 :	/dev/sdb
Disk 2 [20GB]	 :	/dev/sdc
Disk 3 [20GB]	 :	/dev/sdd

Este artículo es una Parte 4 de una serie RAID de 9 tutoriales, aquí vamos a configurar un software RAID 5 con paridad distribuida en sistemas Linux o servidores usando tres discos de 20GB llamados/dev/sdb,/dev/sdc y/dev/sdd.

Paso 1: instalación de mdadm y verificación de unidades

1. Como dijimos anteriormente, estamos usando la versión final de CentOS 6.5 para esta configuración de raid, pero se pueden seguir los mismos pasos para la configuración de RAID en cualquier distribución basada en Linux.

# lsb_release -a
# ifconfig | grep inet

2. Si está siguiendo nuestra serie de incursiones, asumimos que ya ha instalado el paquete "mdadm"; de lo contrario, utilice el siguiente comando de acuerdo con su distribución de Linux para instalar el paquete.

# yum install mdadm		[on RedHat systems]
# apt-get install mdadm 	[on Debain systems]

3. Después de la instalación del paquete "mdadm", enumeremos los tres discos de 20GB que hemos agregado en nuestro sistema usando el comando "fdisk".

# fdisk -l | grep sd

4. Ahora es el momento de examinar las tres unidades conectadas en busca de bloques RAID existentes en estas unidades mediante el siguiente comando.

# mdadm -E /dev/sd[b-d]
# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

Nota: De la imagen de arriba se ilustra que aún no se ha detectado ningún superbloque. Por lo tanto, no hay ningún RAID definido en las tres unidades. Comencemos a crear uno ahora.

Paso 2: particionamiento de los discos para RAID

5. En primer lugar, tenemos que particionar los discos (/ dev/sdb,/dev/sdc y/dev/sdd) antes de agregarlos a un RAID, así que definamos la partición usando el comando 'fdisk', antes de reenviar al próximos pasos.

# fdisk /dev/sdb
# fdisk /dev/sdc
# fdisk /dev/sdd

Siga las instrucciones a continuación para crear una partición en la unidad/dev/sdb.

  1. Presione "n" para crear una nueva partición.
  2. Luego, elija "P" para la partición primaria. Aquí elegimos Primario porque aún no hay particiones definidas.
  3. Luego, elija "1" para que sea la primera partición. De forma predeterminada, será 1.
  4. Aquí, para el tamaño del cilindro, no tenemos que elegir el tamaño especificado porque necesitamos toda la partición para RAID, así que presione Enter dos veces para elegir el tamaño completo predeterminado.
  5. Luego presione "p" para imprimir la partición creada.
  6. Cambie el tipo. Si necesitamos conocer todos los tipos disponibles, presione "L".
  7. Aquí, estamos seleccionando "fd" ya que mi tipo es RAID.
  8. Luego presione "p" para imprimir la partición definida.
  9. Luego, use nuevamente "p" para imprimir los cambios que hemos realizado.
  10. Utilice "w" para escribir los cambios.

Nota: Tenemos que seguir los pasos mencionados anteriormente para crear particiones para unidades sdc y sdd también.

Ahora particione las unidades sdc y sdd siguiendo los pasos que se dan en la captura de pantalla o puede seguir los pasos anteriores.

# fdisk /dev/sdc
# fdisk /dev/sdd

6. Después de crear las particiones, compruebe los cambios en las tres unidades sdb, sdc y sdd.

# mdadm --examine /dev/sdb /dev/sdc /dev/sdd

or

# mdadm -E /dev/sd[b-c]

Nota: En la foto de arriba. representan el tipo es fd, es decir, para RAID.

7. Ahora busque los bloques RAID en las particiones recién creadas. Si no se detectan superbloques, podemos avanzar para crear una nueva configuración RAID 5 en estas unidades.

Paso 3: creación del dispositivo md md0

8. Ahora cree un dispositivo Raid "md0" (es decir,/dev/md0) e incluya el nivel de raid en todas las particiones recién creadas (sdb1, sdc1 y sdd1) usando el siguiente comando.

# mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1

or

# mdadm -C /dev/md0 -l=5 -n=3 /dev/sd[b-d]1

9. Después de crear el dispositivo RAID, verifique y verifique el RAID, los dispositivos incluidos y el Nivel RAID de la salida mdstat.

# cat /proc/mdstat

Si desea monitorear el proceso de construcción actual, puede usar el comando "watch", simplemente pase por el comando "cat/proc/mdstat" con el comando watch que actualizará la pantalla cada segundo.

# watch -n1 cat /proc/mdstat

10. Después de la creación del raid, verifique los dispositivos del raid usando el siguiente comando.

# mdadm -E /dev/sd[b-d]1

Nota: La salida del comando anterior será poco larga, ya que imprime la información de las tres unidades.

11. A continuación, verifique la matriz RAID para asumir que los dispositivos que hemos incluido en el nivel RAID se están ejecutando y comenzaron a resincronizarse.

# mdadm --detail /dev/md0

Paso 4: creación de un sistema de archivos para md0

12. Cree un sistema de archivos para el dispositivo "md0" usando ext4 antes de montarlo.

# mkfs.ext4 /dev/md0

13. Ahora cree un directorio en "/ mnt", luego monte el sistema de archivos creado en/mnt/raid5 y verifique los archivos en el punto de montaje, verá el directorio perdido + encontrado.

# mkdir /mnt/raid5
# mount /dev/md0 /mnt/raid5/
# ls -l /mnt/raid5/

14. Cree algunos archivos en el punto de montaje/mnt/raid5 y agregue algo de texto en cualquiera de los archivos para verificar el contenido.

# touch /mnt/raid5/raid5_tecmint_{1..5}
# ls -l /mnt/raid5/
# echo "tecmint raid setups" > /mnt/raid5/raid5_tecmint_1
# cat /mnt/raid5/raid5_tecmint_1
# cat /proc/mdstat

15. Necesitamos agregar una entrada en fstab, de lo contrario no mostrará nuestro punto de montaje después de reiniciar el sistema. Para agregar una entrada, debemos editar el archivo fstab y agregar la siguiente línea como se muestra a continuación. El punto de montaje variará según su entorno.

# vim /etc/fstab

/dev/md0                /mnt/raid5              ext4    defaults        0 0

16. A continuación, ejecute el comando "mount -av" para comprobar si hay algún error en la entrada de fstab.

# mount -av

Paso 5: Guardar la configuración de Raid 5

17. Como se mencionó anteriormente en la sección de requisitos, por defecto RAID no tiene un archivo de configuración. Tenemos que guardarlo manualmente. Si no se sigue este paso, el dispositivo RAID no estará en md0, estará en algún otro número aleatorio.

Por lo tanto, debemos guardar la configuración antes de reiniciar el sistema. Si se guarda la configuración, se cargará en el kernel durante el reinicio del sistema y también se cargará RAID.

# mdadm --detail --scan --verbose >> /etc/mdadm.conf

Nota: Guardar la configuración mantendrá estable el nivel de RAID en el dispositivo md0.

Paso 6: Agregar unidades de repuesto

18. ¿De qué sirve agregar una unidad de repuesto? es muy útil si tenemos una unidad de repuesto, si alguno de los discos falla en nuestra matriz, esta unidad de repuesto se activará y reconstruirá el proceso y sincronizará los datos de otro disco, por lo que podemos ver una redundancia aquí.

Para obtener más instrucciones sobre cómo agregar una unidad de repuesto y verificar la tolerancia a fallas de Raid 5, lea #Paso 6 y #Paso 7 en el siguiente artículo.

  1. Agregar unidad de repuesto a la configuración de Raid 5

Conclusión

Aquí, en este artículo, hemos visto cómo configurar un RAID 5 utilizando tres discos. Más adelante en mis próximos artículos, veremos cómo solucionar problemas cuando falla un disco en RAID 5 y cómo reemplazarlo para la recuperación.