Differences between revisions 3 and 8 (spanning 5 versions)
Revision 3 as of 2009-11-05 06:46:11
Size: 563
Editor: SamatJain
Comment:
Revision 8 as of 2019-05-18 06:04:09
Size: 1869
Editor: SamatJain
Comment: Create mdadm.conf
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

<<TableOfContents>>
Line 5: Line 7:
{{{#!highlight sh {{{#!highlight sh numbers=off
Line 7: Line 9:
sudo mdadm --create /dev/md5 --level=5 --raid-devices=3 /dev/sd[def]1 sudo mdadm --create /dev/md5 --level=5 --assume-clean --raid-devices=3 /dev/sd{d,e,f}1
Line 10: Line 12:
sudo mdadm --create /dev/md6 --level=10 -p f2 --raid-devices=2 /dev/sd[ik]1 sudo mdadm --create /dev/md6 --level=10 -p f2 --assume-clean --raid-devices=2 /dev/sd{i,k}1

# Save configuration (not necessary)
/usr/share/mdadm/mkconf > /new/etc/mdadm/mdadm.conf
}}}

== Write-intent bitmaps ==

[[https://raid.wiki.kernel.org/index.php/Bitmap|Write-intent bitmaps]] speed-up RAID resyncs significantly, at the expense of a little write performance.

{{{#!highlight sh
# Create write-intent bitmap
mdadm --grow --bitmap=internal /dev/mdX

# Remove write-intent bitmap
mdadm --grow --bitmap=none /dev/mdX
Line 19: Line 36:
{{{#!highlight sh {{{#!highlight sh numbers=off
Line 22: Line 39:

== Recovery ==

=== Inactive array ===

If an array comes out as inactive, e.g.:

{{{
md8 : inactive sdp1[0](S) sds1[4](S) sdx1[2](S) sdj1[1](S)
      7814054094 blocks super 1.2
}}}

Stop the array before we continue to work on it.

{{{#!highlight sh numbers=off
mdadm --stop /dev/md8
}}}

First, use examine the array components and figure out which component is out of sync (it's best to do this manually). Then, with the remaining components, reassemble the array. E.g. if /dev/sds1 was the bad device:

{{{#!highlight sh numbers=off
mdadm --assemble /dev/md8 /dev/sd{p,x,j}1 --force
}}}

to restart the array. If supposedly bad device is fine, go ahead and re-add it:

{{{#!highlight sh numbers=off
mdadm --manage /dev/md8 --add /dev/sds1
}}}

Creation

# RAID 5 array creation
sudo mdadm --create /dev/md5 --level=5 --assume-clean --raid-devices=3 /dev/sd{d,e,f}1

# Create a high-performance RAID10 array (2x read speed compared to RAID1)
sudo mdadm --create /dev/md6 --level=10 -p f2 --assume-clean --raid-devices=2 /dev/sd{i,k}1

# Save configuration (not necessary)
/usr/share/mdadm/mkconf > /new/etc/mdadm/mdadm.conf

Write-intent bitmaps

Write-intent bitmaps speed-up RAID resyncs significantly, at the expense of a little write performance.

   1 # Create write-intent bitmap
   2 mdadm --grow --bitmap=internal /dev/mdX
   3 
   4 # Remove write-intent bitmap
   5 mdadm --grow --bitmap=none /dev/mdX

Diagnosis

Examine array component

Displays superblock information, including last event, RAID UUID, other components, etc.

mdadm --examine /dev/sda1

Recovery

Inactive array

If an array comes out as inactive, e.g.:

md8 : inactive sdp1[0](S) sds1[4](S) sdx1[2](S) sdj1[1](S)
      7814054094 blocks super 1.2

Stop the array before we continue to work on it.

mdadm --stop /dev/md8

First, use examine the array components and figure out which component is out of sync (it's best to do this manually). Then, with the remaining components, reassemble the array. E.g. if /dev/sds1 was the bad device:

mdadm --assemble /dev/md8 /dev/sd{p,x,j}1 --force

to restart the array. If supposedly bad device is fine, go ahead and re-add it:

mdadm --manage /dev/md8 --add /dev/sds1


CategoryCheatSheet

SamatsWiki: CheatSheet/LinuxSoftwareRAID (last edited 2021-11-01 21:59:06 by SamatJain)