Windows Azure is Microsoft’s Operating System for “The Cloud”
What is the Cloud ?
In simple words the cloud is nothing but an abstraction used for the Internet and the underlying infrastructure hosting it.The Windows Azure cloud primarily consists of lots & lots & lots of servers, routers, switches & storage hosted in a Microsoft Data Centers. The present day Azure cloud is hosted in Redmond, US but the plan is to spread them out in data centers across the globe.
Why does it need an OS ?
Lets take a step back and think what a traditional OS would do for your applications ? A Desktop/Server OS takes care of the nitty grities of managing of your computers hardware as well as basic housekeeping tasks like memory management, disk I/O, task scheduling etc… while your application codebase is largely focused on the the business problem you are trying to solve. Now think of a typical Internet application today ? We not only have to create a well behaved application but also need to take care of provisioning a hosting environment, scaling the application based on load, monitoring health, planning for fault tolerance, disaster recovery & managing upgrades… Now how many times do we find ourselves doing the same things again and again… One cannot help but wish if only there was an environment that would automatically manage all these basic housekeeping aspects and let the IT team focus on just building the application. Well this is precisely what a cloud OS does for you.
Windows Azure provides the glue that gels together the cloud. It makes the zillions of connected servers work together as a cohesive unit and provides an environment that has automated service management, immense computing potential, practically unlimited storage and rich developer experience. It also provides you with 24/7 availability and the ability to scale up and down with very little overheads. This allows developers to focus on building the app than the infrastructure.
By leveraging the automated service management capabilities of windows Azure a developer can model the rules for deployment, monitoring and execution. He/She then provides the rules along with the executables for the service to the platform which then deploys, monitors, and manages the service in an hands free mode…
Windows Azure creates a powerful service hosting environment. All of the hardware including servers & load balancers is virtualized and a service is typically deployed across multiple fault domains and update domains resulting in high availability and fault tolerance. All this is done by cloud OS transparent to the service owner.
Reliable storage is an essential element of any application platform today. Windows Azure provides highly scalable cloud storage with the ability to store data in blobs, tables & queues.
Now a rich, familiar developer experience is absolutely critical to the adoption of any platform within the developer community. Windows Azure provides you with the same familiar Visual Studio experience complete with a managed framework that developers could use out of the box. To make things even better Windows Azure team makes available a complete cloud experience on your desktop that allows developers to build and test their cloud applications on a local desktop and yes you don’t need a windows server for doing this…
When do I get to play with it ?
The production roll out of Windows Azure is expected to be available around late 2009 but a early CTP is available today for you to play with. You could register for access at www.azure.com the only challenge here being MS is only activating a few 100s every day so it could be a week or a couple of weeks before your request is processed. If you were among the ones at the PDC you should be ahead of the rest of the world for getting provisioned on the cloud.