Windows Azure Pack was released in October 2013 and allows you to provide cloud services that are running in your own datacenter. Since its release we have deployed a lot Cloud OS environments. Most if not all deployments contained or were centered around Infrastructure As A Service.
To enable infrastructure as a service in your datacenter you need a couple of components.
- Windows Azure Pack
- System Center Service Provider Foundation
- System Center Virtual Machine Manager
- Hypervisor (almost all Windows Azure Pack IAAS functionality requires Hyper-V)
As a tenant in the Windows Azure Pack portal you can interact with virtual machines and virtual networks.
For deploying virtual machines you can choose between two methods.
- Stand alone virtual machine
- VM Role
Stand alone virtual machine
The stand alone virtual machine is a one to one mapping to a VM Template in Virtual Machine Manager. The properties of the stand alone virtual machine live in VMM and can only be changed there. The stand alone virtual machine can be used to deploy a virtual machine with an operating system. The deployment wizard in Windows Azure Pack is easy and straight forward but cannot be customized. You are bound by the options in the existing wizard and the capabilities of the VM Template in Virtual Machine manager.
The other method Windows Azure Pack provides to deploy virtual machines is the VM Role. The VM Role uses the service template engine in Virtual Machine Manager and combines that with a customizable deployment wizard in Windows Azure Pack. On top of the stand alone virtual machine method the VM Role provides the following capabilities
- Application deployment in the virtual machine as an integral part of the deployment process
- Customizable deployment wizard
- Better interaction capabilities with Service Management Automation
- Deploy and manage a single tier of one or multiple instances.
- Servicing of the application through tenant configuration
- Versioning of the VM Role with application updating capabilities
Stand alone virtual machine or the VM Role? Now this looks like an easy choice. And every customers reaction to this comparison is similar. The VM Role it is.
But…. There is one important thing to point out. The VM Role uses differencing disks.
A differencing disk is a virtual hard disk you use to isolate changes to a virtual hard disk or the guest operating system by storing them in a separate file. A differencing disk is associated with another virtual hard disk that you select when you create the differencing disk. This means that the disk to which you want to associate the differencing disk must exist first. This virtual hard disk is called the “parent” disk and the differencing disk is the “child” disk. The parent disk can be any type of virtual hard disk (fixed or dynamically expanding). The differencing disk stores all changes that would otherwise be made to the parent disk if the differencing disk was not being used. The differencing disk provides an ongoing way to save changes without altering the parent disk. Multiple child disks can use the same parent disk.
The VM Role uses differencing disks for its virtual hard disks. A VM Role consists of one Operating System disks and optionally one or more data disks. In the VM Role configuration you define information (metadata) about each disk of that VM Role. The metadata is a family name and a version number. Additional filtering for the Operating System disk can be set with tags.