In an earlier blog, I highlighted the lack of autoscaling features in Azure as compared to Amazon’s CloudWatch. This left architects with the choice of a DIY approach using additional tooling (such as WASABi or MetricsHub) or using a 3rd party product – Paraleap’s AzureWatch. However, this summer Microsoft introduced an Autoscaling feature which is built-into Windows Azure directly – Windows Azure AutoScale (WAAS).
Microsoft Vice President Scott Guthrie recently announced in a blog post, “AutoScale enables you to configure Windows Azure to automatically scale your application dynamically on your behalf (without any manual intervention) so you can achieve the ideal performance and cost balance. Once configured, it will regularly adjust the number of instances running in response to the load in your application,” Guthrie wrote.
Guthrie also noted that WAAS supports two load metrics — CPU percentage and storage queue depth, for cloud services and WAVM’s only — but Microsoft will continue to add more services. Enterprises can set up WAAS in the Windows Azure Management Portal’s new Scaling page – see Figure 1 below.
Figure 1 – AutoScale Configuration Page
The method of operation for the Scale by CPU algorithm is shown in Figure 2 below.
Figure 2 – AutoScale by CPU Algorithm
This feature is still in Preview mode rather than general availability but further enhancements are promised as Microsoft play catch up to market leader Amazon AWS.