Need some help figuring out the Azure CLI command and parameters to update cache setting of a live managed data disk attached to an Azure VM.
A managed data disk is created and attached to an Azure VM outside of my control. By default, Host caching is set to Read-Only
. For some performance reasons, I would like to set Host caching to None
for the attached data disk.
What did I try?
az vm update --subscription my-subscription --name my-vm-name --resource-group my-rgroup-name --disk-caching os=ReadWrite
This command updates the OS Disks Host cache setting. However, could not update managed disks setting. I tried different keys like managed, data-disks, attached, etc... instead of os
in os=ReadWrite
; Nothing worked, command throws ValueError
ValueError: invalid literal for int() with base 10: 'data-disks'
Explored another command - az disk update
. However, it does not have option to update managed disk cache setting.
Tried to detach and re-attach the managed disk with --caching set to None
. It works. However, this is not permitted in my case.
az vm disk detach --subscription my-subscription -g my-rgroup-name --vm-name my-vm-name --name managed-disk-name
az vm disk attach --subscription my-subscription -g my-rgroup-name --vm-name my-vm-name --name managed-disk-name --caching none
Need this for automation. So changing this setting from Azure portal UI is not an option.
Suggestions are much appreciated.
Without detaching the disk from virtual Machine using the below cmdlet to change the managed disk caching from ReadWrite\ReadOnly
to None
.
We have tested this cmdlet in our environment by creating a VirtualMachine & attached a Data disk to it and it is working fine.
Here is the Cmdlet:
az vm update --resource-group <resource-group-name> --name <vmName> --disk-caching os=ReadWrite 0(LunNumberOfTheDisk)=None
Here is the sample output screenshot for reference :