During the testing of an Azure Function against a real Azure Storage account, I came across the above storage exception message when executing the following call

await archiveBlob.SetStandardBlobTierAsync(StandardBlobTier.Cool).ConfigureAwait(false);

 Checking the target account, I then realised I had created a v1 general storage account


Only BlobStorage or v2 account kinds support blob access tier. If you want to keep the account, you have the option to upgrade to a v2 account.

Note this can incur additional costs – it may be more cost-effective to create a new Blob Storage Account:

rgName="MyStorageAccount0123"
accountName="myblobstorageaccount"
location = "ukwest"
az storage account create \
  -g $rgname \
  -n $accountName \
  –access-tier hot \
  -l $location \
  --https-only true \
  --sku Standard_LRS \
  --kind BlobStorage

Note: the above script would work under a Bash shell (i.e. in the Azure CloudShell). If you are running az commands on Windows from the command prompt or with Powershell you need to use the ` character instead of backslash for stretching commands over multiple lines.


Ben

Certified Azure Developer, .Net Core/ 5, Angular, Azure DevOps & Docker. Based in Shropshire, England, UK.

0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: