Modern Software Experience

2008-10-30

Azure

Microsoft Azure is Microsoft’s new cloud computing platform. In other words, it is Microsoft’s new operating system for the web. It is "Windows in the cloud", and it is called Azure. Its codename was Project Red Dog.

cloud computing

Azure is a not just a web services platform. Apache and Internet Information Server are web services platform. Azure is a "cloud services operating system". It offers on-demand compute and storage.

The idea of cloud computing is that everything happens "in the cloud" - the cloud you draw in a diagram, to indicate that there is something there, but you either don’t know or don’t care what is exactly.

A much touted benefit of cloud computing is that you only need to pay for what you use. You don’t need to buy expensive servers to meet an expected spike in web traffic, you just let the cloud handle it. Cloud computing scales with your demand, and you only play for the capacity you actually use.

downsides

The obvious downside that proponents rarely mention is that the cloud may go down. That is not just a theoretical issue, that has happened a few times already. If it all goes down before the holiday season, will they hurry to get you up and running again, or give priority to their larger customers?

You may lose a measure of control over your development cycle, and have to upgrade to running on new versions when they tell you to. But even if they offer an operating system and servers of your choosing, they can still pull the plug on your application at any time. They could do because they don’t like you, or because their finance department somehow did not process your latest payment. Fact is, once you rely the cloud, you are probably relying on and thus dependent on a third party for core business processes.

It are these rather serious downsides to cloud computing that make me wonder just how often it is a good choice, let alone the best choice. Still, cloud computing is hot, and Microsoft introducing its platform is a major event.

Azure

Azure is presented as an operating system and a platform, and that is not wrong, but it is not an operating and platform like Windows, that you can install on your local PC. It is not even much like Windows Server. It is a cloud operating and a services platform. You do not install a database server or web server on it, instead you use it because it offers database and web services.

Azure versus Windows

Azure offers an Internet Information Server and ASP.NET environment for running your web applications. When you part the Azure clouds, you’ll find Windows and other Microsoft products underneath. The Windows Azure diagram shows that is offers SQL Services, SharePoint Services, Dynamics CRM Services and Live Services.

So, Azure does not really compete with Windows. Microsoft calls it Windows Azure, because Azure really is Windows in the cloud.

The big difference is the license and payment model. With Windows, you buy a license and install it on a local server, and the pay for maintenance personnel and software upgrades. Well, maybe that local server is really some remote server, but it is yours, so the correct vernacular is "on premise". With Azure, you pay for your usage, Microsoft has the servers, the licenses and the personnel.

So, simply put, Windows Azure is an alternative for Windows Server, and it is not so much another product, but another business model. Microsoft uses the same technologies in both, and you should expect Windows Azure and Windows Server to evolve together. Windows Azure will benefit from new Windows Server features and Windows Azure needs will influence the Windows Server development team.

mix and match

Azure does not compete with Windows, it is Windows Azure. Windows Azure does compete with Windows Server, you may opt for either one the other, but it is not an either/or decision, you can mix and match as you see fit.

the Azure cloud

Drawing clouds is easy, but there have to be real server offering concrete services. In the case of Azure, those servers are in Microsoft data centres.

Microsoft Online Services

Microsoft uses Windows Azure for its online services: Windows Live, Office Live, Exchange Online, SharePoint Online and Microsoft Dynamics CRM Online (now there’s a product in need of name change).

developing for Azure

Windows Azure is currently available as a Community Technology Preview (CTP).

Developers can download the Windows Azure SDK (October 2008 CTP) and the Windows Azure Tools for Microsoft Visual Studio (October 2008 CTP). You will get a local version of the so-called Fabric and Storage services, so you can test your services locally.

Azure supports popular standard and protocols, including XML, SOAP, and REST, so you can use third party technologies and tools, but you will want to download the SDK for the API documentation, tools and samples.

requirements

If you develop using Visual Studio, you probably already have everything you need, but the official Windows Azure SDK requirements are Windows Vista, .NET Framework 3.5, Internet Information Server 7.0 (with ASP.NET and WCF HTTP Activation), Microsoft SQL Server Express 2005 or 2008 and optionally, Windows PowerShell.
Windows XP apparently isn’t good enough, the requirements demand Windows Vista or Windows 2008.

dependence

Microsoft is not Microsoft Azure as a product that third parties can start cloud computing centres with, at least not yet. So right now, you are wholly dependent on Microsoft. But as long as you use technologies that run on both Windows Server and Windows Azure, you can change back and forth between those two platform as you see fit.

updates

2011-04-23 broken links

Microsoft has broken the links to the Windows Azure Software Development Kit (October 2008 CTP) and Windows Azure Tools for Microsoft Visual Studio (October 2008 CTP). These products are no longer available. Microsoft is likely to break links to the latest versions as well. I've provided links to the Windows Azure Platform and Windows Azure Developer Centre pages instead.

2011-06-29 Office Online

Replaced the Exchange Online and SharePoint Online links with the Office 365 link.

links

Azure

Microsoft Online Services

information

tools

standards