Expanding storage spaces parity array

Discussion in 'Windows Server, Hyper-V Virtualization' started by nasomi, Jan 31, 2016.

  1. nasomi

    nasomi Member

    Joined:
    Jan 11, 2016
    Messages:
    34
    Likes Received:
    8
    I have a storage pool with 5x4tb hdd's, and a single volume created that is mounted and 14.5tb. I want to add 2 more 4tb hdd's. That would give me 28tb of space unformatted, and with a parity capacity, 24tb, 21.8tb formatted.

    I have data on the drive now. I've had a hard time finding documentation on this. When I add two drives tot he pool, then expand the volume, the system should, by all logic, recalculate the parity bit to all the drives. Otherwise, it would just increase the available space as the parity bit is calculated.

    Any idea how storage spaces processes this?
     
    #1
  2. cesmith9999

    cesmith9999 Well-Known Member

    Joined:
    Mar 26, 2013
    Messages:
    1,097
    Likes Received:
    333
    2012 R2 or 2016 TP4?

    2012 R2 you have to add 5 more disks to extend your volume

    2016 TP4 you can re-stripe your VDisk in the storage pool.

    Chris
     
    #2
    nikalai likes this.
  3. nasomi

    nasomi Member

    Joined:
    Jan 11, 2016
    Messages:
    34
    Likes Received:
    8
    Regular 2012. I'm hoping I don't have toa dd 5 more disks...
     
    #3
  4. cesmith9999

    cesmith9999 Well-Known Member

    Joined:
    Mar 26, 2013
    Messages:
    1,097
    Likes Received:
    333
    is your provisioning fixed or thin?

    if it is fixed. then you have to add 5 disks.

    if it is thin. then we can migrate to a new vdisk with a new layout. there was a thread a long time a go where another person had the same issue.

    the migration will be over time and in small increments.

    Chris
     
    #4
  5. nasomi

    nasomi Member

    Joined:
    Jan 11, 2016
    Messages:
    34
    Likes Received:
    8
    Thank you for the clarification. The provisioning is fixed, so I guess i'll need to offload the data somewhere so I can create the 7 disk volume in one shot.
     
    #5
  6. sybreeder

    sybreeder New Member

    Joined:
    Oct 8, 2013
    Messages:
    18
    Likes Received:
    1
    It depends on number of columns. I created yesterday 3disk parity storage spaces with numberofcolumns =3 and i could add 3 more disks to the pool. it created configuration similar to raid50 and i can lose 2 disks.
     
    #6
  7. smidley

    smidley New Member

    Joined:
    Feb 7, 2011
    Messages:
    17
    Likes Received:
    0
    Can you explain how to do this in 2016? I'm looking at building a SS array with parity and I would like some way to expand it when I just add one physical drive.
     
    #7
  8. cesmith9999

    cesmith9999 Well-Known Member

    Joined:
    Mar 26, 2013
    Messages:
    1,097
    Likes Received:
    333
  9. Kogashuko

    Kogashuko New Member

    Joined:
    Jun 16, 2019
    Messages:
    3
    Likes Received:
    0
    So I am running 2019 with three spinning disks and two SSDs in a mirrored tiered array. I am trying to expand adding a drive. Sever simply refuses to add it. How many drives do I have to add to make this work right?
     
    #9
  10. cesmith9999

    cesmith9999 Well-Known Member

    Joined:
    Mar 26, 2013
    Messages:
    1,097
    Likes Received:
    333
    3 hdd or 2 sdd. It is hard to just add 1 disk in Storage Spaces.

    Chris
     
    #10
    Evan likes this.
  11. Kogashuko

    Kogashuko New Member

    Joined:
    Jun 16, 2019
    Messages:
    3
    Likes Received:
    0
    So what you are telling me is if I am going to upgrade the server, like adding a NVME tier, at this point I am probably better off transferring all of it over to my old parity server and then setting up a new disk pool on my old one with four physical disks, two SSDs, and two NVME drives. The tier the thing, using an article about parity / mirriored storage spaces, and put the physical disks in parody and the SSDs and NVMEs into a mirrored configuration? My understanding if I do that I can add SSDs or NVMEs in pairs and single spinning disks individually. Not to mention parity is more efficient with storage since currently I have three 8tb spinning disks and two 1tb SSDs and the thing only gave me 11TB of space.

    A good powershell how to or youtube video would be appreciated. I always seem to gravitate to a GUI and it pisses me off when there are features that arnt added in that are mission critical but available in powershell.
     
    #11
  12. red_vette

    red_vette New Member

    Joined:
    Jul 13, 2019
    Messages:
    8
    Likes Received:
    1
    It doesn't matter if you do tiering or not, parity requires you to add enough disks to cover the number of columns specified.

    Think of it as a row of bricks. If you have 3 columns, that means that 3 bricks are lined up in a row. When you expand, you are adding a new row and needs the same number of bricks. If you expand again, add a new row with 3 bricks. The optimize storage just takes the files in the first row and evenly distributes them among the new rows.

    This is unlike some other RAID systems that instead of building layers, just adds the new brick to the end of the row. Then takes the data and chops up into more pieces and recalculate parity. Thus taking up less space overall for parity storage as a percent of the overall volume.

    With Storage Spaces, deciding column size up front really sets you in stone unless you can migrate off to another pool. You are then doubly locked in with tiers as they require a fixed amount.
     
    #12
  13. Kogashuko

    Kogashuko New Member

    Joined:
    Jun 16, 2019
    Messages:
    3
    Likes Received:
    0
    Thank you. That makes perfect sense. At least the best that I have read. I am still looking at going to parody for my capacity tier then have SSD and NVMe in a mirrored tier. With my current mirrored setup with SSDs and HHDs in it I give up too much space. Before I had a simple parody array on Server 2012 R2 with three 5TB drives. When I built my latest one with an old r510 I installed three 8tb HHDs and two 1tb SSD drives. Its pretty fast but only a total capacity of around 11tb where the old one is at around 13tb. This isnt exact but you get the picture. Now that I have a forth 8tb HHD it only makes sense to rebuild since the r510 will only have enough bays to drop in a two more SSDs and four more HHDs before I have to go to an external JBOD. At this point I am probably best to get two NVMe drives as well prior to reconfiguing the server so I will have an NVMe tier. It almost looks to me like that will be impossible to install later. So two relatively small drives will be fine as long as windows server sees two of them. I can replace them later with bigger ones if I am not mistaken as long as I am keeping the total amount of drives the same or matching the total number of columns when I update.

    So which option is best.

    A) throw all of the drives into the system and put them together in parody letting windows setup the tiers (my understanding is that this will not work because Windows server 2019 cant use SSDs or NVMe for cacheing without manually putting SSDs or NVMe drives in a hybrid mirrored storage configuration.)

    B) use powershell (something that I am shaky on and can find really little documentation) to make an HHD parody capacity tier and an SSD and NVMe cache tier in a mirrored configuration.

    C) do the same as B only put the SSD tier in the capacity parody tier (since it will not be used for write back cache) and leave NVMe as the only set of drives in the mirrored tier.

    D) just rebuild the whole thing like I did this last time but instead of having three HHDs I would have four HHDs, two SSDs, and two NVMes. Just have them all in a mirrored array. That way to upgrade I just need to drop in either two SSDs or four HHDs. I would replace the NVMes individually. I really dont need seeing more that 250gb of cache at this point ever.

    I know this is a little off topic but I think this goes back to figuring out columns and needed drives under the OPs topic. If it was as easy as you described it above no one would have a problem. At this point I know exactly how many drives I have to add in my current config.

    Thanks.
     
    #13
  14. nonyhaha

    nonyhaha New Member

    Joined:
    Nov 18, 2018
    Messages:
    4
    Likes Received:
    5
    1. So you want to start a parity storage space (minimum 3 drives)

    2. Chris says you can do this with a command in powershell.

    3. You are trying to add a single disk to a mirrored/"parity" storage space and it fails.

    4. You now say you can't add a single disk to an existing storage space.

    Which is it? I need to move from an existing 2 way mirror to a parity storage space.

    I have 2x4tb mirrorer and 2x4tb new disks.

    I want to remove 1 from the mirrored storage space.

    I want to start with a 3 disk parity storage space.

    After copying the files to this from the remaining disk from the mirrored storage space I want to add the 4th disk to the already existing 3 disk parity storage and make it a 4 disk parity storage.

    Is this possible or not? :)

    P.S. Using win server 2019.
     
    #14
  15. gregsachs

    gregsachs Active Member

    Joined:
    Aug 14, 2018
    Messages:
    212
    Likes Received:
    38
    I haven't played with 19, only 16. You will/are getting stuck on columns and duplication.
    (apologies if you know this)
    Columns are the disks that data gets striped across.
    Duplication is the number of copies of the data.
    A mirror is single column, with duplication if you have two drives. To do two columns, you need 4 drives.
    Basically number of drives=columns*data copies.
    When expanding, you need to add drives in sets equal to the number of columns you have.
    A basic parity space with 3 drives has 3 columns, so you must expand by adding 3 drives.
    One would think that one could take a 3 drive parity space, add a 4th drive, and rebalance, but it hasn't worked that way when I have tried it.
    I'd suggest using h-v or esxi to experiment with using small virtual disks.
     
    #15
    nonyhaha likes this.
  16. nonyhaha

    nonyhaha New Member

    Joined:
    Nov 18, 2018
    Messages:
    4
    Likes Received:
    5
    Thank you very much for the reply. Yes I do know about columns and I know that in the past windows could not expand the number of columns (although this should not be that big of a deal in our days). I did not know if there was any evolution on this restriction.

    It is not rocket science. Files just need to be rearranged from split in 2 to split in 3 (for parity space 3 disk to 4 disk).

    This should take a bit more than rebuilding array after a failed disk. (Read from old storage + calculate using parity + writing to new disk vs read from old storage + calculate + write to new AND old storage)...
     
    #16
Similar Threads: Expanding storage
Forum Title Date
Windows Server, Hyper-V Virtualization Expanding a 2012 R2 Essentials Storage Space? Mar 21, 2017
Windows Server, Hyper-V Virtualization Windows 2012 R2 - Storage Spaces - Expanding existing Pool Nov 12, 2016
Windows Server, Hyper-V Virtualization Adding more disks for storage spaces Oct 14, 2019
Windows Server, Hyper-V Virtualization Single node loopback storage VM? Jul 24, 2019
Windows Server, Hyper-V Virtualization Disk spin down with Storage Spaces Jul 18, 2019

Share This Page