1 / 16

Autoscaling in Windows Azure

Autoscaling in Windows Azure. aka.ms/autoscaling. Achieving Elasticity (prior to 11-2011). Manually via Windows Azure Management Portal Autoscaling Service (third-party only) Writing your own plumbing using Azure Management REST API. Making Apps More Elastic. Types:

emele
Download Presentation

Autoscaling in Windows Azure

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Autoscaling in Windows Azure aka.ms/autoscaling

  2. Achieving Elasticity (prior to 11-2011) • Manually via Windows Azure Management Portal • Autoscaling Service (third-party only) • Writing your own plumbing using Azure Management REST API

  3. Making Apps More Elastic Types: • instance autoscaling • application throttling • hybrid Triggered by: • schedules • metrics => Autoscaling Application Block (“Wasabi”) Other features • Scale groups • Notifications • Optimizing stabilizer • PowerShell cmdlets

  4. Rule Types • Constraint rules • Use timetables (with recurrences) to proactively set limits on #instances • Have a rank to determine precedence if there are multiple overlapping rules • Upper bound guards your budget • Lower bound guards your SLA • Reactive rules • Use conditions to reactively adjust #instances or perform some other action • Based on • perf counters • queue length (Azure queue) • current instance count • custom-defined business metrics • Help respond to unexpected bursts or collapses in your application’s workload • Guard both your budget and SLA

  5. Wasabi in Action DEMO

  6. Important Remark • Wasabi makes your app elastic but doesn’t make your app scalable • Design-for-scalability!

  7. Customizing Wasabi to your business • Custom actions • Custom operands/data collectors

  8. Customizing Wasabi to your business DEMO

  9. Stabilizer • Dealing with the high-frequency oscillation (the "yo-yo" problem) • Supports hysteresis • Enable "cool-down" period after a scaling action during which no other scaling action can take place • Granularity: global or at the role level • Direction: up or down • On by default • The user can opt-out

  10. Optimizing Stabilizer • Making sure that scale actions correspond to the most optimal compute hour pricing charges. • Specifying intervals of time in which to execute an action E.g. only run reactive scaling up rules during the first 15 mins of the hour <stabilizer scaleUpCooldown="00:20:00"scaleDownCooldown="00:30:00" scaleUpOnlyInFirstMinutesOfHour="15" scaleDownOnlyInLastMinutesOfHour=“20" > <roles>… </roles> </stabilizer> • Supports for scale groups • User-configurable cool down on notifications too

  11. How to Get All This Goodness? Via NuGet (search key “Wasabi”) or MS Download Center

  12. Learning Resources • Developer’s Guide • Reference Documentation • Tailspin Reference Implementation • 14 Comprehensive Hands-on Labs • 2 case studies • 4 videos on Channel 9 • Codeplex forum

  13. Case Study: MSDN/TechNet • Objectives • to maximize resources utilization (from 20% to 67%) • to reduce infrastructure and running costs • to "green" the MSDN and TechNet services. • while: • No code or architecture changes • Equivalent or better performance • Ease of operation • Reduced on-premises requirements According to the IT Energy Efficiency Imperative(http://aka.ms/ITEEI), the biggest potential for improving the IT energy efficiency in a data center lies withincreasing server utilization.

  14. Resources • Windows Azure Dev Center windowsazure.com/develop/net/how-to-guides/autoscaling • Wasabi home page aka.ms/wasabi • Comprehensive hands-on labs microsoft.com/download/en/details.aspx?id=28785 • CloudCover Episode on Autoscalinghttp://bit.ly/cloudcover_wasabi • Case studieshttp://aka.ms/msdntechnetstudy and http://aka.ms/sagestudy • IT Energy Efficiency Imperative http://aka.ms/ITEEI • Grigori’s blog: blogs.msdn.com/agile

  15. Wasabi Recap: Supported Scenarios • Autoscaling web and worker roles in Windows Azure by dynamically changinginstance counts or performing application throttling. • Autoscaling roles based on timetables. • Autoscaling based on metrics collected from the application and/or Windows Azure. • Constraining the instance count per role by upper and lower bounds. • Preventing fast oscillations in the number of role instances with the stabilizer. • Optimizing costs by limiting scaling operations acknowledging billing hours. • Monitoringand tracing autoscaling activity. • Sending notifications to preview any scaling operations before they take place. • Encryptingthe rules and other configuration in Windows Azure blobstorage or in local file storage. • Managing the autoscaler operation by using Windows PowerShell. • All blocks and guidance are 100% MS IP, free and available under MS-PL.

  16. Thank you • Questions & Answers

More Related