Gå til innhold

BSD/UnixBSD/UnixFreeNAS - kan man "offline" en disk til mens raidet driver resilvering?


Anbefalte innlegg

En av FreeNAS-boksene mine kjører FreeNAS 8.3.0 - FreeNAS-8.3.0-RELEASE-x64 (r12701M) for å være nøyaktig.

Poolen består av 6 disker, og er satt opp i raidz1.

Diskene:

tingo@kg-f5$ ls -l /dev/ada*

crw-r-----  1 root  operator    0,  95 Aug 29 21:56 /dev/ada0

crw-r-----  1 root  operator    0,  96 Aug 29 21:56 /dev/ada0p1

crw-r-----  1 root  operator    0,  97 Aug 29 21:56 /dev/ada0p2

crw-r-----  1 root  operator    0,  98 Aug 29 22:14 /dev/ada1

crw-r-----  1 root  operator    0, 122 Aug 29 22:14 /dev/ada1p1

crw-r-----  1 root  operator    0, 127 Aug 29 22:14 /dev/ada1p2

crw-r-----  1 root  operator    0,  99 Aug 29 21:56 /dev/ada2

crw-r-----  1 root  operator    0, 106 Aug 29 21:56 /dev/ada2p1

crw-r-----  1 root  operator    0, 107 Aug 29 21:56 /dev/ada2p2

crw-r-----  1 root  operator    0, 100 Aug 29 21:56 /dev/ada3

crw-r-----  1 root  operator    0, 108 Aug 29 21:56 /dev/ada3p1

crw-r-----  1 root  operator    0, 109 Aug 29 21:56 /dev/ada3p2

crw-r-----  1 root  operator    0, 101 Aug 29 21:56 /dev/ada4

crw-r-----  1 root  operator    0, 110 Aug 29 21:56 /dev/ada4p1

crw-r-----  1 root  operator    0, 111 Aug 29 21:56 /dev/ada4p2

crw-r-----  1 root  operator    0, 102 Aug 29 21:56 /dev/ada5

crw-r-----  1 root  operator    0, 112 Aug 29 21:56 /dev/ada5p1

crw-r-----  1 root  operator    0, 113 Aug 29 21:56 /dev/ada5p2

(Som vanlig med FreeNAS, så er adaXp1 en swap partisjon)

pool

tingo@kg-f5$ zpool status

  pool: z5

 state: DEGRADED

status: One or more devices is currently being resilvered.  The pool will

    continue to function, possibly in a degraded state.

action: Wait for the resilver to complete.

  scan: resilver in progress since Fri Aug 29 22:14:12 2014

        51.2G scanned out of 8.48T at 1.18M/s, (scan is slow, no estimated time)

        8.06G resilvered, 0.59% done

config:



    NAME                                              STATE     READ WRITE CKSUM

    z5                                                DEGRADED 1.69K     0     0

      raidz1-0                                        DEGRADED 1.69K     0     0

        gptid/202e9138-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0

        replacing-1                                   OFFLINE      0     0     0

          4866735489841404330                         OFFLINE      0     0     0  was /dev/gptid/20e9bc37-4124-11e2-a433-3085a9ebf2a2

          gptid/09858204-2fb9-11e4-8f91-3085a9ebf2a2  ONLINE       0     0     0  (resilvering)

        gptid/21a0e079-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0

        gptid/225d33a6-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0

        gptid/2319281f-4124-11e2-a433-3085a9ebf2a2    ONLINE   1.69K     0     0  (resilvering)

        gptid/23d54afc-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0



errors: 1728 data errors, use '-v' for a list



Jeg er erstattet ada1 disken (først offline i FreeNAS GUI, bytte disk, deretter replace i FreeNAS GUI) og nå kjører jeg zfs resilver på poolen.

Det går veldig tregt, og jeg ser at ada4 disken (gptid/2319281f-4124-11e2-a433-3085a9ebf2a2) også har problemer og bør byttes. Men jeg har lyst til at denne resilveren skal bli ferdig først.

 

Så da tenkte jeg at jeg kunne sette ada4 offline også, i håp om at det gjør at resilveren går raskere. Og så tar jeg bare og bytter ada4 etterpå.

Spørsmål:

- går det? vil zfs la deg offline en disk til mens en resilver kjører?

- er det smart? Jeg har 4 disker i raidet i tillegg til de to som det akkurat når kjøres resilver på, så jeg burde ha nok replicas (hvis jeg har skjønt dette rett). Men er det smart?

 

Lenke til kommentar
Videoannonse
Annonse

Det avgjørende her er om poolen har tilstrekkelige data til at filsystemet fortsatt er konsistent ("sufficient replicas").

Men jeg har lite tro på at resilver vil gå raskere om du fjerner en disk til. Om systemet tillater at du offliner en disk til er det faktisk fare for at systemet setter i gang en helt ny resilver når du utfører operasjonen. På $DAYJOB har vi et par ZFS Storage Appliance-clustre med noe flere disker enn dette, og på en av dem opplevde vi faktisk å ha to tilsynelatende uavhengige resilver-prosesser gående etter et par episoder med dårlige enkeltdisker som kom for tett på hverandre. Vi har sterke indisier på at den situasjonen faktisk var så krevende at det gikk ut over ytelsen på hele clusteret (som til overmål var satt opp med bare en pool og serverte LUN over iSCSI, noe som muligens ikke er optimalt i alle situasjoner).

Så min konklusjon er at om du nå har et filsystem med tilstrekkelige replicas, så la resilveren gå ferdig før du bytter flere disker.

Hvis du har lyst på litt spenning i helgen, kan du jo prøve å offline en disk til og se hvordan det går, men som sagt tror jeg ikke du reelt vil spare noe tid på det.

Lenke til kommentar
  • 3 uker senere...

tilbake etter drøye to ukers ferietur ser det slik ut:

tingo@kg-f5$ zpool status
  pool: z5
 state: DEGRADED
status: One or more devices has experienced an error resulting in data
    corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
    entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
  scan: scrub repaired 0 in 55h48m with 55621108 errors on Tue Sep 16 07:49:00 2014
config:

    NAME                                              STATE     READ WRITE CKSUM
    z5                                                DEGRADED 3.25K     0  106M
      raidz1-0                                        DEGRADED 3.25K     0  212M
        gptid/202e9138-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        replacing-1                                   DEGRADED     0     0     0
          4866735489841404330                         OFFLINE      0     0     0  was /dev/gptid/20e9bc37-4124-11e2-a433-3085a9ebf2a2
          gptid/09858204-2fb9-11e4-8f91-3085a9ebf2a2  ONLINE       0     0     0
        gptid/21a0e079-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        gptid/225d33a6-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        gptid/2319281f-4124-11e2-a433-3085a9ebf2a2    FAULTED  25.1K  131M     0  too many errors
        gptid/23d54afc-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0

errors: 55621108 data errors, use '-v' for a list

Ser ut som om jeg er klar til å bytte den andre defekte disken (ada4) nå.

Lenke til kommentar

OK, etter bytte av disk nummer to (ada4) og en ny resilver ser det slik ut:

tingo@kg-f5$ zpool status
  pool: z5
 state: DEGRADED
status: One or more devices has experienced an error resulting in data
    corruption.  Applications may be affected.
action: Restore the file in question if possible.  Otherwise restore the
    entire pool from backup.
   see: http://www.sun.com/msg/ZFS-8000-8A
  scan: resilvered 38.0G in 55h41m with 55621108 errors on Sat Sep 20 02:10:02 2014
config:

    NAME                                              STATE     READ WRITE CKSUM
    z5                                                DEGRADED     0     0 53.0M
      raidz1-0                                        DEGRADED     0     0  106M
        gptid/202e9138-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        replacing-1                                   DEGRADED     0     0     0
          4866735489841404330                         OFFLINE      0     0     0  was /dev/gptid/20e9bc37-4124-11e2-a433-3085a9ebf2a2
          gptid/09858204-2fb9-11e4-8f91-3085a9ebf2a2  ONLINE       0     0     0
        gptid/21a0e079-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        gptid/225d33a6-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0
        replacing-4                                   UNAVAIL      0     0     0
          13212241896674284510                        UNAVAIL      0     0     0  was /dev/gptid/2319281f-4124-11e2-a433-3085a9ebf2a2
          gptid/9bb3d90d-3e87-11e4-80a2-3085a9ebf2a2  ONLINE       0     0     0
        gptid/23d54afc-4124-11e2-a433-3085a9ebf2a2    ONLINE       0     0     0

errors: 55621108 data errors, use '-v' for a list

Filene som mangler har jeg (backup er lurt) på en annen FreeNAS, så de er bare og kopiere over (har laget en liste ved hjelp av zpool status -v).

Vet ikke hvorfor de to gamle diskene "henger" igjen, jeg har kjørt detach i gui'et og fikk melding på at de var fjernet.

Men - hva bør jeg gjøre nå?

kjøre en scrub, eller hva?

Lenke til kommentar
  • 4 måneder senere...

Oppdatering på gammel tråd: etter at den tredje disken (ada5) røk, så var det ikke nok replicas i raidet til å berge det. Så jeg endte opp med å bygge et nytt raid etter at jeg hadde erstattet de defekte diskene.

Denne gangen med raid-z2:

 

tingo@kg-f5$ zpool status
  pool: z5
 state: ONLINE
  scan: none requested
config:

    NAME                                            STATE     READ WRITE CKSUM
    z5                                              ONLINE       0     0     0
      raidz2-0                                      ONLINE       0     0     0
        gptid/fd21b55b-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fdcef5f4-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fe7dada2-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/0171e4aa-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/0215485c-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/02cae973-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0

errors: No known data errors

En interessant ting her er at alle diskene som er byttet ut er Seagate ST3000DM001-9YN166 med firmware CC4B, og det finnes nyere firmware til disse (CC4H). Mulig at det har spilt en rolle.

Lenke til kommentar
  • 1 år senere...
  • 1 år senere...

En av diskene (ada4) begynte å få problemer for en tid siden, det resulterte i en scrub som tok flere uker:

 

tingo@kg-f5$ date;zpool status
Sun May 28 14:03:27 CEST 2017
  pool: z5
 state: ONLINE
  scan: scrub repaired 115M in 854h1m with 0 errors on Sun May 28 14:02:55 2017
config:

    NAME                                            STATE     READ WRITE CKSUM
    z5                                              ONLINE       0     0     0
      raidz2-0                                      ONLINE       0     0     0
        gptid/234c4d71-aa59-11e5-b934-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fdcef5f4-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fe7dada2-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/4d88b8f2-dc48-11e4-911f-3085a9ebf2a2  ONLINE       0     0     0
        gptid/0215485c-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/02cae973-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0

errors: No known data errors

byttet disken når scrub'en var ferdig, og nå går resilver i "vanlig" fart:

 

tingo@kg-f5$ date;zpool status
Sun May 28 19:17:45 CEST 2017
  pool: z5
 state: ONLINE
status: One or more devices is currently being resilvered.  The pool will
    continue to function, possibly in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Sun May 28 15:18:43 2017
        2.88T scanned out of 9.65T at 211M/s, 9h21m to go
        491G resilvered, 29.85% done
config:

    NAME                                            STATE     READ WRITE CKSUM
    z5                                              ONLINE       0     0     0
      raidz2-0                                      ONLINE       0     0     0
        gptid/234c4d71-aa59-11e5-b934-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fdcef5f4-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fe7dada2-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/4d88b8f2-dc48-11e4-911f-3085a9ebf2a2  ONLINE       0     0     0
        gptid/2aeaa816-43a8-11e7-b637-3085a9ebf2a2  ONLINE       0     0     0  (resilvering)
        gptid/02cae973-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0

errors: No known data errors

Kjekt at det virker...

Lenke til kommentar
  • 2 uker senere...

Og her er status for en scrub i "vanlig" fart:

 

tingo@kg-f5$ zpool status
  pool: z5
 state: ONLINE
  scan: scrub repaired 96K in 15h30m with 0 errors on Sun Jun  4 15:30:56 2017
config:

    NAME                                            STATE     READ WRITE CKSUM
    z5                                              ONLINE       0     0     0
      raidz2-0                                      ONLINE       0     0     0
        gptid/234c4d71-aa59-11e5-b934-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fdcef5f4-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/fe7dada2-a41b-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0
        gptid/4d88b8f2-dc48-11e4-911f-3085a9ebf2a2  ONLINE       0     0     0
        gptid/2aeaa816-43a8-11e7-b637-3085a9ebf2a2  ONLINE       0     0     0
        gptid/02cae973-a41c-11e4-a84c-3085a9ebf2a2  ONLINE       0     0     0

errors: No known data errors

Ikke så verst.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...