RAID 1 három lemezzel

Régóta használok hardveres RAID 1-et két lemezzel. Valahol olvastam, hogy 3 lemezzel is lehetne használni a RAID 1-et, így ha egy kiesik, még mindig duplikálva vannak az adatok. Elvileg az olvasási sebessége is nagyobb lenne így. Az írási sebességét nem tudom, hogyan viszonyul a kétlemezes RAID 1-hez.

Lehet ilyet egyáltalán? Egy hardveres RAID vezérlőtől elvárható, hogy kezelje így a lemezeket? Van aki használ is 3 lemezes RAID 1-et? Mik a tapasztalatai?

Hozzászólások

Linuxos md-vel biztosan lehet, hardverest nem próbáltam. Nincs vele komoly tapasztalatom, átmenetileg volt csak így, diszkcsere miatt.

Gábriel Ákos

Szerkesztve: 2021. 09. 03., p – 10:53

A hardveres RAID vezérlőkön gyakran RAID 1E-nek hívják. (HPE Smart Array, LSI, ...)

Az írási sebességét nem tudom, hogyan viszonyul a kétlemezes RAID 1-hez

Írásnál az adatot az összes komponensre egyszerre ki kell írni. Az írási sebesség ezért ideális esetben 1 darab komponens írási sebességéhez közelít. (Ha a komponensen sebessége nem egyforma, akkor nyilván a leglassabb komponens fogja meghatározni a sebességet.)

Nalunk az egyik gepen 10 elemu raid1 (32G, a / particio) van (10 diszk, storage szerver; particio alapu raid device -ok; a maradek pedig raid60 -ba van szervezve)

md -vel keszult, sok-sok eve huzza.

Error: nmcli terminated by signal Félbeszakítás (2)

Lehet.

Ha ez a boot tömböd, akkor figyelj az MBR/UEFI-re is és a BIOS beállításra is, hogy ha az sda1 összefossa magát, tudjon boot-olni a következő diszkről is. Értelem szerűen, ez md raid-re vonatkozik. HW kártyánál ez nem lesz probléma (elvileg).

mdadm tudja: egy synology 4 diskes nasban ez a root alatti device raidje:

# mdadm --detail /dev/md9
/dev/md9:
        Version : 00.90.03
  Creation Time : Fri Aug 16 12:55:03 2013
     Raid Level : raid1
     Array Size : 530048 (517.71 MiB 542.77 MB)
  Used Dev Size : 530048 (517.71 MiB 542.77 MB)
   Raid Devices : 4
  Total Devices : 4
Preferred Minor : 9
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Fri Sep  3 11:53:36 2021
          State : active
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

           UUID : 2c55b666:30e1567e:36789466:31648601
         Events : 0.19756

    Number   Major   Minor   RaidDevice State
       0       8        1        0      active sync   /dev/sda1
       1       8       17        1      active sync   /dev/sdb1
       2       8       49        2      active sync   /dev/sdd1
       3       8       33        3      active sync   /dev/sdc1

A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

Szerkesztve: 2021. 09. 03., p – 12:38

Tudja a 3 diszkest. Van nekem is egy betegem 200 km-re. Ha lesz arra egyéb karbantartani való, akkor lesz diszk csere, hiszen még mindig 2 példányban tartalékolt.

$ cat /proc/mdstat

md1 : active raid1 sda2[3](F) sdb2[1] sdc2[2]
      976320 blocks super 1.2 [3/2] [UU_]
      
md0 : active raid1 sda1[3](F) sdb1[1] sdc1[2]
      9756544 blocks super 1.2 [3/2] [UU_]
 

Mint mondják itt a hozzáértők, lehet. Engem az érdekelne hogy miért?

3 diskkel már lehet raid 5-öt csinálni ami ((n-1)*méret)/n  kapacitást és jobb sebességet is ad. Bár lehet nem jól tudom, de ha már van 3 disk ez logikusabbnak tűnik.

// Hocus Pocus, grab the focus
winSetFocus(...)

http://c2.com/cgi/wiki?FunnyThingsSeenInSourceCodeAndDocumentation

a biztonság miatt. a kétdiszkes mirrorral/raid5tel az az egyik baj, hogy ha kimegy egy diszk, maga az újraépítés megterhelheti a meglévőket.

és ha a diszkeknek ugyanaz a gyártó, típus, a valószínűség is elég nagy, hogy majdnem egyszerre halnak meg.

Ok, de ugyanez az érv feljön a sima kétlemezes RAID1 esetén is. Mondjuk annyi különbséggel, hogy ott csak egy lemeznek kell túlélnie az újjáépítést, míg a RAID5-nél kettőnek.

Hála az égnek még nem jártam így, de azt szokták mondani, hogy az újjáépítés alatt nagyon lassan telik az idő.

Bár ha nem a RAID akarja ellátni a backup feladatát is, akkor nincs akkora gáz.

jobb sebességet is ad

Ööö, a RAID5 írás-intenzív workloadra pocsék tud lenni, ugyanis read-modify-write elven működik. A tömbön nagyméretű egységekben (stripe block size, tipikusan 64-128-256-512kB) van szétosztva az adat. Ha te szeretnél módosítani mondjuk egy 4kB-os blokkot, akkor az egész stripe block-ot be kell olvasni, módosítani a tartalmát, kiszámítani a paritást, majd visszaírni a diszkekre. Ez böszme nagy overhead tud lenni, pl. adatbázis-jellegű felhasználásnál.

A háromlemezes RAID 1E két komponens elvesztését tudja túlélni, ugyanilyen szintű hibatűréshez RAID5 helyett RAID6 kell, legalább 4 darab diszkkel.

Ha azt nézzük, hogy hány komponens halhat meg, akkor igen, de úgy is lehet fogalmazni, hogy a háromlemezes RAID1-nél a komponensek 66%-ának meghibásodása esetén még menthető az adat, RAID5-nél (3 lemez) csak 33%-nél, RAID6-nál (4 lemez) 50%-nál. Tehát elméletileg a 4 lemezes RAID6 lenne ekvivalens a kétlemezes RAID1-el, de mivel a meghibásodások nem függetlenek, valójában még a kétlemezes RAID1 szintet sem éri el a RAID6 sem.

Neked ugye nem hullott ki 2 diszked raid5-ös tömbből...? Majd fog. :-P (Aztán lehet elővenni a mentést...) A 3 diszkes tükör arra jó, hogy egy diszk kihullása esetén is marad redundancia, van idő a diszket kicserélni vagy épp a hot spare-nek bevánszorogni a döglött helyére.
A RAID5 backup nélkül orosz rulett.

En is ezt csinaltam, vagy 15 evig mukodott a raid tomb, folyamatosan bovulve es ujabb vinyokkal.

Aztan egyszer beutott a krach. Epp amikor egy -amugy mukodo- vinyot csereltem nagyobbra, es ment a resync, bekakilt egy masik is.

Igen, olvas rola az ember, hogy sokkal nagyobb a raid resync alatt a failure valoszinusege, ezert kene raid6-ot csinalni, de hogy vele is elofordul... Meg jo, hogy a legfontosabb dolgok backup-ban is megvoltak.

Azota raid5 helyett csinaltam egy 'c2' es 'c3' raid1 tombot (a'la btrfs), ahol a c2 a '2 copies', a c3 meg a '3 copies' roviditese. Igy a helyet is jobban ki lehet hasznalni, amikor nem ugyanolyan meretuek a vinyok (pl nalam van egy 3, egy 6 es egy 6 TB-os; igy lett 3TB c2 es 3TB c3). A fontos dolgok mind a c3-ra mennek, a c2-t meg ilyen incoming meg hasonlokra hasznalom.

Egy biztos, egy vinyocsere kozbeny resync kozbeni failure most mar sokkal kisebb kart okozna.

Amugy igen, szivas, hogy 2 particio van, de ugyanakkor strapabirobb ez a felallas. Es ugyszinten, raid1-nek van egy hatalmas elonye: mindenfele raid nelkul is lehet mountolni a particiot! tehat teljes pusztulas eseten is jo esellyel vissza lehet nyerni meg adatokat. Barmelyik masik raid-del, fs-el ez lehetetlen. raid1 az egyetlen, amelyik ezt tudja.

Probaltam amugy raid1 helyett btrfs-t, zfs-t, de az elobbi meg mindig tulsagosan beta allapotban volt, zfs meg iszonyatosan elbonyolitott, es jopar, 'hazi' raid tombhoz valo feature nem tamogatott; legfokepp az, amikor a fenti 3+6+6TB-os vinyokon 2 db zfs tombot csinaljon, azt nem tudja, igy kenytelen lennek csak az elso 3TB-ot hasznalni mindegyiken. Ugyhogy maradt a regi jo 20 eves mdadm + ext4... :O

mikor neztem, erosen ellenjavallt volt, hogy 2 kulon zfs ugyanazt a fizikai diszket hasznalja. nagyon erosen.

tobbi feature: resize/shrink -el volt meg valami, ha jol emlekszem (ez nem biztos, 1 eve volt mar), es generalisan, uber-bonyi az egesz, mar egy md-hez kepest. Az eroforras-igenyeirol meg szinten nagyon szukosen irnak, de ahol igen, ott nagyon pocseknak irjak le.

Generalisan, nem volt az az erzesem, hogy egy (cpu+mem-ben masszivan alulmeretezett) hazi szerver miatt megeri beleugrani ebbe. Ha mar mashol is hasznalsz zfs-t, az persze mas, de csak emiatt egyszeruen tul melos/rizikos.

> mikor neztem, erosen ellenjavallt volt, hogy 2 kulon zfs ugyanazt a fizikai diszket hasznalja. nagyon erosen.

Ellenjavallt, mint ahogy pl. DB-t alatt ne virtualizalj, K8s-t ne rakja VM-re stb.

Hazi korulmenyek kozott mukodik.

 

Sot, remlik, h az Ubuntu 2 pool-t csinal, ha ZFS-re rakod az OS-t. Egy rpool (root pool) es egy data (nem emlekszem a nevere).

A ZFS-nek ezt a distributed hot spare módját (dRAID) esetleg próbáltad már (élesben)?

Tök jól hangzik, hogy nem kell annyi paritást írni, plusz ha meghaldoklik egy lemet, a resync is gyors, nem egy diskre ír sokat, hanem sokra keveset.

Szerkesztve: 2021. 09. 06., h – 13:46

Tapasztalatok: nagyon kényelmes. Nekem volt, hogy 4 lemez adott 1db raid1-t, így az adat 4 lemezen megvolt. A vinyó a gépben volt, logikailag át lett szervezve az adat, a gép távol, akkor használtam redundancia növelésre.

Sajnos jártam már úgy, hogy egyszerre/nagyon rövid idő alatt kiesett 2 diszk. Azóta parásabb lettem és ha van rá lehetőség, túltolom a redundanciát fontos helyeken :)