Etiqueta: raid 1

Reemplazar disco de arreglo

En un Post anterior se hizo la instalación de un raid 1, ahora se mostrará como reemplazar uno de los discos cuando este falla, para este ejemplo se ha removido por completo uno de los discos que componían el arreglo y anexado su reemplazo

[tusysadmin@raid1 ~]$ sudo lsblk
 NAME            MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
 sr0              11:0    1 1024M  0 rom   
 vda             252:0    0    7G  0 disk  
 ├─vda1          252:1    0    1G  0 part  /boot
 └─vda2          252:2    0    6G  0 part  
   ├─centos-root 253:0    0  5.3G  0 lvm   /
   └─centos-swap 253:1    0  716M  0 lvm   [SWAP]
 vdb             252:16   0   20G  0 disk  
 vdc             252:32   0   20G  0 disk  
 └─vdc1          252:33   0   20G  0 part  
   └─md0           9:0    0   20G  0 raid1 /raid

Al monitorear el estado del arreglo se detecta que uno de los disco ha sido removido, pero la lectura y escritura de los archivos que se tienen montados en el sevidor siguen estando accesibles.

[tusysadmin@raid1 ~]$ sudo mdadm --detail /dev/md0
 /dev/md0:
            Version : 1.2
      Creation Time : Tue Jul  6 10:28:38 2021
         Raid Level : raid1
         Array Size : 20953088 (19.98 GiB 21.46 GB)
      Used Dev Size : 20953088 (19.98 GiB 21.46 GB)
       Raid Devices : 2
      Total Devices : 1
        Persistence : Superblock is persistent

        Update Time : Tue Jul  6 12:00:15 2021
              State : clean, degraded 
     Active Devices : 1
    Working Devices : 1
     Failed Devices : 0
      Spare Devices : 0

 Consistency Policy : resync

               Name : raid1:0  (local to host raid1)
               UUID : a0d3f752:fd91f8ac:e887109c:a39a9810
             Events : 147

     Number   Major   Minor   RaidDevice State
        -       0        0        0      removed
        1     252       33        1      active sync   /dev/vdc1

Mientras agrego el nuevo disco estaré enviando con un tail la salida del archivo audit.log a un archivo llamado logs, esto para similar la escritura en la carpeta en donde está construido el arreglo.

[tusysadmin@raid1 files]$ pwd
 /raid/files
 [tusysadmin@raid1 files]$ ls 
 CentOS-8.3.2011-x86_64-boot.iso  logs
 [tusysadmin@raid1 files]$ sudo tail -f /var/log/audit/audit.log >> logs

Mientras eso sucede en otra terminal, agregamos el nuevo disco.

sudo parted /dev/vdb mklabel msdos
sudo parted /dev/vdb mkpart primary ext4 0% 100%
sudo parted /dev/vdb set 1 raid on
sudo mdadm --manage /dev/md0 --add /dev/vdb1

Una vez agregado comenzará la recuperación del arreglo

[tusysadmin@raid1 ~]$ cat /proc/mdstat 
 Personalities : [raid1] 
 md0 : active raid1 vdb1[2] vdc1[1]
       20953088 blocks super 1.2 [2/1] [_U]
       [======>…………..]  recovery = 34.6% (7254144/20953088) finish=5.8min speed=39115K/sec

La recuperación tardará dependiendo del tamaño del arreglo, una vez terminado puede validarse con los comandos.

cat /proc/mdstat
sudo mdadm --detail /dev/md0

Crear RAID 1

El tener un RAID 1 es útil para conservar información replicada, de esta forma se evita perderla en caso de falla física de uno de los discos. Para este ejemplo se usaran dos discos de 20 G en la creación del arreglo, mismos que ya son detectados por la maquina virtual.

[tusysadmin@raid1 ~]$ sudo lsblk
 NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
 sr0              11:0    1 1024M  0 rom  
 vda             252:0    0    7G  0 disk 
 ├─vda1          252:1    0    1G  0 part /boot
 └─vda2          252:2    0    6G  0 part 
   ├─centos-root 253:0    0  5.3G  0 lvm  /
   └─centos-swap 253:1    0  716M  0 lvm  [SWAP]
 vdb             252:16   0   20G  0 disk 
 vdc             252:32   0   20G  0 disk 

Para usar estos dispositivos es necesario crear una tabla de particiones:

sudo parted /dev/vdb mklabel msdos
sudo parted /dev/vdc mklabel msdos 

Se crean las particiones y se marcan para usarse con la etiqueta de raid.

sudo parted /dev/vdb mkpart primary ext4 0% 100%
sudo parted /dev/vdb set 1 raid on
sudo parted /dev/vdc mkpart primary ext4 0% 100%
sudo parted /dev/vdc set 1 raid on 

Con esto, ambos discos están listos para crear el arreglo.

[tusysadmin@raid1 ~]$ sudo parted /dev/vdb print
 Model: Virtio Block Device (virtblk)
 Disk /dev/vdb: 21.5GB
 Sector size (logical/physical): 512B/512B
 Partition Table: msdos
 Disk Flags: 
 Numero  Inicio  Fin     Tamaño  Typo     Sistema de ficheros  Banderas
  1      1049kB  21.5GB  21.5GB  primary                       raid
 [tusysadmin@raid1 ~]$ sudo parted /dev/vdc print
 Model: Virtio Block Device (virtblk)
 Disk /dev/vdc: 21.5GB
 Sector size (logical/physical): 512B/512B
 Partition Table: msdos
 Disk Flags: 
 Numero  Inicio  Fin     Tamaño  Typo     Sistema de ficheros  Banderas
  1      1049kB  21.5GB  21.5GB  primary                       raid

Para crear el arreglo es necesario instalar el paquete mdadm, como se esta trabajando con CentOS usamos Yum.

sudo yum install mdadm -y

Para posteriormente crear la partición del arreglo.

sudo mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/vdb1 /dev/vdc1

Y montar la partición creada.

sudo mkfs.ext4 /dev/md0
sudo mkdir /raid
sudo mount /dev/md0 /raid

Finalmente se modifica el archivo /etc/fstab para montar la partición al encender la maquina, como root escribimos.

echo "/dev/md0   /raid   ext4   defaults 1 2" >> /etc/fstab

Para validar los detalles y el estado del arreglo recién creado usamos mdadm –detail /dev/md0.

[tusysadmin@raid1 ~]$ sudo mdadm --detail /dev/md0
 /dev/md0:
            Version : 1.2
      Creation Time : Tue Jul  6 10:28:38 2021
         Raid Level : raid1
         Array Size : 20953088 (19.98 GiB 21.46 GB)
      Used Dev Size : 20953088 (19.98 GiB 21.46 GB)
       Raid Devices : 2
      Total Devices : 2
        Persistence : Superblock is persistent

        Update Time : Tue Jul  6 10:43:14 2021
              State : clean 
     Active Devices : 2
    Working Devices : 2
     Failed Devices : 0
      Spare Devices : 0
  
 Consistency Policy : resync

               Name : raid1:0  (local to host raid1) 
               UUID : a0d3f752:fd91f8ac:e887109c:a39a9810        
             Events : 145 

     Number   Major   Minor   RaidDevice State  
        0     252       17        0      active sync   /dev/vdb1
        1     252       33        1      active sync   /dev/vdc1 

Al listar la lista de dispositivos de bloques, pueden observarse que aparece md0 dentro de las particiones iniciales.

[tusysadmin@raid1 ~]$ sudo lsblk
 NAME            MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
 sr0              11:0    1 1024M  0 rom   
 vda             252:0    0    7G  0 disk  
 ├─vda1          252:1    0    1G  0 part  /boot
 └─vda2          252:2    0    6G  0 part  
   ├─centos-root 253:0    0  5.3G  0 lvm   /
   └─centos-swap 253:1    0  716M  0 lvm   [SWAP]
 vdb             252:16   0   20G  0 disk  
 └─vdb1          252:17   0   20G  0 part  
   └─md0           9:0    0   20G  0 raid1 /raid
 vdc             252:32   0   20G  0 disk  
 └─vdc1          252:33   0   20G  0 part  
   └─md0           9:0    0   20G  0 raid1 /raid

En el siguiente Post se mostrará como reemplazar uno de los discos cuándo presentan una falla.

© 2025

Tema por Anders NorenArriba ↑