Sziasztok,
Két raid-et pakoltunk össze, a gépben elérhető véges mennyiségű kábel miatt mindkettőt első körben egy lemezes RAID1-ként, amit mihelyt rajta volt minden aminek lenni kell, kibővítettünk két-két diszkre. Újraindítás után minden működik, viszont feltűnt hogy az mdadm infó fura dolgokat ír - a detail és az examine kimenete nem egészen egyezik, viszont a két raid-tömb neve valamiért megegyezik:
# mdadm --detail --scan
ARRAY /dev/md/1 metadata=1.2 name=hostname:2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6
ARRAY /dev/md/2 metadata=1.2 spares=1 name=hostname:2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909
# mdadm --examine --scan
ARRAY /dev/md/2 metadata=1.2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909 name=hostname:2
ARRAY /dev/md/2 metadata=1.2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6 name=hostname:2
Az /etc/mdadm/mdadm.conf így néz ki:
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers
# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY /dev/md/0 metadata=1.0 UUID=794d60c2:69b0a0cf:f1bb71a6:5f09afb3 name=debian:0
ARRAY /dev/md/1 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6
Minden rendben látszik működni, és reboot után se volt probléma, de azért egyrészt zavarja az ember OCD-jét, másrészt félő hogy egy esetleges bővítésnél lesz valami gond... Szerintetek mi lehet ez?
- 467 megtekintés
Hozzászólások
proc/mdstat mit mond?
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Vidak kollega helyett es/vagy neveben irom -- konkretan most epp ezt mondja a /proc/mdstat a kerdeses gepukon:
apal@vas:~$ cat /proc/mdstat
Personalities : [raid1] [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid10]
md2 : active raid5 sdd1[0] sdc1[1]
7813894144 blocks super 1.2 level 5, 64k chunk, algorithm 2 [2/1] [U_]
[=============>.......] recovery = 67.7% (5292732312/7813894144) finish=306.7min speed=136972K/sec
bitmap: 1/59 pages [4KB], 65536KB chunk
md1 : active raid1 sda2[0] sdb2[1]
488152064 blocks super 1.2 [2/2] [UU]
bitmap: 2/4 pages [8KB], 65536KB chunk
unused devices: <none>
- A hozzászóláshoz be kell jelentkezni
md2 raid5-nek tűnik
"After successfully ignoring Google, FAQ's, the board search and leaving a undecipherable post in the wrong sub-forum don't expect an intelligent reply."
- A hozzászóláshoz be kell jelentkezni
Az! Viszont nemsokara bovitjuk ha minden jol megy!
- A hozzászóláshoz be kell jelentkezni
Ezt részleteznéd picit...?
- A hozzászóláshoz be kell jelentkezni
Az a terv hogy a RAID5-be teszünk még legalább egy diszket, ha van rá összeg.
- A hozzászóláshoz be kell jelentkezni
És ha nem lesz rá pénz? Egyébként van rajta adat?
- A hozzászóláshoz be kell jelentkezni
Amíg nincs rá összeg addig marad két lemezes RAID5 (ami elvileg így azonos egy RAID1-gyel). Van rajta adat, persze.
- A hozzászóláshoz be kell jelentkezni
Ööö, most RAID5 terén vagy tudsz valamit, amit én nem, vagy én tudok valamit, amit meg te nem... Nézzük. Nekem még mindig az van meg, hogy RAID5 az minimum 3 diszk és nagyon nem tükrözéssel oldja meg a redundanciát, mint a RAID1. Tehát a két lemezzel kb ez egy féllábas RAID5. Nem is értem, hogy sikerült ennyiből összeraknotok. Bár, mondjuk sosem próbálkoztam ilyesmivel :)
De lehet, hogy annyit változott már a tudomány, hogy a mai állása szerint a két diszkes RAID5 = RAID1 állítás teljesen rendben van. (De szerintem meg nem.)
Igazából ti dolgotok, mit csináltok, csak nehogy meglepetés legyen a végén belőle. :)
- A hozzászóláshoz be kell jelentkezni
Na ez motoszkált bennem is, bár ha azt nézem, hogy n-1 adatblokkhoz jön egy checksum blokk, még jó is lehet - csak a bővíthetőségében nem vagyok biztos... Bár ugye aki raid5-öt használ, annak kell, hogy legyen visszatölthető mentése :-)
- A hozzászóláshoz be kell jelentkezni
Persze hogy lehet:
501 dd if=/dev/zero of=/data/root/loop0 bs=1M count=128
502 dd if=/dev/zero of=/data/root/loop1 bs=1M count=128
503 dd if=/dev/zero of=/data/root/loop2 bs=1M count=128
504 losetup /dev/loop0 /data/root/loop0
505 losetup /dev/loop1 /data/root/loop1
506 losetup /dev/loop2 /data/root/loop2
507 cat /proc/mdstat
508 mdadm --create /dev/md42 -l 5 -n 2 /dev/loop[01]
509 cat /proc/mdstat
510 cat /proc/mdstat
511 cat /proc/mdstat
512 cat /proc/mdstat
513 mdadm --add /dev/md42 /dev/loop2
514 mdadm --grow /dev/md42 -l 5 -n 3
515 cat /proc/mdstat
516 cat /proc/mdstat
517 cat /proc/mdstat
518 cat /proc/mdstat
Bár ugye aki raid5-öt használ, annak kell, hogy legyen visszatölthető mentése :-)
valoban :)
- A hozzászóláshoz be kell jelentkezni
És tényleg :)
mkfs.xfs /dev/md42
mount /dev/md42 /mnt
df -hlp /mnt
mdadm --add /dev/md42 /dev/loop2
mdadm --grow /dev/md42 -l 5 -n 3
xfs_growfs /dev/md42
df -hlp /mnt
- A hozzászóláshoz be kell jelentkezni
OK, most már értem, hogy sikerült összerakni.
De én még mindig le vagyok ott ragadva, hogy ha jól okoskodom akkor ez:
- 1 diszknyi tárhely 2 diszken
- hibatűrése 0 (sőt, duplázva van az esélye a sérülésre)
- a többihez viszonyítva rossz performancia
- a helyzet "normalizálódása" bizonytalan (ha lesz rá pénzmag)
Ennél az én meglátásom szerint a RAID0 is jobb lenne (2 diszknyi hely, jobb performancia), de egy RAID1 tuti.
(De kérem javítsatok ki, ha bármiben is tévedek.)
- A hozzászóláshoz be kell jelentkezni
2 diszkre csakis raid1, a raid5 öntökön szúrás 3 lemez + spare nélkül.
- A hozzászóláshoz be kell jelentkezni
+backup nélkül.
- A hozzászóláshoz be kell jelentkezni
Szamold ki a matekjat (paritasok, vandermonde-matrix helyett diagonalis + egysegsor az [n+1]x[n]-es matrixban, stb), es kijon hogy egy ketdiszkes raid5 meg egy ketdiszkes raid1 egzaktul ugyanaz. Marmint nemcsak redundancia szempontjabol hanem fizikailag is ugyanugy fog kinezni az adat.
(( Sot, egy 3 diszkes raid6 is ugyanaz lesz mint egy 3 diszkes raid1 ha jol szamolom es ha galois-testek feletti hatvanyozassal epitik fel a [n+2]x[n]-es matrix utolso oszlopat. [...] szerk: mondjuk ettol fuggetlenul maga az mdadm nem engedi letrehozni... de a matekja ugyanaz. ))
Es ott a peldaszkript, a hibatureset is tudod tesztelni (egy loop-ot kirugni nem olyan nehez :)). Jo ez.
Amit (meg) nem tud az mdadm/md-layer az a raid1 -> raid5 reshaping. Ugyhogy marcsak emiattis igy erdemes ezt csinalni.
- A hozzászóláshoz be kell jelentkezni
Tehát: 2 diszk RAID5, abból RAID1, abból újra RAID5, ahhoz +1 diszk és azt már nem tudom megoldani, hogy abból -1 diszk és újra RAID1 legyen. Egész az utolsó pontig sikerült a fájlokat élve tartanom. A 3 lemezes RAID5-ből nem tudok 2 lemezest varázsolni újra.
Még egy kicsit agyalok rajta, mert viccesen hangzana, ha meg lehetne csinálni, de aztán ráhagyom.
(Viszont így a doksikat nézve újra elborzadtam rajta, hogy az írási tempója milyen gyalázatos.)
- A hozzászóláshoz be kell jelentkezni
hibatűrése 0 (sőt, duplázva van az esélye a sérülésre)
Ennél az én meglátásom szerint a RAID0 is jobb lenne (2 diszknyi hely, jobb performancia), de egy RAID1 tuti.
A fenti szkript kiegeszitese:
# cat /proc/mdstat
Personalities : [raid1] [raid0] [linear] [multipath] [raid6] [raid5] [raid4] [raid10]
md42 : active raid5 loop1[2] loop0[0]
130048 blocks super 1.2 level 5, 512k chunk, algorithm 2 [2/2] [UU]
# dd if=/dev/urandom bs=1M count=64 of=test.bin
# md5sum test.bin
46a763ef483d1ad52038125919fe5078 test.bin
# dd if=test.bin of=/dev/md42
# sync
# mdadm --stop /dev/md42
# dd if=/dev/loop1 bs=1M skip=1 count=64 2>/dev/null | md5sum
46a763ef483d1ad52038125919fe5078 -
# dd if=/dev/loop0 bs=1M skip=1 count=64 2>/dev/null | md5sum
46a763ef483d1ad52038125919fe5078 -
- A hozzászóláshoz be kell jelentkezni
Hm, thx! Megnézem majd, eljátszom vele ha lesz egy kis időm. Hátha okosabb leszek. (Az néha nem árt.)
Bevallom töredelmesen, sosem szimpatizáltam az 5-el, szoftveresen egy helyen használom: otthon a gyerekek meséi vannak rajta. 4 diszk, ha elszáll, i.j. (Azért, fejfájást kerülendő van a fiókban pár cold-spare) De ez is olyan döntés volt, amit napokig forgattam magamban, hogy jó lesz-e nekem. Hát, helyem rengeteg lett, a többit meg majd meglátjuk. Idővel kiderül.
- A hozzászóláshoz be kell jelentkezni
hat ez alapjan az mdadm.conf szar. generalj ujat /usr/share/mdadm/mkconf, ha jonak tunik minden akkor az outputot ird bele az mdadm.conf-ba. utana kell update initramfs.
ha a mount uuiddel megy, akkor at is nevezheted md0,md1-re oket.
mondjuk az a ket lemezes raid5 eleg erdekes....
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!
- A hozzászóláshoz be kell jelentkezni
Eztet generalta le:
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY /dev/md/2 metadata=1.2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909 name=vas:2
ARRAY /dev/md/2 metadata=1.2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6 name=vas:2
# This configuration was auto-generated on Fri, 22 Nov 2019 22:00:27 +0100 by mkconf
Azaz ez sem jo, duplazza az md2-t. Pont ugyanugy mint az `mdadm --examine --scan`. Mondjuk a forraskodjat elnezve pontosan ez is ezt csinalja :)
Ami meg feltunt, hogy az `mdadm --detail /dev/sd*` ill az `mdadm --detail /dev/md*` is azt mondja, hogy:
# mdadm --detail /dev/md1
[...]
Name : vas:2 (local to host vas)
Azaz mar mintha a diszken levo metaadat lenne rossz. Lehet hogy azt kene inkabb fixalni...?
- A hozzászóláshoz be kell jelentkezni
Egy kis update:
Közben rájöttem hogy az /etc/fstab-ban nem volt benne a /boot, így az update-initramfs eleve hibát dobott. Az mdadm.conf-ban még egy régi kötet szerepelt - ezeket javítottam, az mdadm.conf-ot átírtam arra ami a helyes lenne, reboot, de a helyzet ugyanaz:
root@hostname:~# mdadm --detail --scan
ARRAY /dev/md/1 metadata=1.2 name=hostname:2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6
ARRAY /dev/md/2 metadata=1.2 name=hostname:2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909
root@hostname:~# mdadm --examine --scan
ARRAY /dev/md/2 metadata=1.2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6 name=hostname:2
ARRAY /dev/md/2 metadata=1.2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909 name=hostname:2
root@hostname:~# cat /etc/mdadm/mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY /dev/md/1 metadata=1.2 UUID=5ff16efb:5cd38c1b:8d9e76f1:e6b0e0c6 name=hostname:1
ARRAY /dev/md/2 metadata=1.2 UUID=cae71073:523ffed2:c7c18ea2:3aab6909 name=hostname:2
# This configuration was auto-generated on Mon, 25 Nov 2019 12:20:28 +0100 by mkconf
Így nem tudom, érdemes erőltetni az update-initramfs
-t? Amit apal kolléga javasolt - a metaadat javítása - meg lehet oldani valahogy úgy hogy a RAID-eken levő adatok rendben megmaradjanak?
- A hozzászóláshoz be kell jelentkezni