laenger
ACME Produkttester
zpool zerstört Label [gelöst]
Hello zusammen,
leider scheitere ich beim Versuch ein raidz aus 3 gelabelten Festplatten zu erstellen.
Folgende Konfiguration:
Verbaut sind 4 Festplatten.
/dev/ada0 für das System, die restlichen 3 sollen zu einem ZFS-Pool zusammengefasst werden.
Auf der Systemfestplatte sind bereits zwei Label vorhanden.
Jetzt werden die 3 Festplatten welche den ZFS-Pool bilden sollen gelabelt.
Die Label wurden ordnungsgemäß erstellt.
Bei den verwendeten Datenträgern handelt es sich um 3 gleiche Western Digital RED Festplatten.
Wenn ich das richtig verstanden habe besitzen diese Festplatten 4K-Sektoren täuschen jedoch 512byte-Sektoren vor.
In Kombination mit ZFS sollte man ashift=12 verwenden (2^12=4096).
Dies hab ich mit Hilfe von gnop gemacht.
Überprüft mit:
Jetzt kann der Pool erstellt werden.
Nun wird der Pool exportiert und gnop node entfernt.
Überprüft:
Der Pool wird nun wieder importiert.
Genau hier liegt mein Problem. Warum wird die letzte Festplatte nicht mit ihrem Label im zpool eingefügt?
Eine erneute Auflistung zeigt mir, dass die letzte Festplatte kein Label Besitzt.
ZFS3 fehlt 
Nehme ich diese Festplatt hingegen wieder aus dem Pool heraus, erscheint das Label wieder.
Erneutes hinzufügen der Festplatte lässt das Label wieder verschwinden und im Pool wird diese wieder als ada3 und nicht per Labelname eingebunden.
Auch ein Neustart des Systems ändert daran nichts.
Bin für alle Tipps, Tricks und jegliche Hilfe dankbar,
laenger
Hello zusammen,
leider scheitere ich beim Versuch ein raidz aus 3 gelabelten Festplatten zu erstellen.
Folgende Konfiguration:
Verbaut sind 4 Festplatten.
/dev/ada0 für das System, die restlichen 3 sollen zu einem ZFS-Pool zusammengefasst werden.
Code:
[B]# uname -mv[/B]
FreeBSD 9.1-RELEASE #0 r243825: Tue Dec 4 09:23:10 UTC 2012 [email]root@farrell.cse.buffalo.edu[/email]:/usr/obj/usr/src/sys/GENERIC amd64
Code:
[B]# ls -al /dev/label[/B]
total 0
crw-r----- 1 root operator 0, 137 Feb 15 22:22 rootfs
crw-r----- 1 root operator 0, 140 Feb 15 21:22 swap
[B]# camcontrol devlist[/B]
<ST3250620AS 3.AAE> at scbus0 target 0 lun 0 (ada0,pass0)
<WDC WD20EFRX-68AX9N0 80.00A80> at scbus2 target 0 lun 0 (ada1,pass1)
<WDC WD20EFRX-68AX9N0 80.00A80> at scbus3 target 0 lun 0 (ada2,pass2)
<WDC WD20EFRX-68AX9N0 80.00A80> at scbus4 target 0 lun 0 (ada3,pass3)
Jetzt werden die 3 Festplatten welche den ZFS-Pool bilden sollen gelabelt.
Code:
[B]# glabel label ZFS1 /dev/ada1
# glabel label ZFS2 /dev/ada2
# glabel label ZFS3 /dev/ada3[/B]
Die Label wurden ordnungsgemäß erstellt.
Code:
[B]# glabel list | grep -A3 -B3 ZFS[/B]
Geom name: ada3
Providers:
1. Name: label/ZFS3
Mediasize: 2000398933504 (1.8T)
Sectorsize: 512
Stripesize: 4096
--
Geom name: ada2
Providers:
1. Name: label/ZFS2
Mediasize: 2000398933504 (1.8T)
Sectorsize: 512
Stripesize: 4096
--
Geom name: ada1
Providers:
1. Name: label/ZFS1
Mediasize: 2000398933504 (1.8T)
Sectorsize: 512
Stripesize: 4096
Bei den verwendeten Datenträgern handelt es sich um 3 gleiche Western Digital RED Festplatten.
Code:
[B]# diskinfo -v /dev/label/ZFS1[/B]
/dev/label/ZFS1
512 # sectorsize
2000398933504 # mediasize in bytes (1.8T)
3907029167 # mediasize in sectors
4096 # stripesize
0 # stripeoffset
3876020 # Cylinders according to firmware.
16 # Heads according to firmware.
63 # Sectors according to firmware.
Wenn ich das richtig verstanden habe besitzen diese Festplatten 4K-Sektoren täuschen jedoch 512byte-Sektoren vor.
In Kombination mit ZFS sollte man ashift=12 verwenden (2^12=4096).
Dies hab ich mit Hilfe von gnop gemacht.
Code:
[B]# gnop create -S 4096 /dev/label/ZFS1
# gnop create -S 4096 /dev/label/ZFS2
# gnop create -S 4096 /dev/label/ZFS3[/B]
Überprüft mit:
Code:
[B]# ls -l /dev/label[/B]
total 0
crw-r----- 1 root operator 0, 163 Feb 15 21:36 ZFS1
crw-r----- 1 root operator 0, 164 Feb 15 21:54 ZFS1.nop
crw-r----- 1 root operator 0, 162 Feb 15 21:36 ZFS2
crw-r----- 1 root operator 0, 165 Feb 15 21:54 ZFS2.nop
crw-r----- 1 root operator 0, 153 Feb 15 21:36 ZFS3
crw-r----- 1 root operator 0, 166 Feb 15 21:54 ZFS3.nop
crw-r----- 1 root operator 0, 137 Feb 15 22:22 rootfs
crw-r----- 1 root operator 0, 140 Feb 15 21:22 swap
Jetzt kann der Pool erstellt werden.
Code:
[B]# zpool create -m /mnt/zpool daten raidz /dev/label/ZFS{1,2,3}.nop[/B]
[B]# zpool status[/B]
pool: daten
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
daten ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
label/ZFS1.nop ONLINE 0 0 0
label/ZFS2.nop ONLINE 0 0 0
label/ZFS3.nop ONLINE 0 0 0
[B]# zdb | grep ashift[/B]
ashift: 12
Nun wird der Pool exportiert und gnop node entfernt.
Code:
[B]# zpool export daten
# gnop destroy /dev/label/ZFS1.nop /dev/label/ZFS2.nop /dev/label/ZFS3.nop[/B]
Überprüft:
Code:
[B]# ls -l /dev/label[/B]
total 0
crw-r----- 1 root operator 0, 163 Feb 15 21:36 ZFS1
crw-r----- 1 root operator 0, 162 Feb 15 21:36 ZFS2
crw-r----- 1 root operator 0, 153 Feb 15 21:36 ZFS3
crw-r----- 1 root operator 0, 137 Feb 15 22:22 rootfs
crw-r----- 1 root operator 0, 140 Feb 15 21:22 swap
Der Pool wird nun wieder importiert.
Code:
[B]# zpool import daten
# zpool status[/B]
pool: daten
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
daten ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
label/ZFS1 ONLINE 0 0 0
label/ZFS2 ONLINE 0 0 0
[COLOR="Red"][B]ada3[/B][/COLOR] ONLINE 0 0 0
Genau hier liegt mein Problem. Warum wird die letzte Festplatte nicht mit ihrem Label im zpool eingefügt?
Eine erneute Auflistung zeigt mir, dass die letzte Festplatte kein Label Besitzt.
Code:
[B]# ls -l /dev/label[/B]
total 0
crw-r----- 1 root operator 0, 163 Feb 15 21:36 ZFS1
crw-r----- 1 root operator 0, 162 Feb 15 21:36 ZFS2
crw-r----- 1 root operator 0, 137 Feb 15 22:22 rootfs
crw-r----- 1 root operator 0, 140 Feb 15 21:22 swap

Nehme ich diese Festplatt hingegen wieder aus dem Pool heraus, erscheint das Label wieder.
Code:
[B]# zpool offline daten ada3
# ls -l /dev/label[/B]
total 0
crw-r----- 1 root operator 0, 163 Feb 15 21:36 ZFS1
crw-r----- 1 root operator 0, 162 Feb 15 21:36 ZFS2
crw-r----- 1 root operator 0, 144 Feb 15 22:16 ZFS3
crw-r----- 1 root operator 0, 137 Feb 15 22:22 rootfs
crw-r----- 1 root operator 0, 140 Feb 15 21:22 swap
Erneutes hinzufügen der Festplatte lässt das Label wieder verschwinden und im Pool wird diese wieder als ada3 und nicht per Labelname eingebunden.
Auch ein Neustart des Systems ändert daran nichts.
Bin für alle Tipps, Tricks und jegliche Hilfe dankbar,
laenger
Last edited:




