RAID arrays pa NVMe

RAID arrays pa NVMe
M'nkhaniyi tikambirana za njira zosiyanasiyana zokonzera magulu a RAID, ndikuwonetsanso imodzi mwa olamulira oyambirira a hardware RAID omwe ali ndi chithandizo cha NVMe.

Mitundu yonse ya ntchito zaukadaulo wa RAID zimapezeka mugawo la seva. Mugawo lamakasitomala, pulogalamu yokhayo RAID0 kapena RAID1 pama disks awiri ndi omwe amagwiritsidwa ntchito nthawi zambiri.

Nkhaniyi ipereka chithunzithunzi chachidule chaukadaulo wa RAID, phunziro lalifupi la momwe mungapangire magulu a RAID pogwiritsa ntchito zida zitatu zosiyanasiyana, komanso kufananiza magwiridwe antchito a disk pogwiritsa ntchito njira iliyonse.

Kodi RAID ndi chiyani?

Wikipedia imapereka tanthauzo lathunthu laukadaulo wa RAID:

anaukira (Eng. Zowonjezera Zambiri za Ma Disks Oyimilira - zosawerengeka za ma disks odziyimira pawokha (odziyimira pawokha) - ukadaulo wa data virtualization wophatikizira zida zingapo zama disk kukhala gawo lomveka kuti muwonjezere kulolerana ndi magwiridwe antchito.

Kukonzekera kwa ma disk arrays ndi matekinoloje omwe amagwiritsidwa ntchito zimadalira zomwe zasankhidwa RAID mlingo. Miyezo ya RAID imayikidwa mokhazikika Common RAID Disk Data Format. Imalongosola milingo yambiri ya RAID, koma yodziwika bwino ndi RAID0, RAID1, RAID5 ndi RAID6.

RAID0, kapena Kulimbana, ndi mulingo wa RAID womwe umaphatikiza ma drive awiri kapena kupitilira apo kukhala pagalimoto imodzi yomveka. Voliyumu ya diski yomveka ndi yofanana ndi kuchuluka kwa ma disks akuthupi omwe akuphatikizidwa pamndandanda. Palibe redundancy pamlingo wa RAID uwu, ndipo kulephera kwa drive imodzi kungayambitse kutayika kwa data yonse mu diski yeniyeni.

mlingo RAID1, kapena kalilole, imapanga zolemba zofanana zama disks awiri kapena kuposerapo. Kukula kwa disk yeniyeni sikudutsa kukula kochepa kwa ma disks akuthupi. Deta yomwe ili pa RAID1 virtual disk idzapezeka bola ngati diski imodzi yochokera kumagulu ikugwira ntchito. Kugwiritsa ntchito RAID1 kumawonjezera kubweza, koma ndi njira yotsika mtengo, chifukwa m'magulu a ma disks awiri kapena kuposerapo mphamvu ya imodzi yokha ilipo.

mlingo RAID5 amathetsa vuto la kukwera mtengo. Kuti mupange gulu lokhala ndi RAID5 level, mufunika ma disks osachepera 3, ndipo gululo silingagwirizane ndi kulephera kwa disk imodzi. Deta mu RAID5 imasungidwa mu midadada yokhala ndi macheke. Palibe kugawanika kwakukulu pakati pa ma disks a data ndi ma disks a checksum. Checksums mu RAID5 ndi zotsatira za ntchito ya XOR yogwiritsidwa ntchito ku midadada ya N-1, iliyonse yotengedwa kuchokera ku disk yosiyana.

Ngakhale magulu a RAID amachulukitsa redundancy ndikupereka redundancy, sizoyenera kusunga zosunga zobwezeretsera.

Pambuyo paulendo wachidule mumitundu yama RAID arrays, mutha kupita ku zida ndi mapulogalamu omwe amakulolani kusonkhanitsa ndikugwiritsa ntchito ma disk arrays.

Mitundu ya olamulira a RAID

Pali njira ziwiri zopangira ndikugwiritsa ntchito magulu a RAID: hardware ndi mapulogalamu. Tikambirana njira zotsatirazi:

  • Linux Software RAID.
  • Intel® Virtual RAID Pa CPU.
  • LSI MegaRAID 9460-8i.

Dziwani kuti yankho la Intel® likuyenda pa chipset, zomwe zimadzutsa funso ngati ndi hardware kapena mapulogalamu. Mwachitsanzo, VMWare ESXi hypervisor imaganizira pulogalamu ya VROC ndipo siyigwirizana nazo.

Linux Software RAID

Mapulogalamu a RAID amtundu wa Linux OS ndi njira yodziwika bwino m'magawo a kasitomala ndi seva. Zomwe mukufunikira kuti mupange gulu ndi zida za mdadm ndi zida zingapo za block. Chofunikira chokha cha Linux Software RAID imayika pama drive omwe amagwiritsa ntchito ndikukhala chida chofikira kudongosolo.

Kusowa kwa mtengo wa zida ndi mapulogalamu ndi mwayi wodziwikiratu wa njirayi. Linux Software RAID imapanga masanjidwe a disk pamtengo wa nthawi ya CPU. Mndandanda wamagawo othandizidwa ndi RAID ndi momwe ma disk apano akuwonekera zitha kuwonedwa mufayilo ya mdstat, yomwe ili muzu wa procfs:

root@grindelwald:~# cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid10] 
unused devices: <none>

Kuthandizira kwa milingo ya RAID kumawonjezedwa ndikulumikiza gawo loyenera la kernel, mwachitsanzo:

root@grindelwald:~# modprobe raid456
root@grindelwald:~# cat /proc/mdstat 
Personalities : [linear] [multipath] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] 
unused devices: <none>

Zochita zonse zokhala ndi ma disk arrays zimachitika kudzera pa mzere wolamula wa mdadm. Gulu la disk likuphatikizidwa mu lamulo limodzi:

mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/nvme1n1 /dev/nvme2n1

Pambuyo pochita lamuloli, chipangizo cha /dev/md0 chidzawonekera m'dongosolo, lomwe likuyimira disk yeniyeni.

Intel® Virtual RAID Pa CPU

RAID arrays pa NVMeIntel® VROC Standard Hardware Key
Intel® Virtual RAID On CPU (VROC) ndi ukadaulo wa hardware ndi mapulogalamu popanga magulu a RAID kutengera Intel® chipsets. Ukadaulowu umapezeka makamaka pamabodi a amayi omwe amathandizira mapurosesa a Intel® Xeon® Scalable. Mwachikhazikitso, VROC palibe. Kuti muyitse, muyenera kukhazikitsa kiyi ya laisensi ya hardware ya VROC.

Layisensi yokhazikika ya VROC imakupatsani mwayi wopanga ma disk arrays okhala ndi magawo 0, 1 ndi 10 RAID. Mtundu wa premium umakulitsa mndandandawu ndi chithandizo cha RAID5.

Ukadaulo wa Intel® VROC pamabodi amakono amagwira ntchito limodzi ndi Intel® Volume Management Device (VMD), yomwe imapereka kuthekera kosinthana kotentha kwa ma drive a NVMe.

RAID arrays pa NVMeIntel® VROC Standard License Ma Arrays amakonzedwa kudzera mu Setup Utility pamene seva ikuyamba. Pa tabu zotsogola Intel® Virtual RAID pa chinthu cha CPU chikuwonekera, komwe mungathe kukonza ma disk arrays.

RAID arrays pa NVMeKupanga gulu la RAID1 pama drive awiri
Tekinoloje ya Intel® VROC ili ndi ma aces ake m'manja mwake. Ma disks opangidwa pogwiritsa ntchito VROC amagwirizana ndi Linux Software RAID. Izi zikutanthauza kuti momwe ma arrays amatha kuyang'aniridwa mu /proc/mdstat ndikuyendetsedwa kudzera mdadm. "Chinthu" ichi chimathandizidwa ndi Intel. Mukatha kusonkhanitsa RAID1 mu Setup Utility, mutha kuwona kulumikizidwa kwa ma drive mu OS:

root@grindelwald:~# cat /proc/mdstat 
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md126 : active raid1 nvme2n1[1] nvme1n1[0]
      1855832064 blocks super external:/md127/0 [2/2] [UU]
      [>....................]  resync =  1.3% (24207232/1855832064) finish=148.2min speed=205933K/sec
      
md127 : inactive nvme1n1[1](S) nvme2n1[0](S)
      10402 blocks super external:imsm
       
unused devices: <none>

Zindikirani kuti simungathe kusonkhanitsa masanjidwe pa VROC pogwiritsa ntchito mdadm (zosanjidwazo zidzakhala Linux SW RAID), koma mutha kusintha ma disks momwemo ndikusokoneza maguluwo.

LSI MegaRAID 9460-8i

RAID arrays pa NVMeMawonekedwe a LSI MegaRAID 9460-8i wolamulira
Woyang'anira RAID ndi yankho la hardware loyima lokha. Wowongolera amangogwira ntchito ndi ma drive omwe amalumikizidwa nawo mwachindunji. Wowongolera wa RAID uyu amathandizira mpaka ma drive 24 NVMe. Ndi chithandizo cha NVMe chomwe chimasiyanitsa wolamulira uyu ndi ena ambiri.

RAID arrays pa NVMeMain menu ya hardware controller
Mukamagwiritsa ntchito mawonekedwe a UEFI, zosintha zowongolera zimaphatikizidwa mu Setup Utility. Poyerekeza ndi VROC, menyu owongolera zida amawoneka ovuta kwambiri.

RAID arrays pa NVMeKupanga RAID1 pa disks ziwiri
Kufotokozera momwe mungakhazikitsire ma disk arrays pa hardware controller ndi mutu wosakhwima ndipo ukhoza kukhala chifukwa cha nkhani yodzaza. Apa tingodziletsa kupanga RAID0 ndi RAID1 ndi zosintha zosasintha.

Ma Disks olumikizidwa ndi wowongolera ma hardware sawoneka ndi makina ogwiritsira ntchito. M'malo mwake, wolamulira "amaphimba" magulu onse a RAID monga SAS imayendetsa. Magalimoto olumikizidwa ndi wowongolera, koma osati gawo la diski, sangapezeke ndi OS.

root@grindelwald:~# smartctl -i /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.0-48-generic] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               AVAGO
Product:              MR9460-8i
Revision:             5.14
Compliance:           SPC-3
User Capacity:        1,999,844,147,200 bytes [1.99 TB]
Logical block size:   512 bytes
Rotation Rate:        Solid State Device
Logical Unit id:      0x000000000000000000000000000000
Serial number:        00000000000000000000000000000000
Device type:          disk
Local Time is:        Sun Oct 11 16:27:59 2020 MSK
SMART support is:     Unavailable - device lacks SMART capability.

Ngakhale atabisidwa ngati ma drive a SAS, ma NVMe arrays azigwira ntchito pa liwiro la PCIe. Komabe, izi zimakupatsani mwayi woyambira ku NVMe mu Legacy.

benchi yoyesera

Njira iliyonse yopangira ma disk arrays ili ndi zabwino zake komanso zoyipa zake. Koma kodi pali kusiyana kwa magwiridwe antchito mukamagwira ntchito ndi ma disk arrays?

Kuti mukwaniritse chilungamo chokwanira, mayesero onse adzachitidwa pa seva yomweyo. Kapangidwe kake:

  • 2x Intel® Xeon® 6240;
  • 12x DDR4-2666 16 GB;
  • LSI MegaRAID 9460-8i;
  • Intel® VROC Standard Hardware Key;
  • 4x Intel® SSD DC P4510 U.2 2TB;
  • 1x Samsung 970 EVO Plus M.2 500GB.

Magawo oyeserera ndi P4510, theka lomwe limalumikizidwa ndi bolodi, ndipo theka lina ndi wowongolera RAID. M.2 ikuyendetsa Ubuntu 20.04 ndipo mayeserowo adzayendetsedwa pogwiritsa ntchito fio version 3.16.

Kuyesa

Choyamba, tiyeni tiwone kuchedwa pamene tikugwira ntchito ndi disk. Mayeso amachitidwa mu ulusi umodzi, kukula kwa chipika ndi 4 KB. Mayeso aliwonse amatha mphindi zisanu. Asanayambe, chipangizo chotchinga chofananiracho sichimayikidwa ngati I/O scheduler. Lamulo la fio likuwoneka motere:

fio --name=test --blocksize=4k --direct=1 --buffered=0 --ioengine=libaio  --iodepth=1 --loops=1000 --runtime=300  --rw=<mode> --filename=<blkdev>

Kuchokera ku zotsatira za fio timatenga clat 99.00%. Zotsatira zikuwonetsedwa mu tebulo ili m'munsimu.

Kuwerenga mwachisawawa, μs
Kujambula mwachisawawa, μs

litayamba
112
78

Linux SW RAID, RAID0
113
45

VROC, RAID0
112
46

LSI, RAID0
122
63

Linux SW RAID, RAID1
113
48

VROC, RAID1
113
45

LSI, RAID1
128
89

Kuphatikiza pa kuchedwetsa kupeza deta, ndikufuna kuwona momwe ma drive amayendera ndikufanizira ndi magwiridwe antchito a disk. Lamulo kuti muyendetse:

fio --name=test --blocksize=4k --direct=1 --buffered=0 --ioengine=libaio  --loops=1000 --runtime=300  --iodepth=<threads> --rw=<mode> --filename=<blkdev>

Kuchita kwake kumayesedwa potengera ntchito za I/O. Zotsatira zaperekedwa mu tebulo ili m'munsimu.

Kuwerenga mwachisawawa ulusi umodzi, IOPS
Lembani ulusi umodzi mwachisawawa, IOPS
Kuwerenga mwachisawawa 128 ulusi, IOPS
Lembani ulusi 128 mwachisawawa, IOPS

litayamba
11300
40700
453000
105000

Linux SW RAID, RAID0
11200
52000
429000
232000

VROC, RAID0
11200
52300
441000
162000

LSI, RAID0
10900
44200
311000
160000

Linux SW RAID, RAID1
10000
48600
395000
147000

VROC, RAID1
10000
54400
378000
244000

LSI, RAID1
11000
34300
229000
248000

Ndizosavuta kuwona kuti kugwiritsa ntchito chowongolera cha Hardware kumabweretsa kuchedwa kowonjezereka komanso kugunda kwa magwiridwe antchito poyerekeza ndi mayankho apulogalamu.

Pomaliza

Kugwiritsa ntchito mayankho a Hardware kupanga ma disk arrays kuchokera ku ma disks awiri kumawoneka mopanda nzeru. Komabe, pali ntchito zomwe kugwiritsa ntchito owongolera RAID kuli koyenera. Kubwera kwa olamulira omwe amathandizira mawonekedwe a NVMe, ogwiritsa ntchito ali ndi mwayi wogwiritsa ntchito ma SSD othamanga pamapulojekiti awo.

RAID arrays pa NVMe

Ogwiritsa ntchito olembetsedwa okha ndi omwe angatenge nawo gawo pa kafukufukuyu. Lowani muakauntichonde.

Kodi mukugwiritsa ntchito mayankho a RAID?

  • 29,6%Inde, mayankho a hardware32

  • 50,0%Inde, njira zothetsera mapulogalamu54

  • 16,7%No18

  • 3,7%Palibe RAID yofunikira4

Ogwiritsa 108 adavota. Ogwiritsa ntchito 14 adakana.

Source: www.habr.com

Kuwonjezera ndemanga