Hårdvaru-RAID och mjukvaru-RAID

Hur du skyddar dina data med ZFS

En fråga som ofta ställs inom serverbranschen är: ”Vad är bäst – mjukvaru-RAID eller hårdvaru-RAID?”. Om du undersöker detta ämne tyder mycket av informationen om RAID på att ett hårdvaru-RAID-kort är att föredra framför att använda ett mjukvaru-RAID. Men jag håller inte med. Min åsikt är att för de flesta tillämpningar är Software RAID mycket bättre än hårdvaru-RAID. Hårdvaru-RAID har en plats under vissa operativsystem, men jag ska berätta varför mjukvaru-RAID i allmänhet är långt överlägset.

Att föredra hårdvaru-RAID framför mjukvaru-RAID kommer från en tid då hårdvaran helt enkelt inte var tillräckligt kraftfull för att hantera mjukvaru-RAID-bearbetning, tillsammans med alla de andra uppgifter som den användes för. På den tiden var lösningen att använda ett hårdvaru-RAID-kort med en inbyggd processor som hanterade RAID-beräkningarna ”offline”. Det presenterade sig för datorns operativsystem som en enda disk, och internt behandlade det data som rörde sig in och ut ur flera lagringsenheter (hårddiskar). Detta gjorde att saker och ting fungerade smidigt samtidigt som man drog nytta av RAID-säkerheten.

Hårdvaru-RAID är fortfarande populärt hos vissa människor och många av dagens hårdvaru-RAID-kort erbjuder en kick-ass prestanda samtidigt som de lättar på belastningen på CPU:n, men det finns fortfarande några allvarliga problem och nackdelar:

  • Utmaningar att återskapa data när större fel inträffar
  • Proprietära/icke-standardiserade protokoll som gör att din matris endast fungerar med samma hårdvaru-RAID-kort. Du kan inte sätta in din uppsättning hårddiskar i vilket RAID-kort som helst och förvänta dig att det ska läsa dina data.
  • Hårdvaru-RAID har förmågan att ta en grupp hårddiskar och få dem att framstå som en enda enhet. Denna arkitektur är elegant i sin enkelhet. Men den utesluter också i grunden integrering av funktioner i operativsystemet och filsystemet. Denna integration är egentligen det som har gjort det möjligt för mjukvaru-RAID att dramatiskt överträffa hårdvaru-RAID.

Hur jag tror att vi är idag

Två saker hände som gynnade mjukvaru-RAID jämfört med hårdvaru-RAID och gjorde det möjligt för det att ta ledningen. Datorkraften ökade så radikalt att den datorkraft som RAID medför inte längre är betydande. För det andra har styrkan, funktionerna och integrationen av RAID-programvaran ökat dramatiskt.

Hårdvaru-RAID fortsätter att erbjuda solida och enkla arkitektoniska lösningar för att kombinera flera hårddiskar i RAID-matriser och presentera dem för operativsystemet som en enda enhet. Detta är särskilt användbart med MS Windows som har en smärtsamt långsam implementering av mjukvaru-RAID. Det fortsätter dock att innebära en datasäkerhetsrisk eftersom man måste använda en identisk (eller kompatibel) styrenhet för att återskapa data i händelse av maskinvarufel.

På programvarusidan är dagens mjukvaru-RAID supersnabbt (åtminstone med Linux och BSD), extremt flexibelt och mycket integrerat i operativsystemen. Den är också mycket mer kapabel och kraftfull i återställningssituationer än hårdvaru-RAID. För att återställa dina data behöver du bara en annan lagringsserver med samma operativsystem. Därefter är stegen enkla, det är bara att koppla in hårddiskarna och börja arbeta – du bör kunna återhämta dig från i stort sett alla situationer där din dataförlust inte har överskridit grundläggande gränser.

Det är tydligt att datorer och mjukvara har kommit riktigt långt och det blir allt tydligare att mjukvarudefinierad RAID kommer att bli allt vanligare med tiden.

ZFS File System and Volume Manager

Nu ska vi gräva i ett av våra favoritfilsystem och volymhanterare, ZFS. Vi kommer att prata om några av de funktioner som gör ZFS unikt och sedan ge dig ett exempel från en av våra kunder som sparade mycket pengar eftersom han använde ZFS med mjukvaru-RAID.

Vi älskar ZFS eftersom det kan kringgå många av de problem som kan uppstå när man använder traditionella RAID-kort. I stället för att ett hårdvaru-RAID-kort får första chansen på dina hårddiskar använder ZFS till exempel ett JBOD-kort som tar hårddiskarna och bearbetar dem med sin inbyggda volymhanterare och sitt inbyggda filsystem. Detta ger ZFS större kontroll för att kringgå några av de utmaningar som hårdvaru-RAID-kort vanligtvis har. På grund av denna kontroll och dess funktionella egenskaper – ZFS kan hantera fel extremt bra. Dessa funktioner, inklusive Copy on Write, Snapshots, praktiskt taget oändlig skalning, självläkning med kontrollsummor och inbyggd virtualisering för din lagringspool, ger ZFS en extra nivå av robusthet.

ZFS har ett eget sätt att strukturera nya skrivningar som kallas Copy on Write. Detta skiljer sig från det sätt som de flesta volymhanterare strukturerar nya skrivningar. Normalt när en ändring eller nya data skrivs skrivs de över de gamla data. Men om det blir ett strömavbrott under skrivningen kan data gå förlorade. Istället för att skriva över de gamla data skriver ZFS data till en ny plats och kopierar vägen dit. Detta innebär att dina data inte går förlorade om du förlorar strömmen under skrivningen. Det ger också ZFS möjlighet till en annan av dess mest användbara funktioner; ögonblicksbilder.

Snapshots är i huvudsak tidsstämplar som visar vilken väg data hade vid en viss tidpunkt i det förflutna, dessa lagras i en egen tabell separat från data. Eftersom ZFS inte skriver över data utan istället skriver den till en ny plats kan du återgå till en tidigare tidsstämpel, det fungerar nästan som en säkerhetskopia. Snapshots har dock mycket mindre overhead än en riktig säkerhetskopiering, eftersom en fullständig säkerhetskopiering kräver att du kopierar dina data. Snapshots kan i jämförelse tas snabbt och enkelt.

ZFS har också en otrolig förmåga att läka sig själv mot skrivfel, datakorruption eller bitrutt. Den analyserar data som lagras på redundanta platser med hjälp av kontrollsummor och reparerar sig själv utifrån inkonsekvenser. Det har också traditionell RAID-funktionalitet – med spegling, striping och paritetskontroller. När man använder ett hårdvaru-RAID-kort maskeras diskhälsokontrollen när diskarna ansluts till kortet. Detta är ett problem eftersom du inte kan se de hotande tecknen på att en av dina diskar är på väg att gå sönder. ZFS kringgår detta eftersom det inte har några operationer som skrivs till diskarna innan de presenteras för operativsystemet.

Kundfallsexempel

Vi gör alla misstag, vissa kan vara mer kostsamma än andra. En av våra kunder som använder ZFS på sin Storinator var tvungen att flytta kontor och tog inte ut hårddiskarna innan flytten och skadade på något sätt diskarna under flytten.

När kunden försökte starta upp Storinatorn och importera ZFS-poolen – några av diskarna var skadade och några var felplacerade – det fanns till och med skadade metadata. Men eftersom kunden använde ZFS kunde han ganska enkelt bygga om poolen.

Vårt supportteam här på 45Drives kunde manuellt importera poolen som försämrad. När poolen väl var inne kunde vi lägga till nya enheter, skrubba poolen och saker och ting gick tillbaka till det normala.

Vi kunde bara göra detta på grund av ZFS:s motståndskraft, men detta skulle inte ha varit möjligt om vår kund använde hårdvaru-RAID eftersom det är mycket känsligare för komponentfel. Om de hade använt hårdvaru-RAID fanns det en god chans att deras data skulle ha gått förlorade – utan någon form av dyr återhämtning.

Sammanfattning
Om du behöver det yttersta i fråga om säkerhet, funktioner och prestanda är mjukvaru-RAID lösningen. Observera att du måste använda ett högpresterande operativsystem som Linux eller BSD; och om du gör det bör du verkligen överväga ZFS. Dess prestanda är utmärkt på dagens maskiner, det tar datasäkerheten till en oöverträffad nivå och som en bonus är det verkligen lätt att använda när man väl kommer upp i lärandekurvan.

  • Kategorier: Uncategorized

admin12:03 pm

Lämna ett svar

Din e-postadress kommer inte publiceras.