Skip to content

ZFS - One Disk Pool -> Mirror Pool

Linux
  • Auf meinem neuen Rechner, habe ich einen Proxmox installiert. Als Datengrab hatte ich eine Platte meines alten RAID Verbundes genommen und dort eingebaut.

    Dann alle Daten vom NAS auf die neue Platte im Proxmox geschaufelt. Die Platte sieht so aus.

    root@pve:~# zpool status
      pool: ZFS-Pool
     state: ONLINE
    config:
    
    	NAME                                        STATE     READ WRITE CKSUM
    	ZFS-Pool                                    ONLINE       0     0     0
    	  ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    
    errors: No known data errors
    

    Ok, so weit so gut. Nachdem jetzt alle Daten drüben sind, ich das so weit es ging kontrolliert habe, nehme ich jetzt die zweite Platte aus dem NAS heraus und möchte diese zu dem ZFS-Pool hängen, so das ein Mirror entsteht. Keine Sorge, wenn was schief geht, ich habe auch immer noch ein Backup des NAS 🙂

    Mal schnell im Netz ein paar Seiten angeschaut und ein, zwei Videos angesehen. Ich denke ich weiß jetzt, wie es geht ....

    Ok, erster Versuch

    Bitte nicht die Disk Label sda sdb usw. benutzen! Nur die IDs aus /dev/disk/by-id !!

    root@pve:~# zpool attach ZFS-Pool sda sdb
    cannot attach sdb to sda: no such device in pool
    

    Hmm, geht nicht. Mir war aber sehr schnell klar, woran das lag. Wie man im Status sieht, hat die PVE Software, den Namen von /dev/disk/by-id genommen.

    root@pve:/dev/disk# ls by-id/
    ata-WDC_ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26
    [..gekürzt..]
    

    Ich hatte jetzt folgendes eingegeben

    root@pve:~# zpool attach ZFS-Pool ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26 sdb
    

    Nach kurzer Zeit war der Befehl fertig. Kontrolle

    root@pve:~# zpool status
      pool: ZFS-Pool
     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 Oct 17 08:25:49 2021
    	55.7G scanned at 6.19G/s, 264K issued at 29.3K/s, 838G total
    	0B resilvered, 0.00% done, no estimated completion time
    config:
    
    	NAME                                          STATE     READ WRITE CKSUM
    	ZFS-Pool                                      ONLINE       0     0     0
    	  mirror-0                                    ONLINE       0     0     0
    	    ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    	    sdb                                       ONLINE       0     0     0
    
    errors: No known data errors
    

    Wie man sieht, ist der Mirror vorhanden. Der Mirror macht aktuell einen "resilver", ok kann ich mir nicht richtig übersetzen aber ich weiß ja was er jetzt macht. Er spiegelt die Daten von der einen Platte auf die anderen. Später sieht das so aus.

    root@pve:/dev/disk# zpool status -v ZFS-Pool
      pool: ZFS-Pool
     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 Oct 17 08:25:49 2021
    	838G scanned at 502M/s, 185G issued at 111M/s, 838G total
    	187G resilvered, 22.06% done, 01:40:33 to go
    config:
    
    	NAME                                          STATE     READ WRITE CKSUM
    	ZFS-Pool                                      ONLINE       0     0     0
    	  mirror-0                                    ONLINE       0     0     0
    	    ata-WDC_WD40EZRZ-00GXCB0_WD-WCC7K6XD2C26  ONLINE       0     0     0
    	    sdb                                       ONLINE       0     0     0  (resilvering)
    
    errors: No known data errors
    

    OK, ist noch dran 🙂

    Jetzt so im Nachhinein betrachtet, bekomme ich ein wenig Kopfschmerzen, ob ich nicht auch besser die by-id benutzt hätte!?? Das weiß ich aktuell nicht, muss ich googeln.

    Was man machen könnte, das Laufwerk sdb detachen und dann mit by-id attachen. Aber, ob das Sinn macht???

    Hier ein netter Beitrag im Netz, was man machen kann wenn die Label falsch sind.