Create high performance data disk in Azure virtual machine

Typically virtual hard drives in virtual machines have 300-500 IOPS. While for a startup or a basic virtual machine it might be enough. But once your business grows it might be a limiting factor.

Many people are now aware that is pretty easy to increase the IOPS without additional cost! Additional infos HERE

Since the data disks will not cause you additional costs you should run such disks from the very beginning. Below you find the steps to create such a disk!

  • The advantage of Windows Azure is that you pay ONLY for the resources used. If you have for example a virtual hard drive of 1TB you do not pay for the 1TB but only for the size of the data on that disk.
  • Every virtual machine allows a number of data disks attached to a virtual machine. For example an A0 machine allows one additional data disk, A1 allows two additional disks and A2 already allows 4 additional disks. More infomation on: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-size-specs/
  • Consumed IOPS are NOT calculated per disk but per machine. The conclusion is that you can RAID the data disks into one fast array.
  • Obviously you could RAID the data disks could be used for a soft array inside your virtual machine. But that would consume expensive CPU Power.
  • Luckily Windows Azure allows the customer to create a storage space made of the data disks to archive the maximum performance of Number of Disks X 500 IOPS.
  • First you need to attach the maximum allowed empty data disks to your virtual machine. Make sure the size is EXACT 1023 GB.
  • Next you need to connect via Remote Desktop to your virtual machine and call Azure PowerShell ISE with elevated privileges
  • Now create the below script:[int]$StripeSize = 65536
    $PoolCount = Get-PhysicalDisk -CanPool $True
    $DiskCount = $PoolCount.count
    $PhysicalDisks = Get-StorageSubSystem -FriendlyName “Storage Spaces*” | Get-PhysicalDisk -CanPool $True
    New-StoragePool -FriendlyName “IOData” -StorageSubsystemFriendlyName “Storage Spaces*” -PhysicalDisks $PhysicalDisks |
    New-VirtualDisk -FriendlyName “DiskIO” -Interleave $StripeSize -NumberOfColumns $DiskCount -ResiliencySettingName simple –UseMaximumSize |
    Initialize-Disk -PartitionStyle GPT -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |
    Format-Volume -FileSystem NTFS -NewFileSystemLabel “IODisk” -AllocationUnitSize 65536 -Confirm:$false
  • Execute the script and give it some time. It can run a couple of minutes
  • Once the script finishes open your File Explorer. You will see you have a new hard drive called “IODisk” with the size of DataDisks x 1023 GB.
  • Your done! You have now a high performance data disk in your virtual machine!

 

Interested in our Know How? Contact us at info@aloaha.com