Some IT professionals describe cloud computing as an “amorphous” thing. It is hard to clearly understand what it is, and most importantly, to know if it works for your organization. The cloud is not only difficult to understand, but it is growing and changing at such a fast pace that it is hard to keep up with it and understand what it offers. Nonetheless, the cloud is not an ‘all or nothing’ deal; you need to assess the readiness of each application of your organization.
To understand cloud computing, you need to assess what technical, monetary, and marketing benefits it offers for each of your applications. There are five simple patterns that serve to assess if the applications in your organization are suitable for the cloud or not, more specifically, if they are suitable for Microsoft’s cloud computing platform, Windows Azure.
Transferance. This is about understanding how you actually take what the application has on-premise and push it out to the Azure platform. This is really about migration – what does the app look like in the cloud? You might even want parts of the application hosted in Azure while still keeping parts of it on-premise. For example, you might want to manage identity on-premise and have the rest of the application in Azure. If so, then you have to understand how these parts would communicate – Windows Azure offers services for effective communication. This pattern also considers the type of data that you manage and store in the application; if the data is regulated you might want to keep it on-premises – there is still some debate as to whether the cloud is compliant with PCI, HIPAA, and SOX.
Scale and multi-tenancy. Windows Azure differentiates the web tier of your application from the worker tier (back-end compute tier) for different reasons, one of them scalability – in case you need to achieve scale on only one tier. This pattern involves the web tier. If you are not sure how big and at what rate your application will grow or shrink, Windows Azure’s cloud provides real time capability to increase or decrease the number of web tier instances. For example, if you are creating a new web site that your team estimates will be receiving 10,000 hits per month in 6 months and you are hosting it on-premises, you will most likely buy the capacity now for 10,000 hits and expect that it will need exactly that. While if you host it on Windows Azure, you can, on a daily basis, set the number of web-tier instances you need based on the hits you are receiving. Since Windows Azure offers a pay as you go model, you only pay for the capacity you use per day.
A recent (July 2010) survey of IT and business decision makers sponsored by Savvis showed that 76 % of survey takers see the “lack of access to IT capacity” as a barrier to business progress, hence Windows Azure can help with business agility. Kelley Blue Book migrated its applications to Windows Azure and it now takes them 6 minutes to boost capacity (vs. six-week turnaround for on-premise hardware).
Modernize applications and support business initiatives with Microsoft Azure
3. Burst compute. This pattern involves the worker/compute tier of your applications. You can use Windows Azure for some tasks on the computing tier of your application that might need to be scaled up and down really quickly, for high compute power for short periods of time. For example, if your application needs to process heavy imaging at the end of every month, you can use the “infinite” compute power of Windows Azure. More importantly, if one month you need to process 100 times the number of images that you normally process, you can quickly increase the number of instances of your application’s worker tier for one day and then shrink it back to normal. To illustrate further, Windows Azure could also be used to host a tax application that needs a lot of capacity for only a couple of weeks per year – 2 to 3 weeks before Apr 16.
4. Elastic storage. Currently, storage is non-expensive on-premise. However, the actual maintenance of the storage is the greatest expense; adding, removing, swapping disks in a changing environment can become very difficult to handle. In addition, you need to worry about backing up, recovering, etc. On Windows Azure, you can smoothly add/remove storage capacity, paying as you go, and Microsoft takes care of everything else such as automatically double-backing up your data behind the scenes.
Furthermore, Windows Azure Content Delivery Network (CDN) has 18 global locations strategically placed to provide maximum bandwidth for delivering content to users. For example, Glympse, who provides a location-sharing application for GPS-enabled phones, moved from Amazon’s cloud to Windows Azure and mentioned that performance of Azure exceeded that available on Amazon
Inter-organizational communication. This pattern involves Azure’s offering through its Service Bus component, by ensuring easy and effective communication of applications that have firewalls in between. For example, if your cloud-based or on-premise application needs to share some functions with a partner’s application, they can use the Service Bus functionality to give direct access without worrying about the firewall. Otherwise, you need to create specific mediums/packages of communications, which then becomes even more difficult to handle if you add a third partner application to the communication.
The inter-organizational communication issue will grow further since we are running out of public v4 IP addresses and a lot of organizations are doing network address translation which makes communication more difficult.
Again, deciding where your applications should be hosted is not an ‘all or nothing’ deal, you need to determine what will be the best place for each application. It is about having a good strategy for your organization’s applications considering your current investments on hardware, the specifications of your applications, and future expectations for the use and growth of each of them.
In case you want to test Windows Azure, Microsoft is currently offering a Introductory Special until October 31, 2010. If you want to assess the cost savings of using Windows Azure, you can use Azure’s TCO and ROI calculator.