[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mdadm



Perdonami ma non sono per nulla convinto.

----------------- SERVER con RAID HW controller IBM --------
server1:~# fdisk -l

Disk /dev/sda: 36.3 GB, 36398825472 bytes
255 heads, 63 sectors/track, 4425 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000e99de

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        4238    34041703+  83  Linux
/dev/sda2            4239        4425     1502077+   5  Extended
/dev/sda5            4239        4425     1502046   82  Linux swap / Solaris

Disk /dev/sdb: 293.5 GB, 293597741056 bytes
255 heads, 63 sectors/track, 35694 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       24316   195318238+  83  Linux
/dev/sdb2           24317       35694    91393785   83  Linux
server1:~# uname -a
Linux server1.[omissis] 2.6.26-2-686 #1 SMP Thu Jan 27 00:28:05 UTC 2011 i686 GNU/Linux

server1:~# cat /proc/mdstat
cat: /proc/mdstat: No such file or directory


server1:~#  lsmod | grep md
server1:~#


----------------- SERVER con RAID SW controller IBM no RAID --------
mail:~# fdisk -l

Disk /dev/sda: 36.4 GB, 36362519040 bytes
255 heads, 63 sectors/track, 4420 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005248e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        4233    34001541   83  Linux
/dev/sda2            4234        4420     1502077+   5  Extended
/dev/sda5            4234        4420     1502046   82  Linux swap / Solaris

Disk /dev/sdb: 36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        4427    35559846   fd  Linux raid autodetect

Disk /dev/sde: 36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1        4427    35559846   fd  Linux raid autodetect

Disk /dev/sdd: 36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xe64aa800

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1        4427    35559846   fd  Linux raid autodetect

Disk /dev/sdc: 36.4 GB, 36420075008 bytes
255 heads, 63 sectors/track, 4427 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1        4427    35559846   fd  Linux raid autodetect

Disk /dev/md0: 72.8 GB, 72826355712 bytes
2 heads, 4 sectors/track, 17779872 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 65536 bytes / 131072 bytes
Disk identifier: 0x00000000

mail:~# cat /proc/mdstat
Personalities : [raid10]
md0 : active raid10 sdb1[0] sde1[3] sdd1[2] sdc1[1]
      71119488 blocks 64K chunks 2 near-copies [4/4] [UUUU]

unused devices: <none>

mail:~# lsmod | grep md
md_mod                 67377  2 raid10

-----
Cosa vuol dire?
Un sistema che ha dei dischi Raid HW (Es RAID 5 con 3 dischi da 200G) mostra al kernel un solo disco come sostieni anche tu ma la partizione sopra potrebbe essere una sola ed avere la dimensione dell'intero disco logico (nel caso di RAID 5 è pari al doppio di uno dei 3 componenti dell'array - nel caso 400G) gestito dal controller.

Ora se smonto un disco dall'array (RAID 5 - 200G) e lo metto in una macchina che non ha il controller RAID questa macchina dove trova i dati mancanti (gli altri 200G) che sono sugli altri dischi dell'array?
Non solo.
Se ho un controller RAID HW non carico nemmeno i moduli md nel kernel che invece devo caricare in caso di RAID SW.

Ovviamente fake RAID e RAID SW hanno margine di compatibilità ma non ho alcuna esperienza conclusa felicemente in merito quindi non ho come certificare questa possibilità che, però, non nego a priori.

Maurizio

Il 15/06/2011 14:52, dea ha scritto:

      
Sono pressochè sicuro che un disco in un array RAID HW non è 
compatibile con la struttura RAID SW di Linux. D'altro canto credo 
che una struttura RAID SW non del kernel di Linux ma magari 
proprietaria rischia anche essa di essere incopatibile.

Ergo se ci sono dati importanti fanne backup dal sistema prima di 
distruggere il RAID non Linux.
Il RAID SW di Linux parte dal presupposto che le partizioni siano 
marcate con il tipo Raid Autodetect (Hex FD se non vado errato)
 mentre magari altre soluzioni SW non usano questo tipo di marking 
anche per questo credo che Linux riconosca un disco proveniente da 
una simile struttura come un normalissimo disco.

Maurizio
Un disco di un RAID HW è esattamente equivalente ad utilizzare un singolo
disco fisico.
Usare un RAID-6 su 12 dischi (gestisto in HW) è *esattamente identico* ad
usare *un solo* disco fisico (a parte i diversi moduli kernel di gestione
dell'HW), il kernel non vede null'altro che il disco logico, quello che c'è
dietro quel livello è totalmente compartimentato (ed è compito del controller
gestirlo).

La differenza che intercorre tra un fake RAID ed un controller senza supporto
RAID (usato per un RAID SW) è solo che il primo implementa alcune funzioni,
alleggerisce quindi il lavoro da parte del software, ma alla fine nulla
cambia, sempre con MD si deve lavorare.

La differenza è tra il mondo "HW RAID" e "fake RAID && SW RAID".

:)

Luca




Reply to: