È necessario sostituire il disco in zpool ... confuso


12

Devo sostituire un disco danneggiato in uno zpool su FreeNAS.

zpool status Spettacoli

  pool: raid-5x3
 state: ONLINE
 scrub: scrub completed after 15h52m with 0 errors on Sun Mar 30 13:52:46 2014
config:

    NAME                                            STATE     READ WRITE CKSUM
    raid-5x3                                        ONLINE       0     0     0
      raidz1                                        ONLINE       0     0     0
        ada5p2                                      ONLINE       0     0     0
        gptid/a767b8ef-1c95-11e2-af4c-f46d049aaeca  ONLINE       0     0     0
        ada8p2                                      ONLINE       0     0     0
        ada10p2                                     ONLINE       0     0     0
        ada7p2                                      ONLINE       0     0     0

errors: No known data errors

  pool: raid2
 state: DEGRADED
status: One or more devices could not be opened.  Sufficient replicas exist for
    the pool to continue functioning in a degraded state.
action: Attach the missing device and online it using 'zpool online'.
   see: http://www.sun.com/msg/ZFS-8000-2Q
 scrub: none requested
config:

    NAME                                            STATE     READ WRITE CKSUM
    raid2                                           DEGRADED     0     0     0
      raidz1                                        DEGRADED     0     0     0
        gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca  UNAVAIL      0     0     0  cannot open
        gptid/60570005-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0
        gptid/61925b86-3ff2-11e2-9437-f46d049aaeca  ONLINE       0     0     0

errors: No known data errors

glabel status Spettacoli

                                      Name  Status  Components
                             ufs/FreeNASs3     N/A  da0s3
                             ufs/FreeNASs4     N/A  da0s4
                    ufsid/4fa405ab96518680     N/A  da0s1a
                            ufs/FreeNASs1a     N/A  da0s1a
                            ufs/FreeNASs2a     N/A  da0s2a
gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca     N/A  ada1p2
gptid/60570005-3ff2-11e2-9437-f46d049aaeca     N/A  ada3p2
gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca     N/A  ada4p2
gptid/a767b8ef-1c95-11e2-af4c-f46d049aaeca     N/A  ada6p2
gptid/61925b86-3ff2-11e2-9437-f46d049aaeca     N/A  ada9p2
gptid/4599731b-8f15-11e1-a14c-f46d049aaeca     N/A  ada10p2

camcontrol devlist Spettacoli

<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus0 target 0 lun 0 (pass0,ada0)
<ST3000VX000-9YW166 CV13>          at scbus4 target 0 lun 0 (pass1,ada1)
<ST3000VX000-9YW166 CV13>          at scbus6 target 0 lun 0 (pass3,ada3)
<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus7 target 0 lun 0 (pass4,ada4)
<ST3000DM001-9YN166 CC4C>          at scbus8 target 0 lun 0 (pass5,ada5)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus8 target 1 lun 0 (pass6,ada6)
<WDC WD30EZRX-00MMMB0 80.00A80>    at scbus9 target 0 lun 0 (pass7,ada7)
<ST3000DM001-9YN166 CC4C>          at scbus9 target 1 lun 0 (pass8,ada8)
<Hitachi HDS723030BLE640 MX6OAAB0>  at scbus10 target 0 lun 0 (pass9,ada9)
<Hitachi HDS5C3030ALA630 MEAOA580>  at scbus11 target 0 lun 0 (pass10,ada10)
< USB Flash Memory 1.00>           at scbus12 target 0 lun 0 (pass11,da0)

Sono abbastanza sicuro che ada2sia il disco danneggiato.

Sembra che ho lasciato un pezzo di ricambio lì dentro - ada0 - l'ultima volta che sono stato nella scatola. Posso sostituire ada2 con ada0 da remoto? Fino a quando qualcuno non arriva in ufficio? Con quali comandi?

Ecco cosa non capisco:

  1. Perché ada0, ada2, ada5, ada7 e ada8 non compaiono in glabel status?
  2. Perché zpool statusmostra quei lunghi gptid per alcuni dischi e nomi "ada" per altri?
  3. Se lo desidero zpool replace raid2, cosa devo usare per i nomi dei dispositivi e dei nuovi dispositivi?

Risposte:


17

FreeNAS è una soluzione NAS, in quanto tale, alcune scelte tecniche sono nascoste dietro qualsiasi firmware, sistema o GUI che tale dispositivo possa utilizzare.

Se ottieni lo schema di partizione utilizzato su un determinato disco all'interno di un pool ZFS creato con FreeNAS (piccolo esempio di macchina virtuale):

$ glabel status
                                      Name  Status  Components
gptid/a699226f-bcc4-11e3-952d-0800271cd34d     N/A  ada4p2
gptid/a6cfc072-bcc4-11e3-952d-0800271cd34d     N/A  ada5p2
gptid/a707f034-bcc4-11e3-952d-0800271cd34d     N/A  ada6p2

Uno sguardo più attento al disco ada4:

$ gpart show ada4
=>      34  62914493  ada4  GPT  (30G)
        34        94        - free -  (47k)
       128   4194304     1  freebsd-swap  (2.0G)
   4194432  58720095     2  freebsd-zfs  (28G)

FreeNAS sta aggiungendo una piccola partizione di swap su ogni disco aggiunto, mentre lo spazio su disco rimanente si trova sulla seconda partizione (aka p2per ada4p2).

Perché ?

Perchè no. IMHO, potrebbe avere qualcosa a che fare con l' allineamento delle partizioni , ma può anche essere semplicemente perché FreeNAS è solitamente installato su una chiave USB o su una piccola unità CF senza alcuno scambio (o uno è la scusa per l'altro).

Informazioni sulle tue domande:

  1. Perché ada0, ada2, ada5, ada7 e ada8 non compaiono nello stato glabel?

    glabelè l'abbreviazione di etichettatura GEOM. Quindi visualizza solo le informazioni relative alle partizioni / fs supportate (vedi man glabel per un elenco più completo delle partizioni supportate). In questo caso, i dischi stessi e le partizioni di swap non vengono visualizzati.

  2. Perché zpool statusmostra quei lunghi gptid per alcuni dischi e nomi "ada" per altri?

    Come nella domanda 1: a causa dell'etichettatura GEOM, o in quel caso particolare, la sua mancanza.

    A volte le partizioni non avviate / etichettate tramite glabel (o perdono queste informazioni). In tutti i casi: non preoccuparti troppo, questa è solo una cosa da nominare. Quindi non sarebbe la fine del mondo se una partizione avesse un gptid e l'altro un semplice nome di dispositivo.

    Ovviamente, non puoi cambiare l'etichetta una volta che le partizioni sono in uno zpool (il sistema che ti impedisce di modificare le partizioni usate - ha senso).

  3. Se lo desidero zpool replace raid2, cosa devo usare per i nomi dei dispositivi e dei nuovi dispositivi?

    Come visto, potrebbe essere meglio lasciare che FreeNAS imposti le cose per quanto riguarda il partizionamento dei dischi: sostituzione di un'unità guasta su FreeNAS .

    Tuttavia, è anche possibile farlo a mano senza preoccuparsi del partizionamento (il re-silvering entrerà automaticamente in funzione e durerà circa il tempo in cui sei usato mentre fai uno scrub - per darti un ordine di grandezza):

    $ zpool replace raid2 gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca /dev/ada0
    

    Una volta terminato il re-silvering, avresti qualcosa del genere:

    $ zpool status raid2
      pool: raid2
     state: ONLINE
      scan: resilvered ...G in ?h?m with 0 errors on Sun Apr  6 17:17:25 2014
    config:
    
            NAME                                              STATE     READ WRITE CKSUM
            NAME                                              STATE     READ WRITE CKSUM
            raid2                                             ONLINE       0     0     0
              raidz1                                          ONLINE       0     0     0
                gptid/5f3c0517-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                replacing-0
                  gptid/5fe33556-3ff2-11e2-9437-f46d049aaeca  UNAVAIL      0     0     0  cannot open
                  ada0                                        ONLINE       0     0     0
                gptid/60570005-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                gptid/60ebeaa5-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
                gptid/61925b86-3ff2-11e2-9437-f46d049aaeca    ONLINE       0     0     0
    

    Quindi a zpool detach raid2 gptid/5fe33556-3ff2-11e2-9437-f46d049aaecaper rimuovere il dispositivo difettoso dallo zpool.

    Potresti ancora pianificare una sostituzione migliore / più "in-line" quando hai un nuovo disco sostituito con quello difettoso. Ti consiglio di impostare attentamente le cose su una VM e preparare tutto ciò (poiché sembra che tu sia nuovo in questo).

    ZFS è un bel filesystem con molte grandi funzionalità MA richiede pianificazione.

Per maggiori informazioni :


1
Ottima risposta Non ero a conoscenza di ciò che FreeNAS ha fatto dietro le quinte, proveniente dai mondi Nexenta e Linux ZFS.
ewwhite,

1
FreeNAS aggiunge una piccola partizione di swap non per l'allineamento, ma poiché i dischi sostitutivi potrebbero non avere esattamente le stesse dimensioni - se il disco sostitutivo è più piccolo non può essere utilizzato, l'aggiunta di una partizione di swap per utilizzare una piccola quantità di spazio assicura che non può accadere, perché la partizione per zfs sul disco esistente sarà più piccola di 2-3 GB, garantendo che il nuovo disco non sia più piccolo.
Stilez

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.