zpool showing more storage than it should

1

I just expanded my zpool named storage with 3 HGST 6TB drives in raidz1. I thought this would add only about 11.x TB of storage (since they are really 6000GB drives) how ever now zpool list shows I have 27.1 TB total. This seems more than I should have. I am terrified I did some thing wrong and I have lost parity on my home server array. I added them to the pool with

sudo zpool add -f storage raidz1 drive1 drive2 drive3

Have I done something wrong and if so is it possible to revert my change?

sudo zpool list

NAME      SIZE  ALLOC   FREE  EXPANDSZ   FRAG    CAP  DEDUP  HEALTH  ALTROOT
storage  27.1T  9.32T  17.8T         -      -    34%  1.00x  ONLINE  -

sudo zpool status

NAME                                          STATE     READ WRITE CKSUM
    storage                                       ONLINE       0     0     0
      mirror-0                                    ONLINE       0     0     0
        ata-WDC_WD60EFRX-68MYMN1_WD-WX11DA40H4ZK  ONLINE       0     0     0
        ata-WDC_WD60EFRX-68MYMN1_WD-WX51D6410414  ONLINE       0     0     0
      mirror-1                                    ONLINE       0     0     0
        ata-WDC_WD60EFRX-68MYMN1_WD-WX91D65355TK  ONLINE       0     0     0
        ata-WDC_WD60EFRX-68L0BN1_WD-WXB1HB4TP7L0  ONLINE       0     0     0
      raidz1-2                                    ONLINE       0     0     0
        wwn-0x5000cca255c02505                    ONLINE       0     0     0
        wwn-0x5000cca255c039a7                    ONLINE       0     0     0
        wwn-0x5000cca255c03b95                    ONLINE       0     0     0

errors: No known data errors

sudo fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdc'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdc: 250.1 GB, 250059350016 bytes**This is the OS Drive**
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xcb1189ee

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1               1   488397167   244198583+  ee  GPT

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdd'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdd: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdd1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sde'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sde: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sde1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdf'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdf: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdf1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdg'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdg: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdg1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdh'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdh: 6001.2 GB, 6001175126016 bytes
256 heads, 63 sectors/track, 726751 cylinders, total 11721045168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdh1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

sudo lshw -class disk

        *-disk:0
         description: ATA Disk
         product: HGST HDN726060AL
         physical id: 0.0.0
         bus info: scsi@0:0.0.0
         logical name: /dev/sdf
         version: T517
         serial: K1G0HW1B
         size: 5589GiB (6001GB)
         capacity: 5589GiB (6001GB)
         capabilities: 15000rpm gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=6 guid=62a489e5-51af-c94f-9535-235b7bbe2d15 sectorsize=4096
    *-disk:1
         description: ATA Disk
         product: HGST HDN726060AL
         physical id: 0.1.0
         bus info: scsi@0:0.1.0
         logical name: /dev/sdg
         version: T517
         serial: K1G09VRB
         size: 5589GiB (6001GB)
         capacity: 5589GiB (6001GB)
         capabilities: 15000rpm gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=6 guid=a7295fde-f0f8-7f41-8546-7ee02490d72b sectorsize=4096
    *-disk:2
         description: ATA Disk
         product: HGST HDN726060AL
         physical id: 0.2.0
         bus info: scsi@0:0.2.0
         logical name: /dev/sdh
         version: T517
         serial: K1G0HB3B
         size: 5589GiB (6001GB)
         capacity: 5589GiB (6001GB)
         capabilities: 15000rpm gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=6 guid=4677c5c9-364a-c943-a8d5-90d2159f3cf0 sectorsize=4096
    *-disk
         description: ATA Disk
         product: WDC WD60EFRX-68M
         vendor: Western Digital
         physical id: 0.0.0
         bus info: scsi@1:0.0.0
         logical name: /dev/sda
         version: 82.0
         serial: WD-WX91D65355TK
         size: 5589GiB (6001GB)
         capabilities: gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=5 guid=e4026c6a-61c5-9a4a-adaf-ebcdf8bba68c sectorsize=4096
    *-disk
         description: ATA Disk
         product: WDC WD60EFRX-68L
         vendor: Western Digital
         physical id: 0.0.0
         bus info: scsi@2:0.0.0
         logical name: /dev/sdb
         version: 82.0
         serial: WD-WXB1HB4TP7L0
         size: 5589GiB (6001GB)
         capabilities: gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=5 guid=8b576966-3d94-424b-aae9-9fb35c0e070a sectorsize=4096
    *-disk
         description: ATA Disk
         product: Samsung SSD 840
         physical id: 0.0.0
         bus info: scsi@4:0.0.0
         logical name: /dev/sdc
         version: EXT0
         serial: S1DBNEADA00610E
         size: 232GiB (250GB)
         capabilities: gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=5 guid=8d48ca17-2e53-4ee4-a040-e80362e68eca sectorsize=512
    *-disk
         description: ATA Disk
         product: WDC WD60EFRX-68M
         vendor: Western Digital
         physical id: 0.0.0
         bus info: scsi@5:0.0.0
         logical name: /dev/sdd
         version: 82.0
         serial: WD-WX11DA40H4ZK
         size: 5589GiB (6001GB)
         capabilities: gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=5 guid=5811c203-99cd-5342-bb8f-c838f896b64e sectorsize=4096
  *-disk
         description: ATA Disk
         product: WDC WD60EFRX-68M
         vendor: Western Digital
         physical id: 0.0.0
         bus info: scsi@6:0.0.0
         logical name: /dev/sde
         version: 82.0
         serial: WD-WX51D6410414
         size: 5589GiB (6001GB)
         capabilities: gpt-1.00 partitioned partitioned:gpt
         configuration: ansiversion=5 guid=c24e5950-cd95-f94b-826a-21a004221d32 sectorsize=4096
ubuntu
raid
zfs
asked on Server Fault May 22, 2016 by NathanTheGr8

1 Answer

3

Oh no! You did something kinda bad...

Please read: http://nex7.blogspot.com/2013/03/readme1st.html

Two issues to note:

Under RAIDZ1|2|3, the zpool command reflects the size of the disks comprising the pool, including parity. zfs list will show usable space. That's where the discrepancy comes from.

Also, what you ended up doing was... expanding a 4-disk RAID 1+0 (ZFS mirrors) by adding a RAIDZ1 group of 3 disks.

So your mirrors mean that the RAID1 pairs are striped together. Fine. But by adding a RAIDZ1 group, you now have a stripe across two mirror sets and a RAIDZ1.

Failure of either two disks in a mirror group or two disks in the RAIDZ1 group would result in total pool failure.

You should have added an even number if disks by creating more mirror pairs. Right now, you have no option to revert the change because your data is scattered across the disk groups. This is probably a backup.rebuild.restore situation.

answered on Server Fault May 22, 2016 by ewwhite • edited May 22, 2016 by ewwhite

User contributions licensed under CC BY-SA 3.0