Búsqueda de sitios web

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


En RAID 5, los datos se distribuyen en varias unidades con paridad distribuida. La división 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 utiliza en entornos de producción a gran escala, donde es rentable y proporciona rendimiento además de redundancia.

¿Qué es la paridad?

La paridad es el método común más sencillo 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 reconstruyendo a partir de la información de paridad después de reemplazar el disco fallido.

Pros y contras de RAID 5

  1. Da un mejor rendimiento
  2. Soporta redundancia y tolerancia a fallos.
  3. Admite opciones de repuesto dinámico.
  4. Perderá la capacidad de un solo disco por 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. Se adapta a un entorno orientado 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.

Requisitos

Se requieren un mínimo de 3 discos duros para crear Raid 5, pero puede agregar más discos, solo si tiene un controlador raid de hardware dedicado con múltiples puertos. Aquí, utilizamos software RAID y el paquete 'mdadm' para crear una incursión.

mdadm es un paquete que nos permite configurar y gestionar dispositivos RAID en Linux. De forma predeterminada, 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 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
Configuración de mi servidor
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 la Parte 4 de una serie de 9 tutoriales RAID, aquí vamos a configurar un software RAID 5 con paridad distribuida en sistemas o servidores Linux usando tres discos de 20 GB. denominados /dev/sdb, /dev/sdc y /dev/sdd.

Paso 1: instalar mdadm y verificar 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ás siguiendo nuestra serie de incursiones, asumimos que ya has instalado el paquete 'mdadm'; de lo contrario, utiliza el siguiente comando según tu Linux. distribución 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 20 GB que hemos agregado a 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 usando el siguiente comando.

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

Nota: En la imagen de arriba se muestra 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: particionar los discos para RAID

5. En primer lugar, tenemos que particionar los discos (/dev/sdb, /dev/sdc y / dev/sdd) antes de agregarla a un RAID. Así que definamos la partición usando el comando 'fdisk', antes de pasar a los siguientes pasos.

fdisk /dev/sdb
fdisk /dev/sdc
fdisk /dev/sdd
Crear partición /dev/sdb

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. Por defecto, será 1.
  4. Aquí, para el tamaño del cilindro, no tenemos que elegir el tamaño especificado porque necesitamos la partición completa para RAID, así que simplemente presione Entrar 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í, seleccionamos '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: debemos seguir los pasos mencionados anteriormente para crear particiones para las unidades sdc y sdd también.

Crear partición /dev/sdc

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

fdisk /dev/sdc

Crear partición /dev/sdd
fdisk /dev/sdd

6. Después de crear particiones, verifique si hay cambios en las tres unidades sdb, sdc y sdd.

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

or

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

Nota: en la imagen de arriba. Representa que el tipo es fd, es decir, para RAID.

7. Ahora verifique los bloques RAID en las particiones recién creadas. Si no se detectan superbloques, podemos seguir adelante 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 de RAID en la salida mdstat.

cat /proc/mdstat

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

watch -n1 cat /proc/mdstat

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

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

Nota: La salida del comando anterior será un 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: crear un sistema de archivos para md0

12. Cree un sistema de archivos para el dispositivo 'md0' usando ext4 antes del montaje.

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 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 se 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 errores en la entrada fstab.

mount -av

Paso 5: guardar la configuración de Raid 5

17. Como se mencionó anteriormente en la sección de requisitos, RAID no tiene un archivo de configuración de forma predeterminada. 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 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 otros discos, 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 el #Paso 6 y el #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 usando 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.