Clearly this session was for IT Pros and for me really helped to de-mystify what Windows Azure is and is not. Mark Russinovich has moved from the consumer Windows platforms to the Windows Azure team and at least to the audience is the evangelist for Windows Azure (and avoids the Cloud buzzword).
Context was set at the start of this session, to outline the types of offerings for services:
- IaaS Infrastucture as a Service – hardware and devices are managed, and the OS and up are up to you
- PaaS Platform as a Service – up to the OS is managed, applications are up to you.
- SaaS Software as a Service – everything including the application are managed.
The design philosophy of Windows Azure is to design for failure. Scaled out for capacity and redundancy, it uses short timeouts with retries, idempotent operations, stateless applications, and durable extended storage.
The Azure building blocks:
- Compute – atomatically provisioned virtual machines
- Storage – BLOBs, tables, and queues
- SQL Azure – database functionality
- AppFabric – middleware for caching and service bus
- Service – this is the application you load as a Role, comprised of a service definition and configuration information.
Compute resources (aka virtual servers running Windows Azure) are spread out between 2 to 5 update domains, which allows both rolling updates of roles (services) and regular patching; this is monthly based on Patch Tuesday.
In addition there are 2 or more fault domains per role (service). Each fault domain is essentially a server rack of 40 virtual server hosts on the same load balancer. This ensures virtual servers are not impacted by a single virtual host or entire rack outage.
There are 3 available roles that can be used in Windows Azure. Each must be stateless so that the loss of anything hosting one of these roles will not impact the service provided.
- Web role – IIS7 and ASP.NET on Windows Azure
- Worker role – arbitrary code on Windows Azure
- VM role – uploaded VHD with customer configured operating system.
A note on the Fabric Controller (which is now Mark’s focus), this handles all resource allocation, provisioning, lifecycle management, and health management of the roles. To provision a compute resource behind the scenes a virtual machine is created. A D: drive with a differencing VHD is created for the operating system, a C: drive with a differencing VHD is created for temporary storage, and an F: drive VHD for the application. The VM is brought up to PXE boot, boots to WinPE and does an automated installation of Windows Azure OS. A virtual IP (for the OS) and dynamic IP (public facing IP for the role) are also provisioned. So long as you have your instance running at a location (and not deleted) you keep the same public IP. The load balancer probes the VM for health every 15 seconds, and is considered failed after two consecutive probe failures at which time a new VM is brought up to replace it.
This presentation is a must for any IT Professional as it relates the vague idea of the Microsoft “cloud” to terms we are familiar with.


0 comments:
Post a Comment