Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Bricklayer: Resource Composition on the Spot Market


Published on

AWS offers discounted transient virtual instances as a way to sell unused resources in their data-centers, and users can enjoy up to 90% discount as compared to the regular on-demand pricing. Despite the economic incentives to purchase these transient instances, they do not come with regular availability SLAs, meaning that they can be evicted at any moment. Hence, the user is responsible for managing the instance availability to meet the application requirements. In this paper, we present Bricklayer, a software tool that assists users to better use transient resources in the cloud, reducing costs for the same amount of resources, and increasing the overall instance availability. Bricklayer searches for possible combinations of smaller and cheaper instances to compose the requested amount of resources while deploying them into different spot markets to reduce the risk of eviction. We implemented and evaluated Bricklayer using 3 months of historical data from AWS and found out that it can reduce up 54% of the regular spot price and up to 95% compared to the standard on-demand pricing.

Published in: Internet
  • Be the first to comment

  • Be the first to like this

Bricklayer: Resource Composition on the Spot Market

  1. 1. Bricklayer: Resource Composition on the Spot Market Walter Wong1, Lorenzo Corneo2, Aleksandr Zavodovski1, Pengyuan Zhou1, Nitinder Mohan1,3, Jussi Kangasharju1 1University of Helsinki, Finland 2Uppsala University, Sweden 3Technical University Munich, Germany
  2. 2. Motivation – AWS Cloud Computing • Amazon offers a wide range of cloud services, such as computing and storage, that can be quickly deployed in the Internet • For computing, there are three subscription options • Reserved: 1 to 3-year commitment • On-demand: pay-as-you-go • Spot instances: variable market price • AWS Spot Instances • Up to 90% off compared to the on-demand pricing • Caveat: no availability guarantee (instances can be shut down with a 2-minute warning)
  3. 3. Motivation – AWS Cloud & Spot Market Is it possible to leverage spot instances and provide (almost) the same availability levels as on-demand instances?
  4. 4. Outline • AWS Spot Market Analysis • Bricklayer Proposal • Evaluation and Experimental Results • Conclusion
  5. 5. AWS Spot Market Analysis On-demand price Market price for spot instance Main characteristics • Market price • Bid Model • Eviction due to price AWS has 32 availability zones and 252 instance types resulting in ~8k individual spot markets
  6. 6. AWS Spot Market Analysis Instance Family Min. ECU (¢/h) Max. ECU (¢/h) Diff. (%) Compute optimized 0.0026 0.008958 344.54 General purpose 0.003154 0.011854 375.81 Storage optimized 0.014276 0.025212 176.6 Memory optimized 0.00356 0.037692 1058.77 FPGA instances 0.019038 0.021064 110.06 GPU instances 0.022979 0.04365 189.95 Fig. (a) shows that for the same instance family (same hardware), there can be a large ECU price variation Fig. (b) shows that even with the instance size increase, there is a bottom line for the ECU price. (a) (b) What is the minimum price per computing unit across all instances? AWS EC2 Compute Unit (ECU) is a benchmark used to compare AWS EC2 instances.
  7. 7. AWS Spot Market Analysis Fig. (a) and (b) compare the most and least volatile spot instances. Fig. (c) shows the availability and eviction rates of a sample of instances. (a) (b) (c) What are the price volatility of each instance across all availability zones? What are the instances with lower uptime?
  8. 8. AWS Spot Market Analysis – Lessons Learned • Spot instances follow the market price rather than a fixed hourly fee • Eviction happens when the market price of the spot instance goes over the bid price • For the same hardware family, we found • Considerable difference in the ECU pricing • Difference in the price volatility and instance availability
  9. 9. Bricklayer Goals • Offer a software tool to analyze the best pricing and availability of spot instances • Two optimization models • Price: searches for the best pricing engines for a given time • Availability: split the load among different spot markets to reduce eviction rate • Leverage the opportunities with the spot instances • Better ECU pricing with the same hardware • Lower eviction rates in some instances
  10. 10. Bricklayer – System Design • Three core metrics • ECU unit price • Price volatility (from historical data) • Availability • Budget Optimization • Aims to get the cheapest instances (even repeating the same instance type multiple times) • Caveat: bulk eviction (all instances are swiped away at the same time) • Availability Optimization • Aims to get different instance types across different availability zones to reduce evictions
  11. 11. Bricklayer – Architecture Linear Optimizer implements Google Operation Research library All components expose a REST-API to be consumed independently (microservices)
  12. 12. Evaluation Setup • Applications Categories • Batch-type applications (fault tolerant, non-time critical) • Highly available applications • Data • AWS spot pricing data (March to June, 2019) • Contains 32 availability zones and 252 instance types • Instance Sizes • Four popular sizes • 16 vCPU (60 ECUs), 32 vCPU (131 ECUs), 64 vCPU (262 ECUs) and 96 vCPU (347 ECUs)
  13. 13. Results – Budget Optimized Selection Comparison between selecting a pre-defined instance type, e.g., m5.4xlarge, and using Bricklayer to provide a resource set with the same amount of vCPUs Results: 51% to 88% cheaper compared to Spot instances and 83% to 95% cheaper compared to on-demand prices 16 vCPU 32 vCPU 64 vCPU 96 vCPU
  14. 14. Results – Selecting different spot markets Spread across multiple distinct spot markets using Bricklayer Results: increase of 24% going from 1 to 2 spot markets. Further increase 3% per spot market.
  15. 15. Results – Total cost comparison vs. number of distinct spot markets Total cost over a 90-day period. Bricklayer selected the least volatile instances (which have not been evicted due to pricing)
  16. 16. Key Takeaways • For the budget optimized, we are always cheaper than the regular spot instances • Reduction between 51% to 88% off compared to spot instances • Reduction between 83% to 95% off compared to on-demand instances • Even adding more more spot markets to increase the availability, Bricklayer still provides a cheaper solution compared to regular instances • The provided spot instances did not experience any eviction due to pricing
  17. 17. Conclusion • Bricklayer offers options to reduce the cloud costs by trading off spot instance’s availability vs price • Bricklayer checks three metrics to offer the best resource set optimized for cost or availability • ECU unit price • Price volatility • Eviction rate due to pricing • The experimental results show that Bricklayer provides same availability but at lower costs compared to regular instances
  18. 18. Questions? • Contact Info • Walter Wong • University of Helsinki • Email: