96

Azure has Storage accounts and Storage accounts (classic) in the Azure Portal.

What are the differences between them? Is there any reason to migrate from a classic storage account to a new storage account?

James Newton-King
  • 48,174
  • 24
  • 109
  • 130

5 Answers5

89

Classic storage accounts are created using existing Service Management API's (the REST API stack that's been available for the past several years). The newer storage accounts are created with the new Azure Resource Manager (ARM) API's (which are also wrapped in PowerShell and CLI now). Ultimately they provide the same resources to your apps, but they're created/managed differently, and there are a few nuanced differences (such as the ability to tag resources that are created via ARM scripts).

You can't convert a classic storage account (or any classic resource) to a newer type. You don't really need to anyway, unless you're trying to mix resources from classic and new, such as adding ARM-based virtual machines to a classic-based virtual network, or spin up an ARM-based VM from a vhd image sitting in a classic storage account (and for that example, you could always just copy the vhd to a new storage account). Note that, for general storage usage (blobs/tables/queues), you just need the URI and the primary (or secondary) key. With those, you can access your storage resources from anywhere, from any VM/website/etc, regardless if you're accessing storage from classic or new virtual machines, for example.

Check out this link for a general list of differences between classic and new resources.

David Makogon
  • 69,407
  • 21
  • 141
  • 189
  • 1
    The new article is [link](https://azure.microsoft.com/en-us/documentation/articles/resource-manager-deployment-model/) – Crazy Crab Jul 20 '16 at 06:34
  • 7
    "You can't convert a classic storage account (or any classic resource) to a newer type" - as of today this is not true. [Here is a how-to](https://ppolyzos.com/2016/08/07/migrate-azure-storage-account-from-classic-to-azure-resource-manager-arm/). – Ognyan Dimitrov May 23 '17 at 12:25
  • @OgnyanDimitrov - not sure what your comment means, as you just quoted something from my answer. – David Makogon May 23 '17 at 12:30
  • @DavidMakogon only that there is a way to migrate from classic storage account to arm. Nothing else. Added it for clarification if somebody stumbles upon this - not to assume that this is not possible now. I assume that 1.5 years ago it was not possible. – Ognyan Dimitrov May 23 '17 at 13:04
  • 1
    @OgnyanDimitrov - my statement is still true: you cannot *convert* from classic to ARM. There are indeed PowerShell scripts to *migrate,* but this actually copies resources to new resources. – David Makogon May 23 '17 at 13:05
  • @OgnyanDimitrov also note that someone already pointed this out (the migration path) in another answer, a few months ago. Still a good thing to point out though, esp considering (as you pointed out), there was no such migration facility when this question was originally asked. – David Makogon May 23 '17 at 13:18
5

One advantage of the new over the classic storage accounts is Storage Service Encryption (SSE):

Q: I have an existing classic storage account. Can I enable SSE on it?

A: No, SSE is only supported on Resource Manager storage accounts.

Q: How can I encrypt data in my classic storage account?

A: You can create a new Resource Manager storage account and copy your data using AzCopy from your existing classic storage account to your newly created Resource Manager storage account.

Augusto Barreto
  • 3,637
  • 4
  • 29
  • 39
  • 2
    i'd recommend using Microsoft Azure Storage Explorer - they have a copy container option now. – nologo May 29 '17 at 00:00
4

There is now a way to migrate Classic resources to the new ARM model. I've done a few myself and it worked as expected. Here's a guide from Microsoft:

https://learn.microsoft.com/en-us/azure/virtual-machines/virtual-machines-windows-ps-migration-classic-resource-manager

DJ Grossman
  • 600
  • 6
  • 17
0

In addition to @David Makogon's answer, the new Azure Storage offers reselling resources to sub-subscriptions.

This means that you are able to buy storage from Azure and sell it to your customers.

johni
  • 5,342
  • 6
  • 42
  • 70
0

You can now migrate Classic Storage Accounts to ARM from within Azure.

Settings --> Migrate to ARM

With Azure

With Powershell

MonkeyDreamzzz
  • 3,978
  • 1
  • 39
  • 36