Infrastructure Adventures

05/26/2011

Expanding a Master Volume on a HP P2000 G3 Array

Filed under: Storage — Tags: , , , , , , — Joe Keegan @ 4:37 PM

A master volume on a P2000 G3 array is a volume that has the ability to have snapshots. If the volume is created via the GUI as “snappable” then the volume is automatically created as a master volume. Likewise if you add snapshots to the volume sometime after the volume has been created it is automatically converted into a master volume.

The issue around master volumes is that they can not be expanded. In the GUI that option is simply grayed out. To expand the master volume you will need to login to the P2000 via SSH and use the CLI to:

  1. Remove any snapshots
  2. Convert the master volume into a standard volume
  3. Expand the volume
  4. Expand the snap pool (optional)
  5. Convert the volume back into a master volume

The steps to accomplish this is covered below for an example volume called Web with a snap pool called spWeb.

# show volumes
Vdisk Name             Size    Serial Number                     WR Policy     Cache Opt        Read Ahead Size  Type         Class    Qualifier
  Volume Description
---------------------------------------------------------------------------------------------------------------------------------------
vd01  Web              99.9GB  00c0ff10a5ce00000102db4d01000000  write-back    standard         Default          master volumePTSNAP
  N/A
vd01  spWeb            19.9GB  00c0ff10a5ce0000dbe3de4d01000000  write-back    standard         Default          snap pool    PTSNAP
  N/A
----------------------------------------------------------------------------------------------------------------------------------
Success: Command completed successfully.

First we should check if there are any snapshots

# show snapshots
Vdisk Serial Number                     Name      Creation Date/Time        Status             Status-Reason        Source Volume Snap-pool Name
  Snap Data  Unique Data  Shared Data  Priority   User Priority   Type                                                                   

----------------------------------------------------------------------------------------------------------------------------------
vd01  00c0ff10a5ce0000bce2de4d01000000  Web_s001  2011-05-26 23:31:08       Available          N/A                  Web
  spWeb          393.2KB    393.2KB      0B           0x6000     0x0000
  Standard snapshot
----------------------------------------------------------------------------------------------------------------------------------
Success: Command completed successfully.

There is one snapshot called Web_s001 which we should delete using the following command. Of course once the snapshot is deleted any unique data contained within the snapshot will be lost.

# delete snapshot Web_s001 cleanup
Info: Snapshot Web_s001 was deleted. (Web_s001)

Success: Command completed successfully.

The cleanup argument will convert the master volume into a standard volume if the last snapshot for that volume is deleted. We can now see that the Web volume is a standard volume.

# show volumes
Vdisk Name             Size    Serial Number                     WR Policy     Cache Opt        Read Ahead Size  Type         Class    Qualifier
  Volume Description
---------------------------------------------------------------------------------------------------------------------------------------
vd01  Web              99.9GB  00c0ff10a5ce00000102db4d01000000  write-back    standard         Default          standard     standard
  N/A
vd01  spWeb            19.9GB  00c0ff10a5ce0000dbe3de4d01000000  write-back    standard         Default          snap pool    PTSNAP
  N/A

If you have multiple snapshots you can just run this command for each snapshot or you can use the command below to delete all snapshots for a volume.

# delete all-snapshots volume Web
Info: This may take a few minutes if the system is under heavy load...
Success: Command completed successfully. (Web) - All snapshots were deleted.

This command does not have a cleanup argument so you will need to manually convert the master volume into a standard volume like so.

# convert master-to-std Web
Success: Command completed successfully. (Web) - The conversion of a master volume to a standard volume completed.

Now we are ready to expand the Web volume. In this example we add another 100GBs to the volume.

# expand volume size 100GB Web
Success: Command completed successfully. - Expansion of volume Web was started.

# show volumes
Vdisk Name             Size    Serial Number                     WR Policy     Cache Opt        Read Ahead Size  Type         Class    Qualifier
  Volume Description
---------------------------------------------------------------------------------------------------------------------------------------
vd01  Web              199.9GB 00c0ff10a5ce00000102db4d01000000  write-back    standard         Default          standard     standard
  N/A
vd01  spWeb            19.9GB  00c0ff10a5ce0000dbe3de4d01000000  write-back    standard         Default          snap pool    PTSNAP
  N/A
---------------------------------------------------------------------------------------------------------------------------------------
Success: Command completed successfully.

We can now see that the Web volume is 199.9GB instead of 99.9GB.

Expanding the volume does not expand the snap pool for the volume. Depending on your needs you may want to increase the snap pool to match the same ratio that existed before. In our case the snap pool was 20% of the Web volume’s original size so we will increase the snap pool so it remains 20% (i.e. we are going to increase it to around 40GBs).

# expand snap-pool size 20GB spWeb
Success: Command completed successfully. (spWeb) - Expansion of volume spWeb was started.

# show volumes
Vdisk Name             Size    Serial Number                     WR Policy     Cache Opt        Read Ahead Size  Type         Class    Qualifier
  Volume Description
---------------------------------------------------------------------------------------------------------------------------------------
vd01  Web              199.9GB 00c0ff10a5ce00000102db4d01000000  write-back    standard         Default          standard     standard
  N/A
vd01  spWeb            39.9GB  00c0ff10a5ce0000dbe3de4d01000000  write-back    standard         Default          snap pool    PTSNAP
  N/A
---------------------------------------------------------------------------------------------------------------------------------------
Success: Command completed successfully.

Lastly we need to convert the volume back into a master volume.

# convert std-to-master snap-pool spWeb Web
Success: Command completed successfully. (Web) - The conversion of a standard volume to a master volume completed.

# show volumes
Vdisk Name             Size    Serial Number                     WR Policy     Cache Opt        Read Ahead Size  Type         Class    Qualifier
  Volume Description
---------------------------------------------------------------------------------------------------------------------------------------
vd01  Web              199.9GB 00c0ff10a5ce00000102db4d01000000  write-back    standard         Default          master volumePTSNAP
  N/A
vd01  spWeb            39.9GB  00c0ff10a5ce0000dbe3de4d01000000  write-back    standard         Default          snap pool    PTSNAP
  N/A
---------------------------------------------------------------------------------------------------------------------------------------
Success: Command completed successfully.

While it’s not great that you have to blow away all your snapshots to expand a volume, at least it’s not too difficult to accomplish the task.

Create a free website or blog at WordPress.com.