Windows Azure Now Generally Available, Moving From Free To Pay
As of February 1st, Microsoft's public cloud offering, Windows Azure, became part of the growing cloud market as it started charging for its services. Moving from a free "early-adopter" mode of operation to a publicly announced, pay-as-you-go business model is becoming more common among public cloud offerings, and Azure is one of the first Platform as a Service (PaaS) offerings to make that jump. InfoQ spoke with Matt Deacon of Microsoft UK to learn more about this change and what it means for Azure users.
A comparison between the dominant Amazon Web Services (AWS) and Azure seems natural since they are both public utility cloud offerings, even when you factor in the differences in abstraction level between the AWS approach of Infrastructure as a Service (IaaS) and the Azure approach of PaaS. When asked about the similarities between AWS and Azure, Deacon said that although the two appear similar from a high level there are some significant differences when you look at each in detail. For instance, the PaaS approach in Windows Azure normally abstracts away concerns that are present in an IaaS approach. Maintenance of the operating system and platform services, such as applying patches and other machine-level management tasks, are the responsibility of the cloud provider (in this case Microsoft) and so that burden is removed from the end user.
Sometimes lower level access and greater flexibility is needed, and for those cases Deacon also shared some future directions for the Azure platform. Where you need lower level control there are plans to offer administrator mode access to the Windows Azure virtual machine (VM). Although a timescale is still to be announced, administrator mode access will open the Windows Azure Platform up to many more development platforms beyond the Java, PHP and Ruby environments currently supported. Supporting admin mode enables the Windows Azure platform to become much more flexible and a compelling alternative to IaaS clouds.
Deacon also stressed that there is every intention for Windows Azure to play well with other clouds. Cross-cloud scenarios, where on and off premises cloud services from multiple different providers are brought together to serve a cost-effective Service Level Agreement (SLA), are growing in popularity as providers release commercial SLAs and pricing structures. Deacon explained that Windows Azure's foundation is based on interoperable open standards, such as SOAP, REST and XML, and as such should work well in a cross-cloud environment.
As a concrete example, Deacon referred to the AppFabric Service Bus and Access Control services that provides a secure communication bus between private clouds, such as those created using the Dynamic Data Center Toolkit, and public clouds like Windows Azure and AWS. With many characteristics of the Enterprise Service Bus architectural pattern, the aim of AppFabric is to enable controlled interoperability, giving developers as much choice as possible in terms of where and how much it will cost to run their cloud applications.
As more and more cloud services publicly expose their pricing it is natural that those offerings will be compared to one another in order to decide which will meet a given application's needs. A direct comparison between the headline figures for PaaS and IaaS clouds is only part of the story. PaaS offerings like Azure have the significant benefit of minimal underlying system maintenance and often offer a fast-track route to deploying your applications to the cloud. This comes at the cost of working within the technical constraints of the platform. On the other hand, IaaS clouds offer greater infrastructure choice (operating system, messaging system etc) at the cost of maintaining your own infrastructure in the cloud.
The landscape becomes increasingly more difficult to navigate when you consider other forms of cloud, such as Private (self-serve in your own data center), Hybrid (Private and Public clouds working in harmony), or even Cross-Cloud usage ('pick and mix' style of deployment where services from different types of cloud are mixed to support one application). In the future it is conceivable that you will want to deploy flexibly across a multitude of cloud services and service providers, picking the services provider that suits your needs. In that scenario the choices can appear endless, but the cost benefits to this approach could be huge.
As the cloud market becomes more diverse, complex and fluid, the three factors that are likely to help inform your decisions are cost, SLA and technical constraints. Regardless of whether you're evaluating a public PaaS, such as Azure, considering deploying a hybrid Eucalyptus+AWS or Azure+Data Centre Toolkit cloud, or making the most of the cost/SLA/technical constraint balance by deploying cross-cloud, it is these three factors that any developer or business who is targeting the cloud needs to consider when evaluating the various cloud provider's offerings.