How to increase MBR volume more than 2 TB

Ever encounter a scenario with a Windows VM requiring a disk extension over 2 TB, only to discover it cannot be performed?

Don’t fret as this is by design; You cannot increase MBR partition style volumes larger than 2 TB.

Unfortunately we do not have the choice of converting an MBR partition style volume to GPT on the fly in order to overcome this burden, however here is a viable solution for such scenarios.

Prerequisites

  1. 2.5x storage capacity that of required in your hypervisor datastore. Eg. If you need to extend 2 TB to 2.5 TB, ensure your datastore is at least 5 TB with 2.5 TB free. See step 1.1.
  2. OS: Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2 and Windows Server 2016 (albeit solution may vary).
  3. Patience as this can be a time constraining activity.

Solution

Note: In below solution exhibits, we are using an MBR partition that is 127 GB and a 135 GB GPT partition.

  1. From the hypervisor layer (ESX/XenServer/Hyper-V), confirm you have a datastore (storage) to provision required volume.
    1. Ie. If original 2 TB volume is required to be extended to 2.5 TB total, ensure you have 2.5 TB storage readily available in excess of existing MBR volume.
  2. Provision an additional disk with the required extended size (ie. 2.5 TB) to the VM in question (requiring storage).
  3. RDP to the VM in question (or gain console access, based on your personal preference).
  4. Login using a Local Administrator privileged account.
  5. Launch Disk Management console (diskmgmt.msc).
  6. Within Disk Management console, you will notice a new, offline disk. This is what we have provisioned in step 2.
  7. Right-click offline disk and click Online.
  8. Disk status will now change to Not Initialized. Right click disk and click Initialize Disk.
  9. Select GPT (GUID Partition Table) for the partition style and click OK.
  10. Right-click original MBR volume (in my example, it’s the E:\ drive) and click Add Mirror…
  11. Select our unallocated new volume listed within Add Mirror window and click Add Mirror.
  12. You will receive the following warning. Click Yes to continue.
  13. You will see both disks change color to red and entering a state of resynching which will then progress in percentile figures per below. Note: Excess storage displays as unallocated space – We will leverage this later. Also, depending on disk tier (premium SSD or standard HDD), size & contents, this process can range from minutes to days.
  14. Once complete, both disks will be in a Healthy state.
  15. Right-click MBR volume (smaller disk) and click Break Mirrored Volume…
  16. Click Yes within the warning window suggesting risk of fault tolerance.
  17. Right-click our (larger) GPT volume which has now taken the original drive letter (E:\) and click Extend Volume…
  18. Extend our volume with all available (unallocated space from step 19) and confirm larger volume size per below example exhibit.
  19. Complete. We’re almost there!

Clean-up

Now to clean-up, we can remove our original (smaller) MBR disk and reclaim this storage at the hypervisor layer.

  1. Right-click original MBR disk (smaller in size) and click Offline.

Disk is now ready to be deleted from the hypervisor layer, reclaiming storage within datastore.

 

Finished! Great work, you have now increased what was formerly an MBR partition style disk, to capability larger than 2 TB using above Microsoft in-built conversion method.