[RISOLTO] mdadm e write mostly

Discussioni relative a Debian e Linux
Rispondi
sirio81
Hero Member
Hero Member
Messaggi: 1104
Iscritto il: 13/02/2006, 5:04
Contatta:

[RISOLTO] mdadm e write mostly

Messaggio da sirio81 »

Ho un raid 1 tra un ssd ed un disco meccanico.
Volgio impostare il disco meccanico con l'opzione write mostly in modo da beneficiare al massimo della velocità di lettura dell'ssd.
Seguo questa procedura ma ottendo errore.

Codice: Seleziona tutto

mdadm /dev/md0 --fail /dev/sdb1
mdadm: set /dev/sdb1 faulty in /dev/md0
mdadm /dev/md0 --remove /dev/sdb1
mdadm: hot removed /dev/sdb1 from /dev/md0
mdadm --zero-superblock /dev/sdb1 
mdadm /dev/md0 --add /dev/sdb1 -W /dev/sdb1
mdadm: added /dev/sdb1
mdadm: Cannot open /dev/sdb1: Device or resource busy
Nota: ho provato prima senza fare --zero-superblock e poi anche con --zero-superblock e resituisce sempre resource busy.

L'array fa uso intent bitmap, non so se questo può avere a che fare, ma non credo proprio dato che riguarda solo le operazioni di scrittura.

(Attulmente l'array si sta sincronizzando)

Codice: Seleziona tutto

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       2       8       17        1      spare rebuilding   /dev/sdb1
Debian jessie 64 bit.

Cosa ne pensate?
Ultima modifica di sirio81 il 24/08/2016, 9:22, modificato 1 volta in totale.
Aki
Hero Member
Hero Member
Messaggi: 9970
Iscritto il: 27/12/2007, 16:59

Re: mdadm e write mostly

Messaggio da Aki »

Leggendo la pagina di manuale del comando mdadm, l'opzione -W sembra non accettare argomenti. Pertanto, la sintassi del comando:

Codice: Seleziona tutto

mdadm /dev/md0 --add /dev/sdb1 -W /dev/sdb1
dovrebbe essere:

Codice: Seleziona tutto

mdadm /dev/md0 -W --add /dev/sdb1
Se confermato, il messaggio di errore sarebbe determinato da questo e, quindi, dal passaggio due volte dell'argomento /dev/sdb1 al comando --add
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀
sirio81
Hero Member
Hero Member
Messaggi: 1104
Iscritto il: 13/02/2006, 5:04
Contatta:

Re: mdadm e write mostly

Messaggio da sirio81 »

Hai ragione!
Mea culpa! Grazie mille.
sirio81
Hero Member
Hero Member
Messaggi: 1104
Iscritto il: 13/02/2006, 5:04
Contatta:

Re: [RISOLTO] mdadm e write mostly

Messaggio da sirio81 »

Mi chiedo però se c'è un modo per verificare che sdb1 è impostato come write mostly

Codice: Seleziona tutto

root@pve:~# cat /sys/block/md0/md/dev-sdb1/state 
in_sync

root@pve:~# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Fri Aug 19 11:25:11 2016
     Raid Level : raid1
     Array Size : 234298944 (223.44 GiB 239.92 GB)
  Used Dev Size : 234298944 (223.44 GiB 239.92 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Wed Aug 24 11:57:03 2016
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           Name : pve:0  (local to host pve)
           UUID : 83f0d70f:7acb94bc:0b04b51e:08d00d93
         Events : 1924

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       2       8       17        1      active sync   /dev/sdb1
Aki
Hero Member
Hero Member
Messaggi: 9970
Iscritto il: 27/12/2007, 16:59

Re: [RISOLTO] mdadm e write mostly

Messaggio da Aki »

Mi chiedo però se c'è un modo per verificare che sdb1 è impostato come write mostly
Il codice sorgente di mdadm lo prevede: http://sources.debian.net/src/mdadm/3.4 ... l=432#L432.

Si tratta di una informazione che si trova nel superblock del RAID di tipo 1. L'informazione potrebbe essere fornita tramite l'opzione --examine del comando mdadm; dalla pagina di manuale del comando mdadm:
For Misc mode:
-Q, --query
Examine a device to see (1) if it is an md device and (2) if it is a component of an md array. Information about what is discovered is presented.
-D, --detail
Print details of one or more md devices.
[..]
-E, --examine
Print contents of the metadata stored on the named device(s). Note the contrast between --examine and --detail. --examine applies to devices which are components of an array, while --detail applies to a whole array which is currently active.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀
sirio81
Hero Member
Hero Member
Messaggi: 1104
Iscritto il: 13/02/2006, 5:04
Contatta:

Re: [RISOLTO] mdadm e write mostly

Messaggio da sirio81 »

Grazie della risposta.
Con --examine non mi sembra di distinguere l'opzione write mostly.

Codice: Seleziona tutto

root@pve:~# mdadm --examine /dev/sdb1          
/dev/sdb1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : 83f0d70f:7acb94bc:0b04b51e:08d00d93
           Name : pve:0  (local to host pve)
  Creation Time : Fri Aug 19 11:25:11 2016
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 468600832 (223.45 GiB 239.92 GB)
     Array Size : 234298944 (223.44 GiB 239.92 GB)
  Used Dev Size : 468597888 (223.44 GiB 239.92 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=2944 sectors
          State : clean
    Device UUID : 110c35cf:1612d59a:719f8149:a5130cb3

Internal Bitmap : 8 sectors from superblock
    Update Time : Mon Sep  5 08:27:53 2016
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : af82948a - correct
         Events : 1944


   Device Role : Active device 1
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)


mdadm --examine /dev/sda1 
/dev/sda1:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : 83f0d70f:7acb94bc:0b04b51e:08d00d93
           Name : pve:0  (local to host pve)
  Creation Time : Fri Aug 19 11:25:11 2016
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 468597903 (223.44 GiB 239.92 GB)
     Array Size : 234298944 (223.44 GiB 239.92 GB)
  Used Dev Size : 468597888 (223.44 GiB 239.92 GB)
    Data Offset : 262144 sectors
   Super Offset : 8 sectors
   Unused Space : before=262056 sectors, after=15 sectors
          State : clean
    Device UUID : c777e9b9:234e6f13:1d6f0c14:c8120d1a

Internal Bitmap : 8 sectors from superblock
    Update Time : Mon Sep  5 08:29:21 2016
  Bad Block Log : 512 entries available at offset 72 sectors
       Checksum : 445d0000 - correct
         Events : 1944


   Device Role : Active device 0
   Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
Aki
Hero Member
Hero Member
Messaggi: 9970
Iscritto il: 27/12/2007, 16:59

Re: [RISOLTO] mdadm e write mostly

Messaggio da Aki »

Dal codice sorgente che ti ho inviato, la presenza del flag è evidenziata dopo il messaggio "Internal Bitmap : %ld sectors from superblock\n" e prima del messaggio "Update Time : %.24s\n", ctime(&atime)". Se non compare, è ragionevole ipotizzare che il flag non sia attivo.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀
sirio81
Hero Member
Hero Member
Messaggi: 1104
Iscritto il: 13/02/2006, 5:04
Contatta:

Re: [RISOLTO] mdadm e write mostly

Messaggio da sirio81 »

Confermo.
Ho fatto dei test sul mio portatile con dei device di loop e questo è il risultato:

Codice: Seleziona tutto

mdadm --add /dev/md0 -W /dev/loop0
mdadm: re-added /dev/loop0

mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Sep  5 11:03:07 2016
     Raid Level : raid1
     Array Size : 102272 (99.89 MiB 104.73 MB)
  Used Dev Size : 102272 (99.89 MiB 104.73 MB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Mon Sep  5 11:14:18 2016
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           Name : asuspro:0  (local to host asuspro)
           UUID : 2c0c9338:5fdfbe34:3e7bbb14:e39841b4
         Events : 62

    Number   Major   Minor   RaidDevice State
       2       7        0        0      active sync writemostly   /dev/loop0
       1       7        1        1      active sync   /dev/loop1
Grazie Aki,
Aki
Hero Member
Hero Member
Messaggi: 9970
Iscritto il: 27/12/2007, 16:59

Re: [RISOLTO] mdadm e write mostly

Messaggio da Aki »

Felice di esserti stato d'aiuto.
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ Debian - The universal operating system
⢿⡄⠘⠷⠚⠋⠀ https://www.debian.org
⠈⠳⣄⠀
Rispondi