Most journalists were quite surprised when Microsoft announced its new cloud initiative Azure some days ago at the PDC 2008. I have read quite a few articles about this topic and it seems to me that most writers have problems in understanding what Azure really is. This explains why some of the articles contradict each other. I must admit that I still don’t understand it completely myself. The complexity of Microsoft’s new cloud platform is already amazing. All of the articles I have read have one thing in common, though. They all make us believe that a revolution is going on. In this article, I will try to clarify what Windows Azure is and what it is not.
- OpenVPN IPv6 and IPv4 configuration - Mon, Mar 1 2021
- 4sysops author and member competition 2020 - Fri, Jan 1 2021
- Assign an IPv6 address to an EC2 instance (dual stack) - Tue, Dec 15 2020
There are quite a few fundamental concepts related to Microsoft’s cloud initiative: Azure Services Platform, Windows Azure, .NET services, Live Services and SQL Services. The most interesting question is how these relate to each other. Some journalists seem to believe that Windows Azure is the fundamental platform and all the other services run on top of it. This picture is supported by the following diagram, which can be found in many articles.
However, there is a different diagram, which contradicts this view.
According to this diagram, Windows Azure is not some kind of cloud OS that hosts the other Azure services, but is just one of the four Azure services. The cloud itself probably represents the Azure Services Platform. So which is the true picture? I am not really sure, but David Chappell’s white paper (.docx), which outlines the technical details, indicates that the latter view is correct. The diagram below makes this clearer.
The VMs are virtual machines that run a 64-bit Windows Server 2008 with .NET 3.5. By the way, the hypervisor used is not Hyper-V. It is called Windows Azure hypervisor.
The Windows Azure applications are basically .NET 3.5 apps that run inside the VMs. An application consists of one or multiple instances. Each instance has its own VM. There are two kinds of Windows Azure instances: Web role instances and Worker role instances. A Web role instance is just a.NET program that works with IIS, for example ASP.NET or WCF (Web services). A Worker role instance is also a .NET app, but it doesn’t require IIS. What is important is that a Worker role instance isn’t allowed to have any incoming network connections. It receives its input only from a Web role instance. Instances communicate via the Windows Azure Fabric or the Windows Azure Storage. Web role instances communicate via HTTP with external entities, like a Web browser, for instance.
I think it becomes clearer now what Windows Azure really is. Basically, Windows Azure is just a virtualized Web server with runtime plus cloud technology. The latter just means that applications are sliced into smaller junks (the instances) which are running in a distributed infrastructure. Or even more simplified, Windows Azure is just a Web server running on multiple machines.
This (over)simplification removes a little of Windows Azure’s shine. I don’t want to downplay what Microsoft has accomplished; however, I think that some writers have exaggerated the significance of this new technology. From a user’s point of view, there won’t be much change in the near future. Windows Azure apps are simply Web apps. You won’t realize the difference if your Web mailer runs on Windows Azure or any other Web platform. Cloud computing is mostly about scalability. Therefore, we have a new platform now for the Facebooks and My Spaces out there. I don’t think that it will really offer new possibilities for small and mid-sized companies. If you don’t want to run your Web apps on your own servers, you can do that already now by renting Web space. The good news is that Web space might get even cheaper now.
I think it is also clear what Windows Azure is not. First of all, it is not a cloud-based Windows edition. You can’t run Office 2007 or Active Directory on it and most significantly, Windows Azure has no windows. Windows Azure is used and managed via a web browser. Perhaps IIS Azure would have been a more proper naming. As things stand now, Windows Azure is not really a competitor to Windows Server or the Windows Client. Windows Azure and the other components of the Azure Services Platform are just new technologies that extend the Web-based capabilities of Windows.
Even though I downplayed the significance of Windows Azure, I find it very interesting from a technical point of view. I also think that, in the long run (5 to 10 years), cloud technology will change IT notably. Rest assured that I will write more about it soon.