Mielőtt nekiállunk egy RAID összefűzésének, tájékozódjunk! Tudnunk kell, hogy hardveres (HwRaid) szoftveres (SoftRaid) RAID-ot fogunk-e használni. Az eljárás nem azonos, mert hardveres RAID esetében a RAID-vezérlőben (beállítóprogramja, külön BIOS-a, vagy egyes esetekben az alaplap, Laptop BIOS-ban kell beállítanunk a vezérlőt!
Hardveres RAID
Előnye a szoftveres RAID-al szemben, hogy nem lesz szükséged külön háttérprogramokra a RAID kezeléséhez mert indítás után a rendszer egy adattárolóként látja a RAID tömböket. Kernel csere, szoftveres anomáliák miatt soha nem fog szétesni a RAID-tömb. Nem lesznek kiugró IO folyamatok (CPU terhelések), stb..
Egyes hardveres RAID esetében a BIOS-ban csak a RAID módot tudjuk kiválasztani, a használatához külön meghajtóra van szükségünk.
Például: AMD RaidXpert2 amihez telepítenünk kell a dkms-rcraid
meghajtót. Gyári dokumentáció itt érthető el!
Fontos!
Ahhoz, hogy az AMD RAIDXpert2 megoldását használjuk, a rendszert vagy magát a telepítőt az alábbi kernel paraméterrel kell bebootolni:
0 1 2 | break=mount modprobe.blacklist=ahci,nvme |
Amennyiben megjelenési problémánk van, vagy sötétre vált a képernyő, akkor még a ‘nomodeset’ kacsolót is adjuk hozzá, így:
0 1 2 | break=mount modprobe.blacklist=ahci,nvme nomodeset |
A meghajtó telepítése Dinamikus Kernel Module (dkms) csomagból:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | # telepítsük a raid vezérlő meghajtót az AMD RAID esetén! telepites dkms-rcraid # A telepítési folyamat dkms-rcraid-0-20210115.1bP.x86_64.rpm telepítése Előkészítés... ###################################################### 1/1: dkms-rcraid ###################################################### + '[' -x /usr/sbin/dkms ']' + /usr/sbin/dkms add -m rcraid -v 0-20210115.1bP --rpm_safe_upgrade Creating symlink /var/lib/dkms/rcraid/0-20210115.1bP/source -> /usr/src/rcraid-0-20210115.1bP DKMS: add Completed. + /usr/sbin/dkms build -m rcraid -v 0-20210115.1bP Preparing kernel 5.10.1-desktop-1bP for module build: (This is not compiling a kernel, just preparing kernel symbols) Storing current .config to be restored when complete Running Generic preparation routine make mrproper... using /proc/config.gz make oldconfig.... make prepare.... Building module: cleaning build area.... make -j4 KERNELRELEASE=5.10.1-desktop-1bP KVERS=5.10.1-desktop-1bP.... cleaning build area.... cleaning kernel tree (make mrproper)....(bad exit status: 2) DKMS: build Completed. + /usr/sbin/dkms install -m rcraid -v 0-20210115.1bP Running module version sanity check. rcraid.ko.xz: - Installation - Installing to /lib/modules/5.10.1-desktop-1bP/dkms/drivers/scsi/ Adding any weak-modules depmod....... DKMS: install Completed. |
Szoftveres RAID
RAID eszközt akkor lehet összefűzni, ha az adathordozón a partíció típusa Linux RAID! A RAID partíciókat akkor formázhatjuk a szokásos partíciókra, ha már hozzá lettek adva egy RAID-hoz (md0).
A blackPanther OS-ben grafikus eszközökkel is létrehozhatunk és kezelhetünk RAID-tömböket. Indítsuk el a partíciókezelőt:
Rendszerbeállítások > Adathordozók > DiskDrake
Váltsuk át szakértő módba!
Szoftveres RAID ellenőrzése parancssorból
0 1 2 3 4 5 6 | cat /proc/mdstat Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 : active raid1 sdb1[0] sdc1[1] 2095040 blocks super 1.2 [2/2] [UU] [===>.................] resync = 19.7% (414656/2095040) finish=0.2min speed=138218K/sec |
Az mdadm használata parancssorból
Üzemmódok:
- Assemble
- „Elindítja” (láthatóvá teszi) a megadott tömböt
- Build
- Szuperblokkmentes tömböt rak össze
- Ilyenkor természetszerűen az első létrehozás és a későbbi újbóli elindítás ugyanaz a művelet
- Create
- Új (szuperblokkos) tömb létrehozása
- Follow/Monitor
- A megadott tömbök állapotát figyeli, reagál a változásokra
- Csak redundánds tömbökre van értelme
- Grow
- Újracsíkozás
- Manage
- Eszköz hozzáadása tömbhöz, kiszedése, hibásnak jelölése stb
- Misc
- „Egyéb”: pl. RAID szuperblokk törlése; információkérés
- akkor kell törölni a szuperblokkot, ha végleg el akarunk távolítani egy eszközt egy tömbből
- „Egyéb”: pl. RAID szuperblokk törlése; információkérés
Néhány tipikus felhasználás
Új tömb létrehozása
0 1 2 3 4 | mdadm --create -l1 -n2 -x1 /dev/md0 /dev/sd[abc]1 # RAID 1, 1 spare mdadm --create -l5 -n3 -x1 /dev/md0 /dev/sd[abcd]1 # RAID 5, 1 spare mdadm --create -l6 -n4 -x1 /dev/md0 /dev/sd[abcde]1 # RAID 6, 1 spare |
Degradált tömb létrehozása
(„Féllábúnak” vagy hiányosnak is mondják.)
A tényleges eszköznév helyére írjuk azt, hogy „missing”:
0 1 2 3 | mdadm --create -l5 -n3 /dev/md0 /dev/sda1 missing /dev/sdb1 mdadm --create -l6 -n4 /dev/md0 /dev/sda1 missing /dev/sdb1 missing |
Tömb összeillesztése
- Ha már egyszer korábban létrehoztuk, de a kernel még nem inicializálta:
0 1 2 | mdadm --assemble --auto=yes /dev/md0 /dev/sd[abc]1 |
- Ha hiányos, nem indul el magától, kell a --run:
0 1 2 | mdadm --assemble --auto=yes --run /dev/md0 /dev/sd[ab]1 |
- Vagy összerakás után külön elindíthatjuk:
0 1 2 | mdadm --run /dev/md0 |
- A /etc/mdadm/mdadm.conf-ban felsorolt összes tömb összeillesztése és elindítása (ilyesmit csinál az initramfs/initrd):
0 1 2 | mdadm --assemble --auto=yes --scan |
- Hiányos, piszkos tömb összeillesztése és elindítása (a konzisztencia így nem biztosított!):
0 1 2 3 | mdadm --assemble --auto=yes --force /dev/md0 /dev/sd[ab]1 mdadm --run /dev/md0 |
Tömbök leállítása
0 1 2 | mdadm --stop /dev/md0 |
- Vagy az összesé, ami a configban van:
0 1 2 | mdadm --stop --scan |
Tömbelemek hozzáadása
- Ha már fut a tömb:
0 1 2 | mdadm --add /dev/md0 /dev/sdc1 |
- Ha többet adunk hozzá, mint ahányból létrehozáskor állt, a többletből melegtartalék lesz.
Tömbelemek eltávolítása
- Először jelöljük hibásnak, amit ki akarunk venni:
0 1 2 | mdadm --fail /dev/md0 /dev/sdb1 |
- Ekkor elkezdi szinkronizálni a(z egyik) melegtartalékot
- Szedjük is ki a tömbből a hibásnak jelölt eszköz:
0 1 2 | mdadm --remove /dev/md0 /dev/sdb1 |
Hibás diszk cseréje
Ha a /dev/sdb failed állapotban van:
0 1 2 3 4 5 | mdadm --remove /dev/md0 /dev/sdb halt # ha nem hot-swappable... # diszkcsere mdadm --add /dev/md0 /dev/sdb |
Új aktív diszk hozzáadása RAID1-hez
- Már fusson a tömb, és:
0 1 2 3 | mdadm --grow -n3 /dev/md0 mdadm --add /dev/md0 /dev/sdc1 |
Aktív diszkek számának csökkentése RAID1-ben
0 1 2 3 4 | mdadm --fail /dev/md0 /dev/sdc1 mdadm --remove /dev/md0 /dev/sdc1 mdadm --grow -n2 /dev/md0 |
Meglevő fájlrendszer RAID1-esítése
- Bebootolunk egy live CD-ről (hogy biztosan ne írjon semmi a fájlrendszerbe, miközben másoljuk)
- Létrehozunk egy új, féllábú RAID1-et a második diszken
- Rámásoljuk az adatokat
- Hozzáadjuk a tömbhöz az első diszket
- Rebootolunk a szép új RAIDes fájlrendszerünkkel
Ha a /dev/sda1 a meglevő fájlrendszer és a /dev/sdb1 az új diszk, akkor:
0 1 2 3 4 5 6 7 8 9 10 11 | mdadm --create /dev/md0 -l1 -n2 /dev/sdb1 missing mkfs -t <type> /dev/md0 mount /dev/sda1 /mnt/sda1 mount /dev/md0 /mnt/md0 rsync -aHSA /mnt/sda1/. /mnt/md0/ vim /mnt/md0/etc/fstab vim /mnt/md0/boot/grub/menu.lst umount /mnt/md0 umount /mnt/sda1 mdadm --add /dev/md0 /dev/sda1 |
- Ezt amúgy lehetne helyben is, ha úgy 1 MB-tal összezsugorítanánk előtte a fájlrendszert, de azért nem ajánlott.
Meglevő fájlrendszer RAID5/6-ra helyezése
- Kb. mint fent, de:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # RAID5: mdadm --create /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 missing # _vagy_ RAID6: mdadm --create /dev/md0 -l6 -n4 /dev/sdb1 /dev/sdc1 /dev/sdd1 missing mkfs -t <type> /dev/md0 mount /dev/sda1 /mnt/sda1 mount /dev/md0 /mnt/md0 rsync -aHSA /mnt/sda1/. /mnt/md0/ vim /mnt/md0/etc/fstab vim /mnt/md0/boot/grub/menu.lst umount /mnt/sda1 umount /mnt/md0 mdadm --add /dev/md0 /dev/sda1 |
Tömb sorszámának átírása
Ha a /dev/mdX-ből mondjuk /dev/md4-et szeretnénk csinálni:
0 1 2 | mdadm --assemble /dev/md4 /dev/sd[abc]1 |
- Ezt meg fogja jegyezni, a továbbiakban az a tömb magától is md4 lesz
Kapcsolódó
Hozzászólások lezárva