Návod: Zvětšení SW RAID 1 (mirror)

Máte softwarový mirror (mdadm --level 1) a dochází vám místo? Tento článek poskytne návod, jak vyměnit pevné disky za chodu systému za větší bez ztráty dat. Pochopitelně jako vždy, doporučuji aktualizovat zálohu – to už snad berete jako samozřejmost.

Výchozí stav

Máme vytvořený SW mirror na dvou diskách. Například příkazem:

mdadm --create /dev/md0 --level mirror --raid-devices 2 /dev/sdb1 /dev/sdc1

Tedy disky sdb, sdc jsou staré a malé, budeme je nahrazovat většími disky sdd, sde.

Přidání nových disků

Nejprve přidáme nové disky do pole (jako hot-spare). Tedy na diskách sdd a sde vytvoříme oddíly typu raid autodetect např nástrojem fdisk:

fdisk /dev/sdd

n – vytvoření partition (primární, číslo 1, zbytek odklepat – začátek na prvním sektoru, konec na posledním)
t – výběr ID, zadat fd
w – uložení partition tabulky na disk a aktualizace v kernelu.

Totéž pro disk sde. Pak přidáme nové oddíly do pole jako hot-spare:

mdadm /dev/md0 --add /dev/sdd1 /dev/sde1

Postupná výměna disků

Do pole máme přidané větší disky. Teď je možné odebrat původní disky. POSTUPNĚ, tedy odebrat jeden disk, počkat na synchronizaci pole a poté odebrat druhý disk.

Označení disku jako vadný. Toto způsobí resynchronizaci pole na jeden s hot-spare disků.

mdadm /dev/md0 --fail /dev/sdb1

Po resynchronizaci označíme i druhý z malých disků jako vadný:

mdadm /dev/md0 --fail /dev/sdc1

A staré disky z mirroru odstraníme:

mdadm /dev/md0 --remove /dev/sdb1 /dev/sdc1

Zvětšení pole

Teď přichází na řadu zvětšení pole. U mě z nějakého důvodu nefungovala automatická detekce velikosti nových disků, bylo tedy nutno zadat novou velikost pomocí parametru size. Velikost se zadává v KiB. A to je vše. Po té stačí zvětšil LVM případně systém souborů na daném poli.

mdadm /dev/md0 --grow --size 2096128
Příspěvek byl publikován v rubrice Linux, RAID. Můžete si uložit jeho odkaz mezi své oblíbené záložky.