Azure Disks, stored as VHD in a blob, may only be attached to a Windows Azure virtual machine.
If, say, you wanted to build out the disk and then attach to a local Windows machine, you'd need to download the vhd and then attach it through the computer management (or PowerShell).
I'm not sure about your app's architecture, but... assuming it's not a legacy app, it should be very easy for you to read/write blobs directly without setting up a data disk. This has several advantages. For instance:
- No 1TB limit. You have the full 200TB space to work with. With Azure Disks, you can attach 2 x # of Cores. So on an XL you can attach 16 disks (max. 16TB attached storage).
- Ability to read/write from multiple sources / VMs. With Azure Disks, each disk is mounted to a single VM at any given time.
- Your IO bandwidth doesn't necessarily depend on your VMs bandwidth. You can access blobs with a URI (even private blobs, with an attached Shared Access Signature), so you could direct-link to resources from, say, an html page and go straight through the Azure Storage Service and avoid going through the VMs NIC.
- Ability to create blob snapshots. While you can do this with an entire data disk, you can also do this with individual objects, assuming you store them directly to blob and not a vhd.
The Storage REST API is very well documented. On top of the API, there are several language-specific SDKs making it very easy to interact with blobs: .NET, Node.js, Java, PHP, Python, and Ruby.