Real World Use Case Confirmation: Azure NetApp Files (ANF) for FSLogix User profiles and Azure Virtual Desktop (AVD)

“Ladies and gentlemen: the story you are about to see is true. Only the names have been changed to protect the innocent.” – Joe Friday, Dragnet

I recently completed a migration of a United States Government agency’s AVD storage (profiles & file shares) from Azure Files Premium to Azure NetApp Files Ultra. The data and details are all true and accurate, but for obvious reasons I cannot disclose the agency by name. The benefits of this change would apply to SMB, enterprise and government entities alike.

Azure Files Environment Details:

  • 85 Named Users
  • 1.8 TiBs of active data on Azure Files Premium
  • Active backup policy:
    • Every 4 hours, keep 3
    • Every day, keep 4
    • Every week. keep 2
    • Every month, keep 12
  • Daily data churn ~10% monthly
  • Cool data percentage ~74%
  • Trailing 30-days max throughput used 203 MiB/s
  • Average storage latency: 13.25 ms
  • Azure Region East US 2
  • Storage costs: ~$1,200/month

Why make the change at all?

Azure Files Premium was working for them. So, if it ain’t broke, why fix it?

With Azure NetApp Files we were able to reduce spending and improve overall performance. The total cost dropped by over 50% while the latency plummeted from >13 ms to <1 ms!

Azure NetApp Files Architecture:

  • 3 TiBs of ANF Ultra with Cool Access
  • New snapshot policy
    • Every hour, keep 24 (6x the snaps, 2x the time coverage)
    • Every Day, keep 7 (3 additional days)
    • Every Week, keep 6 (4 additional weeks)
    • Every month, keep 12
  • Allocated throughput: 204 MiB/s
  • Average storage latency: 0.88 ms (read) and 0.18 (write)
  • Storage Costs: ~$594/month (after a full year of snaps have accumulated)

How we made the change

Migrating data from Azure Files Premium to Azure NetApp Files can be a pretty fast transfer. Both services can ramp up and down the available throughput. With ANF you can increase the capacity pool size and thus increase the throughput available to the target volume(s). With AF Premium you can increase the allocated capacity to increase the throughput.

For our project I increased both so that I could max out the NIC on the VM I used for the robocopy process. I don’t remember exactly how high I cranked them up, but it was something like 20 TiBs of ANF Ultra providing 1,360 MiB/s in available throughput. I increased the size of the AF Premium volume as well to be in the same range.

Don't forget to run the robocopy from a VM with sufficient CPU capacity and Accelerated Networking enabled. Network latency between the VM and the AD DC can also impact total throughput.

Next I added the new ANF SMB path to the VHDLocations registry key as the primary position (listed first) with the old SMB path remaining in the value, but in the secondary position. With this change, existing users are not impacted, their profiles on AF Premium are still used at login. New users would have their profile created on the new share but in my case I knew we didn’t have any incoming new users.

After confirming the GPO for that change had propagated, I started manually targeting profiles that were not in use. Using robocopy I used the /mov command to move their entire profile folder from the old SMB share to the new one. With such high throughput, many profiles transfer in under 1 minute. The /mov flag will remove the profile from the source as part of the copy/move function. Eventually I was able to move everyone over, finding times when each user was offline to complete the migration.

If you want to get tricky or have a larger environment, you can use a PowerShell script to move any folder that does not contain a .METADATA file. That file will be present for any user that is currently logged in and using their FSLogix profile. Therefore, any folder without that file present can be migrated without impacting users. 

Once all user profiles were moved, I went back to the VHDLocations registry value to remove the old SMB path. And with that, the move was done.

Don’t forget to reduce the size of the allocations for both ANF and your old file share so you only pay for the over-provisioning while the extra throughput is needed for data migration.

Did it work?

Yes!

After the move we saw the AVD login metrics show faster logins. We saw the expected volume latency improvements and the billing file reflected the expected savings. The ultimate goal was achieved, the performance improved and the costs reduced.