Introduction to Windows Azure - IaaS Virtual Machines

Well as I promised after my initial Azure blog detailing the overview of the Azure feature set, I now will provide further clarity on each of those features. For those that missed the initial blog it can be found here

This week I want to kick off my drill down series on Windows Azure Virtual Machines, an Infrastructure-as-a-Service (IaaS) offering in Windows Azure. This was one of the most exciting components of the new Azure Feature set released in June 2012 and from an IT admin perspective a really exciting capability. This is due to the integration with Microsoft System Center 2012 which allows a single view and management of a virtual machine infrastructure both on premise and now in the public cloud.

At a glance, Virtual Machines (VMs) consist of infrastructure to deploy an application. Specifically, this includes a persistent OS disk, possibly some persistent data disks, and internal/external networking glue to hold it all together. Despite the boring list, with these infrastructure ingredients, the possibilities are so much more exciting…

In this preview release, we wanted to create a platform where customers and partners can deploy existing applications to take advantage of the reduced cost and ease of deployment offered in Windows Azure. While ‘migration’ is a simple goal for the IaaS offering, the process might involve transferring an entire multi-VM application, like SharePoint, or it might be moving a single Virtual Machine, like SQL Server, as part of a cloud-based application. It may even include creating a brand new application that requires Virtual Networks for hybrid connectivity to an on-premises Active Directory deployment.

Included as part of the launch of Virtual Machines in Windows Azure, there is support for three key Microsoft applications.

  1. SQL Server (SQL Server 2008, SQL Server 2008 R2 and SQL Server 2012) is a database workload with expectations for exceptional disk performance;
  2. Active Directory (Windows Server 2008 R2, Windows Server 2012) is a hybrid identity solution with extensive networking expectations;
  3. SharePoint Server (SharePoint 2012) is a large-scale, multi-tier application with a load-balanced front-end.

The easiest way to get going with Windows Azure Virtual Machines for Windows is through the new HTML-based portal. The portal offers a simple and enjoyable experience for deploying new Virtual Machines based on one of the several platform images supplied by Microsoft including: Microsoft SQL Server 2012 Evaluation, Windows Server 2008 R2 SP1, and Windows Server 2012 Release Candidate.

These images are updated regularly with the most recent patches to make sure that you start with a secure virtual machine, by default. Further details on getting started can be found here. Once deployed, you can patch the running Virtual Machines using a management product or simply use Windows Update.

It is also easier for you to deploy Virtual Machines using scripts or build on the programmatic interface. Therefore PowerShell cmdlets were also released that allow scripted deployment of Virtual Machines for Windows. Finally, both the portal and the Command-Line tooling are built on REST APIs that are available for programmatic usage, described here, giving you the ability to develop your own tools and management solutions.

The persistence of the OS and data disks is a crucial aspect of the Virtual Machines offering. Due for the need for the experience to be completely seamless, all disk management is done directly from the hypervisor. Thus, the disks are exposed as SATA (OS disk) and SCSI (data disks) ‘hardware’ to the Virtual Machine, when actually the ‘disks’ are VHDs sitting in a storage account. Because the VHDs are stored in Windows Azure Storage accounts, you have direct access to your files (stored as page blobs) and get the highly durable triplicate copies implemented by Windows Azure storage for all its data.

You can copy, back-up, move and download your VHDs using standard storage API commands or storage utilities, creating endless possibilities for managing and re-deploying instances. Instead of spending a lot of time to set-up a test environment to quickly destroy it, you can simply copy the VHD’s blob and boot the same set-up multiple times, to then destroy it multiple times. You can even capture running VMs so that you can make clones of them with new machine names and passwords, a process we call ‘capturing’, described here.

This VHD ‘mobility’ also allows you to take your VHDs previously deployed in Windows Azure and bring them back on-premises (assuming you have the appropriate licenses) for management or even deployment. The reverse is possible, as well. Details on how to upload your VHD into Windows Azure can be found here.

The best way to get started with the offering is just to do some experimenting, developing and testing on a Virtual Machine. This means you can deploy a Virtual Machine, perhaps as part of your new free trial and install your favourite server application like SharePoint, SQL, IIS, or something else. Once you are done, you can export all aspects of the Virtual Machine, including the connected data disks and endpoint information, so that you can import it later for further development and testing.

Get started today to experience these new capabilities by visiting Windows Azure and clicking on the Free Trial link