Skip to main content
  • Place orders quickly and easily
  • View orders and track your shipping status
  • Enjoy members-only rewards and discounts
  • Create and access a list of your products
  • Manage your Dell EMC sites, products, and product-level contacts using Company Administration.

Dobbeltfejl og punkteringer i RAID-systemer

Summary: RAID-systemer er ikke immune over for datafejl. Denne artikel indeholder anbefalinger til at forhindre og afhjælpe disse problemer.

This article may have been automatically translated. If you have any feedback regarding its quality, please let us know using the form at the bottom of this page.

Article Content


Symptoms

Denne artikel indeholder oplysninger om datafejl, dobbeltfejl og punkteringer i et RAID-system. Der findes også anbefalinger til at undgå/mindske disse problemer, og hvordan problemerne løses, når de er opstået.

Indholdsfortegnelse
  1. Datafejl og dobbeltfejl
  2. Punkteringer: Hvad er de, og hvordan er de forårsaget?
  3. Forebyggelse af problemer, før de opstår, og løsning af punkteringer, når de er opstået

     

Kapitel 1: Datafejl og dobbeltfejl

RAID-systemer er ikke immune over for datafejl.  RAID-controller- og harddiskfirmware indeholder funktioner til at registrere og korrigere mange typer datafejl, før de skrives til et system/drev.  Brug af forældet firmware kan medføre, at forkerte data skrives til et system/drev, fordi det mangler de funktioner til fejlhåndtering/fejlkorrektion, der findes i de nyeste firmwareversioner.


Datafejl kan også skyldes fysisk defekte blokke.  Det kan f.eks. forekomme, når læse-/skrivehovedet påvirker den roterende plade (kaldes "Head Crash" ).  Blokke kan også blive defekte med tiden på grund af en forringelse af pladens evne til at lagre bits magnetisk på en bestemt placering.  Defekte blokke forårsaget af pladenedbrydning kan ofte læses korrekt.  Sådan en defekt blok kan kun registreres periodisk eller ved udvidet diagnosticering af drevene.  


En defekt blok, også kendt som en defekt LBA (Logical Block Address), kan også skyldes logiske datafejl.  Dette forekommer, når data er skrevet forkert til et drev, selvom det rapporteres som en vellykket skrivning.  Desuden kan gode data, der er lagret på et drev, ændres utilsigtet.  Et eksempel er en "bit flip", som kan opstå, når læse-/skrivehovedet passerer hen over eller skriver til en position i nærheden og ændrer data, i form af nuller og ettaller, til en anden værdi.  Denne tilstand ødelægger "konsistensen" af de berørte data.  Værdien af dataene på en bestemt blok er anderledes end de originale data og stemmer ikke længere overens med dataenes kontrolsum.  Den fysiske LBA er i orden og kan skrives korrekt, men den indeholder i øjeblikket forkerte data og fortolkes muligvis som en defekt blok.


Defekte LBA'er rapporteres normalt som sense code 3/11/0. Sense key 3 er en mediumfejl.  Derudover er sense code og sense qualifier på 11/00 defineret som en ikke-genoprettet læsefejl.  Der gøres intet forsøg på at korrigere blokken, og det fastslås ikke, om den defekte blok er resultatet af en fysisk fejl på drevpladen eller en fejl i data af andre årsager.  En sense code 3/11/00 betyder ikke automatisk, at det fysiske drev er defekt, eller at det skal udskiftes.


Dells hardwarebaserede RAID-controllere har funktioner som f.eks. Patrol Read og Kontroller konsistens til korrigering af mange datafejlscenarier.  Patrol Read fungerer som standard som en automatisk baggrundsopgave, der kontrollerer alle de enkelte blokke på en harddisk for at sikre, at data kan læses korrekt.  Patrol Read vil forsøge at korrigere blokke, der er defekte, eller gentilknytte blokke, der ikke kan korrigeres, til reserverede blokke.  Kontroller konsistens er en manuelt aktiveret funktion (den kan også planlægges), der sammenligner alle drevene i et system med hinanden for at sikre, at data og redundans stemmer overens.  For eksempel sammenlignes de tre drev i et RAID 5-system for at sikre, at dataene og pariteten anvender de korrekte værdier.  Hvis en enkelt fejl registreres, bruges de resterende data og/eller pariteten til at genskrive og korrigere den forkerte værdi.  I et RAID 1-system sammenlignes dataene på et drev på samme måde med det andet drev for at sikre, at data spejles korrekt.


En enkelt fejl i et RAID-system kan, hvis den ikke rettes, forårsage flere alvorlige fejl i systemet, især hvis der opstår en anden fejl.  En eller flere enkelte fejl vil ikke medføre tab af data, så længe systemet forbliver i en optimal tilstand.  Der er stadig tilstrækkelige data plus redundans til at fungere normalt, når systemet er optimalt.


På grund af controllerens evne til at korrigere for fejl under normal drift er det ikke altid nemt at registrere underliggende problemer i dataene.  Der findes sjældent fejlmeddelelser eller advarsler i controller-loggen, hardware-logs eller operativsystemets hændelseslogs ved en eller flere enkelte fejltilstande.  Derfor kan et system se ud til at fungere normalt i meget lang tid på trods af tilstedeværelsen af konsistensfejl og/eller enkelte fejl.



SLN111497_en_US__11
Figur 1: Flere enkelte fejl i et RAID 5-system - Optimale arrayAs


, der vises i Figur 1, har systemet flere fejl.  Men da der kun er en enkelt fejl i en stripe, kan controlleren stadig få adgang til alle data pga. redundansen i RAID 5.  Hvis fejlen opstår i paritetssegmentet, er alle data intakte, og fejlen har ingen indvirkning på læsningen.  Hvis fejlen opstår i et datasegment, skal der foretages en XOR-sammenligning mellem de intakte data og de intakte dele af pariteten for at genberegne det manglende/defekte datasegment.  Da der kun er en enkelt fejl i en stripe, er der i begge tilfælde tilstrækkelig redundans til at få adgang til alle data.

Når et eller flere drev i et RAID-system indeholder datafejl, og et andet drev i systemet ikke længere er et aktivt medlem af systemet på grund af drevfejl, fremmed konfiguration, fjernelse af drev eller en anden årsag, skaber dette tilstanden "dobbeltfejl".  En dobbeltfejl medfører øjeblikkeligt datatab af alle oplysninger i de berørte stripes.



SLN111497_en_US__22
Figur 2: Dobbeltfejl med et fejlbehæftet drev (data i stripe 1 og 2 er gået tabt) - Forringet system


Det er muligt, at en dobbeltfejltilstand kan opstå, mens systemet forbliver i en optimal tilstand.  Dette ville ske med identiske defekte LBA'er på flere harddiske.  Denne tilstand er meget sjælden på grund af det store antal LBA'er på større harddiske i dag.  Det ville være meget usandsynligt, at den samme LBA på flere harddiske var "defekte" på samme tid.

Regelmæssig udførelse af handlingen Kontroller konsistens vil korrigere for enkelte fejl, uanset om der er en fysisk defekt blok eller en logisk fejl i dataene. Kontroller konsistens vil også mindske risikoen for en dobbeltfejltilstand i tilfælde af yderligere fejl.  Hvis der ikke er mere end en enkelt fejl i en given stripe, kan en Kontroller konsistens næsten altid eliminere fejlen.

Tilbage til toppen
 
 

Kapitel 2: Punkteringer: Hvad er de, og hvordan er de forårsaget?


En punktering er en funktion på Dells PERC-controllere, som er designet, så controlleren kan gendanne redundans for systemet på trods af datatab forårsaget af en dobbeltfejl.  Et andet navn for punktering er "genopbygge med fejl".  RAID-controlleren registrerer en dobbeltfejl, og fordi der ikke er tilstrækkelig redundans til at gendanne data i den påvirkede stripe, opretter controlleren en punktering i den pågældende stripe og gør det muligt for genopbygningen at fortsætte.

 
  • Enhver tilstand, der gør data utilgængelige i den samme stripe på mere end ét drev, er en dobbeltfejl
  • Dobbeltfejl medfører tab af alle data inden for de påvirkede stripes
  • Alle punkteringer er dobbeltfejl, men alle dobbeltfejl er IKKE punkteringer


SLN111497_en_US__33
Figur 3: Punkterede stripes (data i stripe 1 og 2 går tabt på grund af dobbeltfejltilstand) - Optimalt system


Uden punkteringsfunktionen ville genopbygningen af systemet mislykkes og efterlade systemet i en forringet tilstand.  I nogle tilfælde kan fejlen medføre defekter på yderligere drev og hensætte systemet i en ikke-fungerende offline-tilstand.  Punktering af et system har ingen indvirkning på muligheden for at starte eller få adgang til data på systemet.  Eventuelle skader eller tabte data pga. en dobbeltfejltilstand var allerede opstået. 



Punkteringer kan forekomme i to situationer:
 
  • Dobbeltfejl findes allerede (Data er allerede mistet)
    • Datafejl på et onlinedrev overføres (kopieres) til et drev under genopbygning
 
  • Dobbeltfejl findes ikke (Data går tabt, når den anden fejl opstår)
    • Hvis der opstår en defekt blok på et onlinedrev i forringet tilstand, punkteres den pågældende LBA


Fordelen ved punktering af et system er, at den holder systemet tilgængeligt i produktionen, og at systemets redundans gendannes.  Dataene i den berørte stripe gik tabt, uanset om punkteringen opstår eller ej.  Den primære ulempe ved LSI-metoden er, at mens systemet har en punktering, vil der fortsat opstå uoprettelige fejl, når de berørte data (hvis der er nogen) åbnes. 


Punktering kan forekomme i tre placeringer.  Som det første kan punktering forekomme på tom plads, der ikke indeholder data.  Den pågældende stripe vil være utilgængelig, men da der ikke er nogen data på dette sted, har det ingen væsentlig effekt.  Ethvert forsøg fra et operativsystem på at skrive til en punkteret stripe vil mislykkes, og data vil blive skrevet til en anden placering. 


For det andet kan en punktering forekomme i en stripe, der indeholder data, som ikke er kritiske, såsom en README.TXT-fil.  Hvis der ikke er adgang til de påvirkede data, genereres der ingen fejl under normal I/O.  Forsøg på at udføre en sikkerhedskopiering af filsystemet vil ikke sikkerhedskopiere filer, der er påvirket af en punktering.  Udførelse af kontroller konsistens- eller Patrol Read-handlinger genererer sense code:  11/3/00 for den relevante LBA og/eller stripes.


For det tredje kan en punktering forekomme i datarum, der åbnes.  I så fald kan de tabte data forårsage en række fejl.  Fejlene kan være mindre fejl, der ikke har negativ indvirkning på et produktionsmiljø.  Fejlene kan også være mere alvorlige og kan forhindre, at systemet starter i et operativsystem, eller medføre fejl i programmer.


 Et system, der er punkteret, skal i sidste ende slettes og genskabes for at eliminere punkteringen.  Denne procedure sletter alle data. Dataene skal derefter genskabes eller gendannes fra en sikkerhedskopi, når punkteringen er elimineret.  Løsningen på en punktering kan planlægges til et tidspunkt, som er mere fordelagtig for virksomheden.


Hvis dataene i en punkteret stripe åbnes, rapporteres fejlene fortsat i forhold til de berørte defekte LBA'er uden mulighed for rettelse. I sidste ende (dette kunne være inden for minutter, dage, uger, måneder osv.) fyldes BBM-tabellen (Bad Block Management), hvilket medfører at et eller flere drev også bliver mærket som forudset fejl. Som i Figur 3 vil drev 0 typisk være det drev, der bliver mærket som forudset fejl, fordi fejlene på drev 1 og drev 2 bliver overført til det. Drev 0 kan faktisk fungere normalt, og udskiftning af drev 0 vil blot medføre, at erstatningsdrevet i sidste ende også bliver mærket som forudset fejl.


En Kontroller konsistens, der udføres, efter at der er fremkaldet en punktering, vil ikke løse problemet.  Derfor er det meget vigtigt at udføre en Kontroller konsistens med jævne mellemrum. Det er især vigtigt før udskiftning af drev, når det er muligt. Systemet skal være i en optimal tilstand for at udføre Kontroller konsistens.


Et RAID-system, der indeholder en enkelt datafejl samtidig med en yderligere fejlhændelse, f.eks. en harddiskfejl, forårsager en punktering, når det defekte eller nye drev genopbygges til systemet. Et eksempel kunne være et optimalt RAID 5-system med tre medlemmer: drev 0, drev 1 og drev 2. Hvis drev 0 er defekt (Figur 2) og erstattes, bruges resterende data og paritet på drev 1 og 2 til at genopbygge de manglende oplysninger igen på det nye drev 0. Men hvis der allerede er en datafejl på drev 1, er der ikke tilstrækkelige oplysninger inden for den stripe til at genopbygge de manglende data i stripen. Drev 0 har ingen data, drev 1 har ugyldige data, og drev 2 har gode data, da det genopbygges. Der er flere fejl i denne stripe. Drev 0 og drev 1 indeholder ikke gyldige data, så eventuelle data i den pågældende stripe kan ikke gendannes, og de går derfor tabt.  Resultatet som vist i Figur 3 er, at der oprettes punkteringer (i stripe 1 og 2) under genopbygningen. Fejlene overføres til drev 0. 


Punktering i systemet gendanner redundans og systemet vender tilbage til en optimal tilstand.  Dette beskytter systemet mod yderligere tab af data i tilfælde af fejl eller drevfejl.
 
Tilbage til toppen
 

Kapitel 3: Forebyggelse af problemer, før de opstår, løsning af punkteringer, når de opstår


Det kan være fristende at følge princippet: "Hvis det ikke er i stykker, skal det ikke repareres". Selvom dette kan være sandt nok på mange områder, anbefales det at udføre rutinemæssig og regelmæssig vedligeholdelse for at beskytte og administrere lagringsundersystemer bedst muligt. Proaktiv vedligeholdelse kan rette eksisterende fejl og forhindre, at nogle fejl opstår. Det er ikke muligt at undgå alle fejl, men de mest alvorlige fejl kan afhjælpes betydeligt med proaktiv vedligeholdelse. For lagre og RAID-undersystemer er trinene:

 
  • Opdater drivere og firmware på controllere, harddiske, bundkort og andre enheder
  • Udfør Kontroller konsistens rutinemæssigt
  • Gennemse logs for indikationer af problemer

Det behøver ikke at være en gennemgang på et højt teknisk niveau, men det kunne blot være et hurtigt gennemsyn på logfilerne for at finde meget tydelige indikationer af potentielle problemerContact
Dells tekniske support med eventuelle spørgsmål eller bekymringer


En af de vigtigste ting, der skal gøres, er at sikre, at firmwaren holdes opdateret. Firmware er det sted, der indeholder logikken til driften af en enhed. Den leverer funktionaliteten og enhedens funktioner, sammen med en række funktioner til fejlhåndtering og fejlkorrektion. At holde firmwaren opdateret kan give bedre ydelse og færre fejl. Der kan også tilføjes nye funktioner og forbedringer via en firmwareopdatering.


Firmware kan være placeret en række steder. RAID-controllere indeholder firmware, og det samme gør hver enkelt harddiske, der er installeret i et system eller en matrix. Backplanes og eksterne kabinetter indeholder også firmware, der kan påvirke driften af drev og systemer indeholdt i dem.


En anden anbefaling til proaktiv vedligeholdelse er at udføre en "Kontroller konsistens".  Kontroller konsistens er en manuel funktion, da den forbruger en del af RAID-controllerens samlede tilgængelige båndbredde. Kontroller konsistens kan dog planlægges til et tidspunkt, hvor det har mindst indvirkning på ydeevnen.


Kontroller konsistens kontrollerer for defekte blokke på drevene, men endnu vigtigere sammenligner den dataene i systemet for at være sikker på, at alle enheder stemmer overens. Når funktionen finder et problem, vil den fastslå, hvordan dataene skal se ud, og korrigere dem ved at kontrollere data på andre drev i systemet. Korrektion af datafejl, når de er relativt små, er den bedste metode til at mindske risikoen for punktering forårsaget af eksisterende datafejl i kombination med en anden fejl eller defekt. Dobbeltfejl og punkteringer kan medføre tab af produktivitet på grund af den tid, det er nødvendigt for at gendanne systemer og data til en fungerende tilstand, eller endda tab af alle data.


Når der findes en dobbeltfejl eller punktering, medfører det ofte tab af data. Hvis disse fejl findes på en tom placering eller en ikke-kritisk dataplads, er den umiddelbare indvirkning på data i et produktionsmiljø relativt lille. Tilstedeværelsen af disse fejl kan dog betyde, at der kan være mere alvorlige problemer. Hardwarefejl og forældet firmware kan kræve øjeblikkelig opmærksomhed.


Hvis der er opstået en dobbeltfejl eller en punktering, eller du har mistanke om det, skal du følge disse trin for at minimere risikoen for mere alvorlige problemer:

 
  • Udfør Kontroller konsistens (systemet skal være optimalt)
  • Afgør, om der er hardwareproblemer
  • Kontrollér controller-loggen
  • Udfør hardwarediagnosticering
  • Kontakt Dells tekniske support efter behov

Hvis disse trin er udført, er der yderligere ting at være opmærksom på. Punktering kan få harddiske til at skifte til forudset fejl-status over tid. Datafejl, der overføres til et drev, bliver rapporteret som mediefejl på drevet, selvom der faktisk ikke er nogen hardwareproblemer. Hver gang LBA'en åbnes, rapporteres der en fejl. Når fejlloggen er fuld, rapporterer drevet sig selv som forudset fejl.


En enkelt punkteret LBA på et drev kan rapporteres mange gange. Afhængigt af antallet af punkteringer er det muligt at rapportere flere drev i et system som Forudset fejl. Udskiftning af drev med Forudset fejl vil medføre, at eksisterende punkteringer overføres til det nye drev, hvilket vil medføre, at det nye drev i sidste ende også mærkes som Forudset fejl. I et sådant tilfælde er den eneste korrigerende handling at løse punkteringstilstanden.


Når vi ser på Figur 3, kan vi se, at der er en punktering på stripe 1 og 2. Udskiftning af harddiske løser ikke dette problem, fordi der ikke er tilstrækkelig dataredundans til at genopbygge de oprindelige data. Alle dataene i punkterede stripes går tabt (medmindre de opbevares i en tidligere sikkerhedskopi). Husk, at en punktering ikke forårsager datatab, en dobbeltfejltilstand forårsager datatab. En punktering er metoden til at gendanne redundans for et system, der indeholder en dobbeltfejl.
 

 

Bemærk: Her er den proces, der bruges til at løse de fleste punkteringer. Det er muligvis ikke nødvendigt at udføre alle disse trin for at løse problemet. Hvis udførelse af disse trin ikke løser et problem, skal du kontakte Dells tekniske support for at få hjælp.

 

 

Advarsel: Hvis disse trin udføres, går alle data på systemet tabt. Sørg for, at du kan gendanne fra en sikkerhedskopi eller på anden måde, før du udfører disse trin. Vær forsigtig, så udførelsen af disse trin ikke påvirker andre systemer.
  1. Slet bevaret cachelager (hvis det findes)
  2. Ryd fremmede konfigurationer (hvis relevant)
  3. Slet systemet
  4. Flyt drevenes placering én plads (i Figur 1 flyttes disk 0 til plads 1, disk 1 til plads 2, og disk 2 til plads 0)
  5. Genskab systemet som ønsket
  6. Udfør en fuldstændig initialisering af systemet (ikke en hurtig initialisering)
  7. Udfør Kontroller konsistens på systemet

Hvis konsekvenskontrollen gennemføres uden fejl, kan du gå ud fra, at systemet nu er sundt, og punkteringen er fjernet. Data kan nu gendannes til det sunde system.


I mere alvorlige tilfælde kan problemet muligvis ikke løses, og fejlene kan forblive, selvom disse trin udføres. Hvis udførelsen af disse trin ikke løser et problem, skal du kontakte Dells tekniske support for at få yderligere hjælp.


Det kan være nødvendigt at analysere punkteringer mere detaljeret for at afgøre, hvilke drev der er fælles. I Figur 3 vil controller-loggen f.eks. vise en punktering mellem disk 0 og 1, og en punktering mellem disk 0 og 2. Disk 0 er det fælles drev. Følg de samme trin som ovenfor, men fjern det fælles drev helt først. Så hvis vi bruger eksemplet i Figur 1, skal du fjerne disk 0, og derefter følge trinene. Opret systemet vha. de resterende diske (1 og 2). Når dette er udført, og efter at en konsistenskontrol vurderer, at systemet er sundt, skal du tilføje disk 0 igen og enten udføre trinene igen med alle drevene eller bruge funktionerne RLM (RAID Level Migration) og/eller OCE (Online Capacity Expansion) til at tilføje de resterende drev til systemet igen.


Alle drev, der er mærket som forudset fejl, skal fjernes og ikke medtages i gendannelsesprocessen. Igen med Figur 3 som eksempel, hvis der blev forudsagt fejl for disk 0, skal dette drev fjernes. Udfør de trin, der er beskrevet ovenfor. Da der kun er 2 resterende drev, er det RAID-system, der oprettes, et RAID 1 i stedet for et RAID 5. Efter at have anskaffet en erstatningsdisk 0 (pga. forudset fejl) skal du udføre trinnene igen, inklusive alle 3 drev, eller tilføje disk 0 i det eksisterende system vha. RLM og ændre det fra et RAID 1 med 2 drev til et RAID 5 med 3 drev.


Processen kan være overvældende, især når man tager risikoen for datatab i betragtning. En smule forebyggelse er bedre end en masse helbredelse. Erfaringen viser, at næsten alle dobbeltfejl og punkteringer kunne være undgået ved at udføre proaktiv vedligeholdelse på RAID-hardware og systemer.
 

 

Bemærk: Effektiv overvågning af systemet giver mulighed for at registrere og korrigere problemer rettidigt, hvilket også reducerer risikoen for mere alvorlige problemer.


 

Relateret artikel
PERC - Sådan repareres en RAID-punktering

 

Tilbage til toppen

 

Cause

Resolution

Article Properties


Affected Product

Servers

Last Published Date

25 Mar 2022

Version

6

Article Type

Solution