mdadm: Migrando o Raid do Ubuntu para o CentOS – parte 06

Vamos ver o quão flexível é o raid criado pelo mdadm. Iremos retirar os 3 discos que fazem parte do nosso array no ubuntu e conectá-los ao CentOS.

Obs.: Deduzimos aqui que o mdadm já esteja instalado no CentOS.

Como está Atualmente nosso Ubuntu

Ubuntu: Temos os seguintes dispositivos 

elder@ubuntu:~/meuRaid1$ lsblk -f
NAME    FSTYPE            LABEL       UUID                                 MOUNTPOINT
sda                                                                        
└─sda1  ext4              hdPrincipal 060e460d-9ae2-41ac-bb4f-473c8438c0ba /
sdb                                                                        
└─sdb1  linux_raid_member ubuntu:0    3445794a-0113-23c0-d60d-fe5354bce7b4 
  └─md0 ext4                          7bfdc3fb-9599-4f2a-a74a-c9814e3c2e1a /home/elder/meuRaid1
sdc                                                                        
└─sdc1  linux_raid_member ubuntu:0    3445794a-0113-23c0-d60d-fe5354bce7b4 
  └─md0 ext4                          7bfdc3fb-9599-4f2a-a74a-c9814e3c2e1a /home/elder/meuRaid1
sdd                                                                        
└─sdd1  linux_raid_member ubuntu:0    3445794a-0113-23c0-d60d-fe5354bce7b4 
  └─md0 ext4                          7bfdc3fb-9599-4f2a-a74a-c9814e3c2e1a /home/elder/meuRaid1
sr0                                                                        

Acima vemos que temos 3 partições: sdb1, sdc1 e sdd1. Todas fazem parte do array. Teremos que desligar nosso computador ubuntu e retirar os discos e inseri-los dentro do outro computador com  o CentOS.

 

Ubuntu: Temos raid1 que será movido para o CentOS.

veja como detalhes atuais do nosso raid

elder@ubuntu:~$ sudo mdadm --detail /dev/md0 
[sudo] senha para elder: 
/dev/md0:
           Version : 1.2
     Creation Time : Wed Aug 12 15:53:15 2020
        Raid Level : raid1
        Array Size : 49152 (48.00 MiB 50.33 MB)
     Used Dev Size : 49152 (48.00 MiB 50.33 MB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Fri Aug 21 11:40:34 2020
             State : clean 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync

              Name : ubuntu:0  (local to host ubuntu)
              UUID : 3445794a:011323c0:d60dfe53:54bce7b4
            Events : 26

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       33        1      active sync   /dev/sdc1

       2       8       49        -      spare   /dev/sdd1

Possuimos 3 dispositivos.  O sdb1 e sdc1 estão espelhados. O sdd1 é um dispositivo reserva(spare).

Ubuntu: Criamos alguns arquivos dentro raid

elder@ubuntu:~/meuRaid1$ ls 
arquivos0.txt  arquivos2.txt  arquivos4.txt  lost+found
arquivos1.txt  arquivos3.txt  arquivos5.txt  texto01.txt

 

Como está Atualmente nosso CentOS 8

O CentOs, versão 8, foi previamente instalado.

 

CentOS: Não contém array criado, conforme conteúdo do /proc/mdstat abaixo:

[elder@empresa200 ~]$ cat /proc/mdstat 
Personalities : 
unused devices: <none>

Temos os seguintes discos

[elder@empresa200 ~]$ lsblk  -f
NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
sda                                                                  
├─sda1      ext4              c2b298dd-2cd7-4e45-8e42-872322cb077f   /boot
└─sda2      LVM2_member       OhwQVZ-6h9i-nqAZ-Vfsg-3glR-sihd-8WIAR7 
  ├─cl-root xfs               f1996747-6d88-47c7-9aa1-f63fb4d7ddcf   /
  └─cl-swap swap              a5be8d7e-769f-41dc-9139-3840256b8844   [SWAP]

 

Movendo os 3 Discos do Ubuntu para o CentOS

  1. Desconectei os cabos dos 3 discos do Ubuntu e Conectei no CentOS. Bom, logicamente que é apenas uma simulação, um faz de contas, já que estou usando virtualbox.
  2. O CentOS.O que antes estava assim
    [elder@empresa200 ~]$ lsblk  -f
    NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
    sda                                                                  
    +-sda1      ext4              c2b298dd-2cd7-4e45-8e42-872322cb077f   /boot
    +-sda2      LVM2_member       OhwQVZ-6h9i-nqAZ-Vfsg-3glR-sihd-8WIAR7 
      +-cl-root xfs               f1996747-6d88-47c7-9aa1-f63fb4d7ddcf   /
      +-cl-swap swap              a5be8d7e-769f-41dc-9139-3840256b8844   [SWAP]

    Agora está assim. Veja abaixo em laranja que os 3 discos foram  reconhecidos pelo kernel. Outro detalhe é que o array que no ubuntu estava como md0 está agora como md126. Mas isso não interfere no funcionamento

    [elder@empresa200 ~]$ lsblk 
    NAME        MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
    sda           8:0    0    8G  0 disk  
    ├─sda1        8:1    0    1G  0 part  /boot
    └─sda2        8:2    0    7G  0 part  
      ├─cl-root 253:0    0  6,2G  0 lvm   /
      └─cl-swap 253:1    0  820M  0 lvm   [SWAP]
    sdb           8:16   0   50M  0 disk  
    └─sdb1        8:17   0   49M  0 part  
      └─md126     9:126  0   48M  0 raid1 
    sdc           8:32   0   50M  0 disk  
    └─sdc1        8:33   0   49M  0 part  
      └─md126     9:126  0   48M  0 raid1 
    sdd           8:48   0   50M  0 disk  
    └─sdd1        8:49   0   49M  0 part  
      └─md126     9:126  0   48M  0 raid1
  3.  Vemos usar “sudo mdadm –detail –scan” para pesquisarmos se há algum array. Veja que marquei de laranja a parte que diz que está inativo o array.
    [elder@empresa200 ~]$ sudo mdadm --detail --scan
    ARRAY /dev/md/ubuntu:0 metadata=1.2 spares=1 name=ubuntu:0 UUID=514b4e53:b2e0af33:586582ff:a3c81adc

    Olhando o arquivo  /proc/mdstat

    [elder@empresa200 ~]$ cat /proc/mdstat 
    Personalities : [raid1] 
    md126 : active raid1 sdd1[2](S) sdc1[1] sdb1[0]
          49152 blocks super 1.2 [2/2] [UU]
          
    unused devices: <none>
    

    Veja acima que o sdd1 está com o (S) que indica que ele é um spare(disco reserva)

  4. Vamos criar a pasta /work/raid
    [elder@empresa200 ~]$ sudo mkdir -p /work/raid
  5. Apague o arquivo /etc/mdadm/mdadm.conf
    [elder@empresa200 ~]$ sudo rm /etc/mdadm/mdadm.conf
  6. Insira os detalhes do nosso novo raid dentro de “/etc/mdadm/mdadm.conf”  usando “sudo mdadm –detail –scan | sudo tee -a /etc/mdadm/mdadm.conf
    [elder@empresa200 ~]$ sudo mdadm --detail --scan --verbose | sudo tee -a  /etc/mdadm/mdadm.conf
    ARRAY /dev/md/ubuntu:0 metadata=1.2 spares=1 name=ubuntu:0 UUID=514b4e53:b2e0af33:586582ff:a3c81adc
  7. Agora iremos montar  o raid
    [elder@empresa200 ~]$ sudo mount /dev/md126 /work/raid/
  8. Veja que os arquivos, criados no Ubuntu, estão dentro do array
    [elder@empresa200 ~]$ ls /work/raid/
    arquivos1.txt  arquivos2.txt  arquivos3.txt  arquivos4.txt  arquivos5.txt  lost+found

Inserindo o Dispositivo do Array dentro do /etc/fstab para que seja Montado Automaticamente durante o boot

  1. Veja qual o uuid de /dev/md126. Execute “blkid -o list
    [elder@empresa200 ~]$ blkid -o list
    device               fs_type   label      mount point              UUID
    -------------------------------------------------------------------------------------------------------
    /dev/mapper/cl-root  xfs                  /                        f1996747-6d88-47c7-9aa1-f63fb4d7ddcf
    /dev/sda2            LVM2_member          (não montado)           OhwQVZ-6h9i-nqAZ-Vfsg-3glR-sihd-8WIAR7
    /dev/sda1            ext4                 /boot                    c2b298dd-2cd7-4e45-8e42-872322cb077f
    /dev/sdb1            linux_raid_member ubuntu:0 (não montado)     514b4e53-b2e0-af33-5865-82ffa3c81adc
    /dev/sdc1            linux_raid_member ubuntu:0 (não montado)     514b4e53-b2e0-af33-5865-82ffa3c81adc
    /dev/sdd1            linux_raid_member ubuntu:0 (não montado)     514b4e53-b2e0-af33-5865-82ffa3c81adc
    /dev/mapper/cl-swap  swap                 [SWAP]                   a5be8d7e-769f-41dc-9139-3840256b8844
    /dev/md0             ext4                 (não montado)           ae6fbd34-57b6-4f38-a374-6f947597fa7d
    /dev/sr0                                  (não montado)
  2. Com o seu editor de texto preferido insira a seguinte linha dentro de /etc/fstab. Usarei o editor vim
    [elder@empresa200 ~]$ sudo vim /etc/fstab

    meu arquivo /etc/fstab ficou assim. Acrescentei a linha em laranja.

    # /etc/fstab
    # Created by anaconda on Mon Aug 17 09:49:39 2020
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk/'.
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
    #
    # After editing this file, run 'systemctl daemon-reload' to update systemd
    # units generated from this file.
    #
    /dev/mapper/cl-root     /                       xfs     defaults        0 0
    UUID=c2b298dd-2cd7-4e45-8e42-872322cb077f /boot                   ext4    defaults        1 2
    /dev/mapper/cl-swap     swap                    swap    defaults        0 0
    UUID=ae6fbd34-57b6-4f38-a374-6f947597fa7d        /work/raid      ext4  defaults  0  0     0

 

 

Cuidado ao editar /etc/fstab! qualquer palavra errada fará com que o sistema não inicialize.

 

Conclusão

É bem fácil mudar os discos de um array de entre computadores. Logicamente que esse artigo pode fazer parecer confuso mas isso é apenas porque tentamos detalhar os passos a passos.

Só tenha cuidado ao editar o /etc/fstab e também ao copiar o uuid do dispositivo array. Os campos do uuid têm que estar separados por tracos(-) e não dois pontos( : )

 

Leitor voraz e um dos administradores do GNU/Linux Brasil no Whatsapp, facebook, youtube e nesse dito site: www.gnulinuxbrasil.com.br

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *