How to increase availability for Azure storage account? - azure

For Azure storage accounts the SLA for write requests is 99.9% regardless if I'm using LRS, ZRS, GRS or RA-GRS. Is there a way to increase the SLA for write requests on the storage account?
E.g is there a good way to fail over to another storage account in another region?
The accounts don't have to contain the same data. I just want to always be able to store the blobs.

Is there a good way to fail over to another storage account in another region?
Of course, Azure storage itself provides this feature, you can refer to the document Initiate a storage account failover.
Before you can perform an account failover on your storage account, make sure that your storage account is configured for geo-replication. Your storage account can use any of the following redundancy options:
Geo-redundant storage (GRS) or read-access geo-redundant storage (RA-GRS)
Geo-zone-redundant storage (GZRS) or read-access geo-zone-redundant storage (RA-GZRS)
You will see an interface like this:
Is there a way to increase the SLA for write requests on the storage account?
My suggestion is to increase the number of retries for write requests, maybe the example here can help you, you can use BlobClientOptions.

Related

Convert from azure premium storage to standard storage disk without data loss risk

I have a query regarding my Azure instance. According to the Azure billing calculator.
For premium storage of 2 disk it costs around 39.42 USD where as for the standard storage it costs around 3.04 USD.
So currently i have azure premium storage and want to migrate to standard disk storage in order to reduce the cost. Can someone suggest me a workaround for this given the condition i don't want data loss to happen on migrating.
Add another answer to #Gaurav Mantri's. If your Disk is managed, you can take following steps.
Now, Azure can let you change your Managed Disk type easily.
Steps:Go to Azure Portal> Stop (deallocate) your VM> Go to Your Disk> Account type > Choose standard (HDD)> Click Save
Then your disk will be successfully updated!
If your Disk is unmanaged, you can take #Gaurav Mantri's answer to migrate your Disk.
You can't convert a Premium storage account to a Standard storage account.
What you will need to do is create a new storage account (or use an existing storage account) and copy the blobs holding the disks from Premium account to Standard account. You could use AzCopy or PowerShell Cmdlets to copy blobs from one storage account to another. If you're using AzCopy, you can use following command:
AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1
/Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /S
Also, please note that copying blobs across storage accounts is an asynchronous operation so please ensure that you don't delete the blobs from your Premium account until they are copied completely in target storage account.

Azure storage account: general purpose vs blob storage

Having the need to store and access blobs which type of storage account is the most appropriate? Both types (general purpose and blob storage) seem to support blobs and in addition to this general purpose accounts allow selecting default or premium performance while blob storage accounts allow only default performance but on the other hand they also allow selecting the access tier (cool or hot).
In the end I find unclear what would be the best option.
A few differences between Blob and General Purpose Storage Accounts:
Blob storage account only support blobs while General purpose storage accounts support blobs, files, queues & tables (some exception apply - please see note about replication below). So if you ever need these additional services, you may want to choose general purpose accounts over blob accounts.
Blob storage account only supports block and append blobs while General purpose storage accounts support block, append & page blobs (some exception apply - please see note about replication below). So if you need to create virtual machines, you would want to choose general purpose accounts over blob accounts.
Blob storage accounts support both Hot and Cool access tier while General purpose storage accounts only support Hot access tier. So if you need to use Cool access tier i.e. use storage primarily for near-shore archiving, you would want to choose blob accounts over general purpose accounts.
You may want to be careful in choosing replication type in general purpose accounts as features offered varies by replication types.
LRS, GRS, RAGRS: Supports everything. Blobs (Block, Append, Page), Files, Queues & Tables.
ZRS: Supports only block blobs and nothing else.
Premium LRS: Supports only page blobs and nothing else.
Microsoft's guidance on this (as of 7/13/2018) recommends using General Purpose v2 (GPv2) Storage Accounts over Blob Storage accounts for two reasons I recently discovered (there might be more):
They offer more flexibility in terms of what you can store and do with them (Queues, Tables, Files and/or Blobs vs just Blobs). Ref: Microsoft Azure Documentation - Azure Storage account options
Microsoft recommends using general-purpose v2 storage accounts over Blob storage accounts for most scenarios.
There are more integration options with GPv2 accounts including Azure Function Triggers via Event Grid. Ref: Microsoft Azure Documentation - Azure Blob storage bindings for Azure Functions
Blob-only storage accounts are supported for blob input and output bindings but not for blob triggers. Blob storage triggers require a general-purpose storage account.

Azure Billing when Blobs are not present in storage

As we are stopping azure service, we have stopped and deleted the VM's and attached disks last month, which now displays no instances in cloud services, which in turn have deleted the blobs inside the storage. Do we get billed for subscription this month.Any idea?
For Azure storage account, your total cost depends on how much you store, the volume and type of storage transactions and outbound data transfers, and which data redundancy option you choose.
If you delete all your blobs in your storage account, you don't pay for storage account.
More information about Azure Storage Pricing please refer to this link.

What is the benefit of having linked storage account for HDInsight cluster?

For an HDInsight cluster there has to be at least one azure storage account which is its default storage account -- it is required so that it is treated as its fs (filesystem). This I get. But what about optional linked azure storage accounts? From ADF (Azure Data Factory) perspective at least, do we need to have a storage account added as linked storage account to an HDInsight cluster? Anyway the Azure storage account is accessible purely by providing just two pieces of information --- the account name and the key. Both these things are specified in Linked Servers in ADF. This guarantees the access of the storage account. What is the real benefit of having some account added as linked storage account, from ADF point of view or otherwise? Basically, what I am asking is -- is there anything that we can't do purely using account name and key without adding the account as linked storage for the given HDInsight cluster?
The main reason to have additional accounts is because they have limits. A storage account can have 500 TB of data in it and 20000 request per second. Depending on the size of your cluster and work load you might hit the request limit. If you are worried about those limits and you don't want to manage alot of storage accounts you should look into Azure Data Lake.
I think I sort of figured out the answer. With linked storage accounts the cluster, when used as a compute, can directly access BLOBS on those storage accounts without requiring us to separately specify the storage keys in queries. That's the use case for which linked storage is a must have.

Azure VM pre-made storage account: prerequisites

In Azure, when creating a VM, you can choose to "Use an automatically generated storage account".
Which, generates a geo-replicated storage account.
Can I create a zone replicated storage account and use that? I have tried, but it does not show up in the list.
What are the prerequisites for a storage account to be usable for the VM's?
Is this documented somewhere?
I think the only restriction is that you can't choose a ZRS account to be used by VMs because VMs are essentially stored as Page blobs in blob storage and ZRS account only support block blobs. From the storage team blog here - http://blogs.msdn.com/b/windowsazurestorage/archive/2014/08/01/introducing-zone-redundant-storage.aspx:
As you can see, these options provide a continuum of durability and
availability options. ZRS fits between LRS and GRS in terms of
durability and price. ZRS stores 3 replicas of your data across 2 to 3
facilities. It is designed to keep all 3 replicas within in a single
region, but may span across two regions. ZRS currently only supports
block blobs. ZRS allows customers to store blob at a higher durability
than a single facility can provide with LRS. ZRS accounts do not have
metrics or logging capability enabled at this time.

Resources