Automatically scaling out or scaling in applications to handle the demands of your business is an essential element of the cloud strategy. Azure’s Autoscale service empowers you to automatically scale your compute and App Service workloads based on user-defined rules regarding metric conditions, time/date schedules, or both. Azure Autoscale is available for Classic Cloud Services, Virtual Machine Scale Sets (VMSS) and App Services. Today we are excited to announce a host of improvements to Autoscale, including faster auto scaling, simplified configuration, the ability to scale by a custom metric using Application Insights, and more troubleshooting information available in the Activity Log.
Faster Autoscale
Classic Cloud Services: The Classic Virtual Machine infrastructure that powers Classic Cloud Services now supports more reliable, host-level metrics via the Azure Monitor metric pipeline. Because of this, an Autoscale setting can now be set to have as low as a five-minute time window to activate (previously we recommended a time window of no less than 30 minutes). With this, you can now do faster and more reliable auto scaling. If you have a Classic Cloud Service Autoscale setting where you wish to take advantage of the improved scaling, please update it with a shorter time window (as low as five minutes).
VMSS and App Services: The Autoscale engine for VMSS and App Services can also now trigger scale actions faster. The new engine is tuned to check for your metric based rules every minute, thereby enabling the ability to scale your instances as early as 1 minute after a metric value crosses the threshold set in an Autoscale setting. To take advantage of the faster Autoscale, please update your existing autoscale setting. All new Autoscale settings created or updated on VMSS or App Services after May 10th will automatically use the new engine.
Simplified management experience in the portal
Based on your feedback, we made it easier to discover and manage Autoscale settings in the portal. Autoscale settings can now be accessed directly from within the Azure Monitor blade, use a completely re-vamped configuration blade, and enable you to easily see the full template in JSON or scale action history for that setting. Learn more about how to get started with Autoscale today.
Autoscale using custom metrics
One of our top customer asks was to be able to Autoscale based on a custom, user-defined metric, and we’ve now enabled it using Application Insights. This new capability is available now and enables you to scale Classic Cloud Service, VMSS or App Service workloads by any Azure Monitor based metric or custom and application metrics collected by Application Insights, Azure’s application performance management service. Here is a sample of an Autoscale setting that allows you to scale your Web API app based on a custom metric ingested to Application Insights. This ability to Autoscale via Application Insights based metrics is now available in public preview, please try this out and share your feedback.
Figure 3. the ability to select Application Insights as a source of metrics and the ability to select a standard or user-defined metric by which scaling will occur.
Improved Autoscale troubleshooting
The Autoscale engine logs an event in Activity Log every time it triggers a scale action, however, the target resource that is being scaled out or in can take the time to complete the scale action. It is important to know when the scale action completes or reports as failed so that you can take automated actions on the resource. To support this, the Autoscale engine now generates a scale action result event when the underlying target service completes the action or reports it as failed. This scale result event is also logged in the Activity Log and includes valuable information about why your Autoscale event failed. We’ve also introduced a new Autoscale Activity Log category so that you can easily filter to view only Autoscale-related events. You can leverage the new Activity Log Alerts to receive notifications or take automated actions via webhooks and Azure Automation, Logic Apps or Functions. This feature is now enabled for Cloud Services, VMSS and App Services.
Figure 4. A view of Activity Logs filtered by Autoscale events, listing the Autoscale trigger action and result event.
Wrapping Up
These new capabilities in Azure Autoscale enable you to efficiently leverage the compute power of Azure to scale your applications to best suit your growing business needs. We are eager to hear your feedback to inform our future work on Autoscale. Please try these new features and let us know what you think. Also be sure you’re getting the most out of this feature by checking out our Autoscale best practices, and most common autoscale patterns.