Here is a summary of some of the key features I’ve learned about that are available in the most recent version of Microsoft’s cloud offering (Azure).
There are 2 different types of VMs in Azure:
- VM Role (PaaS) Virtual Machine (IaaS)
- The key difference being that PaaS is a VM with non persistant storage, so if you reboot the VM or the host dies, the VM is reset to the originial image. Contrary to this, Iaas offers persistent storage and is therefore what most people will use.
Linux VMs are also available on Azure, Ubuntu is amoung these offerings.
Applications supported on Azure include SQL Server, AD, SharePoint 2010 and BizTalk Server. These are listed in the order of current priority for Microsoft.
In Azure VMs, OS Disks are cached on the hosts, data disks are not. This is because OS disks are very chatty and so caching speeds up transactions and saves money on Azure’s read/write charges. Contrary to what you might expect, Microsoft recommends storing SQL data on Data Disks. Data Disks are specifically designed to offer good performance to SQL read/write operations in Azure.
Windows Azure VMs support up to 16TB of disk (16 x 1TB disks added to the VM, then striped in Windows Disk / Storage Manager from within Windows).
Windows Azure Storage is triplicated for redundancy.
Windows Azure’s SLA is based on 2 VMs being in an Availability Set and offers 99.95% availability, which is about 4.5 hours a year. An availability set will make sure your VMs are in different Update Domains and different Fault Domains, so that it doesn’t get rebooted at the same time as other services if a fault occurs or an update is rolled out. Windows Azure does not seem to offer an SLA on single VMs, but have an unofficial SL (not SLA) statement of about 99.7%, which is about 26.5 hours a year.
Microsoft Azure’s Cloud Service is basically a container for stuff on Azure (such as VMs, Storage, etc). VMs in the same Cloud Service have a DNS server that the default names are automatically registered with. I suspect that this goes out the window if you change the defaul VM name.
You can do Port Address Translation in Azure.
Azure has a load balancer that allows you to group machines and probe specified ports and paths to probe to see if a VM is still available to know which VMs are available to distribute traffic to.
Windows Azure has a feature called Windows Azure Virtual Network (VNET), which allows you to bridge your on-premise network with Azure to have one big network. You could also use this to link other cloud services. This could be a good way to migrate services between cloud vendors or as a bunker / DR site.