Tere Habr! Selles artiklis räägime teile, kas tasub korraldada RAID-massiivid, mis põhinevad pooljuhtlahendustel SATA SSD ja NVMe SSD ning kas sellest on tõsist kasumit? Otsustasime seda probleemi uurida, võttes arvesse seda võimaldavate kontrollerite tüüpe ja tüüpe, samuti selliste konfiguratsioonide rakendusala.
Ühel või teisel viisil on igaüks meist vähemalt korra elus kuulnud selliseid määratlusi nagu "RAID", "RAID-massiv", "RAID-kontroller", kuid on ebatõenäoline, et me omistasime sellele tõsist tähtsust, sest see kõik on tavalise PC-bojaari jaoks ebatõenäoline Huvitav. Kuid kõik tahavad sisemistelt draividelt suurt kiirust ja tõrgeteta töötamist. Lõppude lõpuks, hoolimata sellest, kui võimas on arvuti riistvara, muutub draivi kiirus kitsaskohaks arvuti ja serveri kombineeritud jõudluse osas.
See oli täpselt nii, kuni traditsioonilised kõvakettad asendati kaasaegsete NVMe SSD-dega, mille maht on 1 TB või rohkem. Ja kui varem olid personaalarvutites sageli kombinatsioonid SATA SSD + paar mahukast kõvaketast, siis tänapäeval hakatakse neid asendama teise lahendusega - NVMe SSD + paar mahukat SATA SSD-d. Kui me räägime ettevõtte serveritest ja "pilvedest", siis paljud on juba edukalt SATA SSD-dele üle läinud, lihtsalt sellepärast, et need on kiiremad kui tavalised "plekkpurgid" ja on võimelised töötlema korraga suuremat arvu I/O-operatsioone.
Süsteemi tõrketaluvus on aga endiselt üsna madalal tasemel: me ei saa nagu “Selgeltnägijate lahingus” isegi kuni nädalase täpsusega ennustada, millal konkreetne tahkisketas sureb. Ja kui kõvakettad "surevad" järk-järgult, võimaldades teil sümptomeid tabada ja tegutseda, siis SSD-d "surevad" kohe ja ilma hoiatuseta. Ja nüüd on aeg välja mõelda, milleks seda kõike üldse vaja on? Kas tasub korraldada pooljuhtlahendustel SATA SSD ja NVMe SSD põhinevaid RAID-massive ja kas sellest tuleb tõsist tulu?
Miks vajate RAID-massiivi?
Juba sõna "massiiv" viitab sellele, et selle loomiseks kasutatakse mitut draivi (HDD ja SSD), mis kombineeritakse RAID-kontrolleri abil ja mille OS tunneb ära ühe andmesalvestusena. Ülemaailmne ülesanne, mida RAID-massiivid saavad lahendada, on andmetele juurdepääsu aja minimeerimine, lugemis-/kirjutuskiiruse ja töökindluse suurendamine, mis saavutatakse tänu võimalusele rikke korral kiiresti taastuda. Muide, koduste varukoopiate tegemiseks pole üldse vaja RAID-i kasutada. Aga kui teil on oma koduserver, millele vajate pidevat juurdepääsu 24/7, on see hoopis teine asi.
RAID-massiivide tasemeid on üle tosina, millest igaüks erineb selles kasutatavate draivide arvu poolest ning millel on oma plussid ja miinused: näiteks RAID 0 võimaldab teil saavutada kõrge jõudluse ilma veataluvuseta, RAID 1 võimaldab teil peegeldab andmeid automaatselt ilma kiirust suurendamata ja RAID 10 kombinatsioonid sisaldavad ülalmainitu võimalusi. RAID 0 ja 1 on kõige lihtsamad (kuna need ei nõua tarkvaraarvutusi) ja sellest tulenevalt ka kõige populaarsemad. Lõppkokkuvõttes sõltub valik ühe või teise RAID-taseme kasuks kettamassiivile määratud ülesannetest ja RAID-kontrolleri võimalustest.
Kodu ja ettevõtte RAID: mis vahe on?
Iga kaasaegse äri aluseks on suured andmemahud, mida tuleb ettevõtte serverites turvaliselt säilitada. Ja nagu eespool märkisime, peab neile olema tagatud pidev juurdepääs ööpäevaringselt. Selge on see, et koos riistvaraga on oluline ka tarkvaraline osa, kuid antud juhul räägime siiski seadmetest, mis tagavad info usaldusväärse salvestamise ja töötlemise. Ükski tarkvara ei päästa ettevõtet hävingust, kui riistvara ei vasta talle pandud ülesannetele.
Nende ülesannete jaoks pakub iga riistvaratootja nn ettevõtte seadmeid. Kingstonil on võimsad pooljuhtlahendused SATA mudelite kujul
Tarbijaturu jaoks (st koduarvutite ja NAS-serverite jaoks) on sellised draivid nagu
RAID-kontrollerite tüübid ja tüübid
RAID-massiivide juurutamise põhimõtetel põhinevaid RAID-kontrollereid on kolme tüüpi:
1. Tarkvara, milles massiivihaldus langeb CPU-le ja DRAM-ile (see tähendab, et programmikood käivitatakse protsessoris).
2. Integreeritud, st sisseehitatud arvuti või NAS-serveri emaplaatidesse.
3. Riistvara (modulaarne), mis on diskreetsed laienduskaardid emaplaatide PCI/PCIe pistikute jaoks.
Mis on nende põhimõtteline erinevus üksteisest? Tarkvaralised RAID-kontrollerid on jõudluse ja tõrketaluvuse poolest halvemad integreeritud ja riistvaralistele, kuid ei vaja töötamiseks erivarustust. Siiski on oluline tagada, et hostsüsteemi protsessor oleks piisavalt võimas RAID-tarkvara käitamiseks, ilma et see mõjutaks negatiivselt ka hostis töötavate rakenduste jõudlust. Integreeritud kontrollerid on tavaliselt varustatud oma vahemäluga ja kasutavad teatud hulga protsessori ressursse.
Kuid riistvaralistel on nii oma vahemälu kui ka sisseehitatud protsessor tarkvaraalgoritmide täitmiseks. Tavaliselt võimaldavad need rakendada igat tüüpi RAID-tasemeid ja toetada mitut tüüpi draive korraga. Näiteks saavad Broadcomi kaasaegsed riistvarakontrollerid üheaegselt ühendada SATA-, SAS- ja NVMe-seadmeid, mis võimaldab teil serverite uuendamisel kontrollerit mitte vahetada: eriti SATA SSD-lt NVMe SSD-le üleminekul ei pea kontrollereid vahetama.
Tegelikult jõuame sellel teemal kontrollerite endi tüpoloogiani. Kui on kolmerežiimilised, siis kas peaks olema ka teisi? Sellisel juhul on vastus sellele küsimusele jaatav. Sõltuvalt funktsioonidest ja võimalustest võib RAID-kontrollerid jagada mitmeks tüübiks:
1. Tavalised RAID-funktsiooniga kontrollerid
Kogu hierarhias on see lihtsaim kontroller, mis võimaldab ühendada HDD ja SSD RAID-massiivideks tasemetega “0”, “1” või “0+1”. Seda rakendatakse programmiliselt püsivara tasemel. Selliseid seadmeid ei saa aga ettevõtte segmendis kasutamiseks soovitada, kuna neil pole vahemälu ega toeta 5, 3 jne taseme massiive. Kuid algtaseme koduserveri jaoks sobivad need üsna hästi.
2. Kontrollerid, mis töötavad koos teiste RAID-kontrolleritega
Seda tüüpi kontrollereid saab siduda integreeritud emaplaadi kontrolleritega. Seda rakendatakse järgmisel põhimõttel: diskreetne RAID-kontroller hoolitseb "loogiliste" probleemide lahendamise eest ja sisseehitatud kontroller võtab üle draivide vahelise andmevahetuse funktsioonid. Kuid on nüanss: selliste kontrollerite paralleelne töö on võimalik ainult ühilduvatel emaplaatidel, mis tähendab, et nende rakendusala on tõsiselt piiratud.
3. Eraldiseisvad RAID-kontrollerid
Need diskreetsed lahendused sisaldavad pardal kõiki vajalikke kiipe, et töötada äriklassi serveritega, millel on oma BIOS, vahemälu ja protsessor kiireks veaparanduseks ja kontrollsummade arvutamiseks. Lisaks vastavad need tootmise kõrgetele töökindlusstandarditele ja neil on kvaliteetsed mälumoodulid.
4. Välised RAID-kontrollerid
Pole raske arvata, et kõik ülaltoodud kontrollerid on sisemised ja saavad toidet emaplaadi PCIe-pistiku kaudu. Mida see tähendab? Ja see emaplaadi rike võib põhjustada vigu RAID-massiivi töös ja andmete kadumist. Välised kontrollerid on sellest arusaamatusest vabastatud, kuna need asuvad eraldi korpuses koos sõltumatu toiteallikaga. Usaldusväärsuse osas pakuvad sellised vastutavad töötlejad andmesalvestuse kõrgeimat taset.
RAID-kontrollerite SAS/SATA/NVMe töörežiimid
Kolmerežiimiliste HBA- ja RAID-kontrollerite (või Tri-Mode-funktsiooniga kontrollerite) põhieesmärk on luua NVMe-põhine riistvara-RAID. Broadcomi 9400. seeria kontrollerid saavad seda teha: näiteks
Ühendusliides on PCI Express x8 versioon 3.1, mis võimaldab läbilaskevõimet 64 Gbit/s (PCI Express 2020 kontrollerid ilmuvad eeldatavasti 4.0. aastal). 16-pordiline kontroller põhineb 2-tuumalisel kiibil
Kolmerežiimiline tehnoloogia põhineb SerDesi andmete teisendamise funktsioonil: SAS/SATA liidestes olevate andmete jadaesitluse teisendamine paralleelsesse vormi PCIe NVMe-s ja vastupidi. See tähendab, et kontroller lepib kokku kiiruste ja protokollide üle, et töötada sujuvalt kõigi kolme tüüpi salvestusseadmetega. See annab sujuva võimaluse andmekeskuse infrastruktuuride skaleerimiseks: kasutajad saavad kasutada NVMe-d ilma muudes süsteemikonfiguratsioonides olulisi muudatusi tegemata.
NVMe-draividega konfiguratsioonide kavandamisel tasub aga arvestada, et NVMe lahendused kasutavad ühendamiseks 4 PCIe rada, mis tähendab, et iga draiv kasutab kõiki SFF-8643 portide ridu. Selgub, et MegaRAID 9460-16i kontrolleriga saab otse ühendada ainult neli NVMe draivi. Või piirduge kahe NVMe lahendusega, ühendades samal ajal kaheksa SAS-draivi (vt ühendusskeemi allpool).
Joonisel on näidatud pistiku “0” (C0 / Connector 0) ja pistiku “1” kasutamine NVMe ühenduste jaoks, samuti pistikute “2” ja “3” kasutamine SAS-ühenduste jaoks. Seda paigutust saab ümber pöörata, kuid iga x4 NVMe draiv tuleb ühendada külgnevate radade abil. Kontrolleri töörežiimid määratakse StorCLI või HII (Human Interface Infrastructure) konfiguratsiooniutiliidide kaudu, mis töötavad UEFI keskkonnas.
Vaikerežiim on “PD64” profiil (toetab ainult SAS/SATA). Nagu me eespool ütlesime, on kokku kolm profiili: režiim "Ainult SAS/SATA režiim" (PD240 / PD64 / PD 16), režiim "Ainult NVMe režiim" (PCIe4) ja segarežiim, milles töötavad kõik tüüpi draivid. saab töötada: "PD64 -PCIe4" (64 füüsilise ja virtuaalse ketta tugi 4 NVMe-draiviga). Segarežiimis peaks määratud profiili väärtus olema "ProfileID=13". Muide, valitud profiil salvestatakse põhiprofiilina ja seda ei lähtestata isegi tehaseseadetele naasmisel käsu Set Factory Defaults kaudu. Seda saab muuta ainult käsitsi.
Kas tasub SSD-le RAID-massiivi luua?
Seega oleme juba aru saanud, et RAID-massiivid on suure jõudluse võti. Kuid kas tasub kodus ja ettevõttes kasutamiseks SSD-delt RAID-i ehitada? Paljud skeptikud väidavad, et kiiruse kasv pole nii märkimisväärne, et NVMe-draividele laiali paisata. Aga kas see on tõesti nii? Vaevalt. Suurim piirang SSD-de kasutamisel RAID-is (nii kodus kui ka ettevõtte tasandil) võib olla lihtsalt hind. Mida iganes võib öelda, HDD-l oleva ruumi gigabaidi hind on palju odavam.
Mitme tahkis-draivi ühendamine RAID-kontrolleriga SSD-massiivi loomiseks võib teatud konfiguratsioonides jõudlust oluliselt mõjutada. Kuid ärge unustage, et maksimaalset jõudlust piirab RAID-kontrolleri enda läbilaskevõime. Parimat jõudlust pakkuv RAID-tase on RAID 0.
Tavaline kahe SSD-ga RAID 0, mis jagab andmed fikseeritud plokkideks ja jagab need pooljuhtmälu kaudu, tagab kahekordse jõudluse võrreldes ühe SSD-ga. Nelja SSD-ga RAID 0 massiiv on aga juba neli korda kiirem kui massiivi kõige aeglasem SSD (olenevalt ribalaiuse piirangust RAID SSD kontrolleri tasemel).
Lihtsa aritmeetika põhjal on SATA SSD umbes 3 korda kiirem kui tavaline SATA HDD. NVMe lahendused on veelgi tõhusamad – 10 korda või rohkem. Eeldusel, et nulltaseme RAID-i kaks kõvaketast näitavad kahekordset jõudlust, suurendades seda 50%, on kaks SATA SSD-d 6 korda kiiremad ja kaks NVMe SSD-d 20 korda kiiremad. Eelkõige suudab üks Kingston KC2000 NVMe PCIe draiv saavutada järjestikuse lugemis- ja kirjutamiskiiruse kuni 3200 MB/s, mis RAID 0 formaadis jõuab muljetavaldava 6 GB/s. Ja juhuslike 4 KB suuruste plokkide lugemis-/kirjutuskiirus muutub 350 000 IOPS-lt 700 000 IOPS-le. Aga... samal ajal ei paku “null” RAID meile liiasust.
Võib öelda, et kodukeskkonnas pole salvestusruumi liiasust tavaliselt vaja, seega saab SSD-de jaoks kõige sobivamaks RAID-i konfiguratsiooniks tõesti RAID 0. See on usaldusväärne viis jõudluse oluliste täiustuste saavutamiseks alternatiivina sellistele tehnoloogiatele nagu Intel Optane'il põhinev tehnoloogia. SSD-d. Kuid sellest, kuidas SSD-lahendused käituvad kõige populaarsemates RAID-tüüpides (“1”, “5”, “10”, “50”), räägime meie järgmises artiklis.
See artikkel on koostatud meie Broadcomi kolleegide toel, kes pakuvad Kingstoni inseneridele oma kontrollereid katsetamiseks ettevõtteklassi SATA/SAS/NVMe draividega. Tänu sellele sõbralikule sümbioosile ei pea kliendid kahtlema tootmisest pärit HBA- ja RAID-kontrolleritega Kingstoni draivide töökindluses ja stabiilsuses.
Kingstoni toodete kohta lisateabe saamiseks külastage
Allikas: www.habr.com