SlideShare a Scribd company logo
A Pluggable Autoscaling
Service for Open Cloud
     PaaS Systems
 Chris Bunch Vaibhav Arora Navraj Chohan
Chandra Krintz Shashank Hedge Ankit Srivastava

           UCC 2012 @ Chicago, IL
             November 8, 2012
Cloud Computing

• Three tiers of abstraction:
 • Infrastructure: Scalable hardware
 • Platform: Scalable APIs
 • Software: Scalable applications
Autoscaling Cloud
       Services
• Easy access to vast resources
• Hard to automatically configure and deploy
  applications
• Requires in-depth knowledge about the app
• Lots of existing research on autoscaling
• Most solutions scale on coarsely-defined
  metrics
Solving these Problems

• No one solution works for all applications
 • Need a “pluggable” system that users can
    experiment with, via existing or new
    autoscaling algorithms
• Need to automate scaling up and down for
  distributed software stacks
Cloud Computing

• Infrastructure: Completely self-service
• Platform: Automated access to
  certain APIs
• Software: Optimized for one piece of
  software
AppScale
• An open source implementation of the
  Google App Engine APIs
• Can run over Amazon EC2 or Eucalyptus
• Configures and deploys
  automatically
• Users need only specify the number of
  nodes to run over
Role System

• Represent each component in the AppScale
  stack as a “role”, which requires:
 • Startup scripts
 • Shutdown scripts
 • Metric collection / storage
AppScale Roles
AppController + Roles

• AppController controls all other roles
• Automatically places roles on nodes
• Handles ordering dependencies
• Can scale based on role or node state
Scaling in a PaaS

• Can scale based on SaaS or PaaS-level info:
 • SaaS-level: Application statistics
   • API usage, request latency
 • PaaS-level: Role or node statistics
   • # of roles/nodes alive, failure history
High Availability

• AppControllers periodically check in w/
  Metadata service
• Any AppController missing their check in
  has failed
• Next AppController spawns a new node
  with roles of the failed node
Quality of Service
• Load Balancer checks in with Metadata
  service with:
  • # of requests per app
  • # of queued requests per app
• Estimate these values for next check in
• Scale up or down if predictions exceed
  customizable thresholds
Cost Awareness

• Amazon EC2 meters on a per-hour basis
• Scaling down => hot spares
• Scaling up => use hot spares first
• Reap VMs near the hour boundary
• Use Spot Instances to save money
Evaluation
        Methodology
• Python / Java Guestbook apps from Google
• Three-tier web deployment model
• Three virtual machines
• 40,000 web requests (70 concurrently)
• All values are the average of five runs
Python Guestbook
Java Guestbook
Wrapping it up
• Thanks to the AppScale team, especially co-
  lead Navraj Chohan and advisor Chandra
  Krintz
• AppScale 1.6.3 released on October 30
• Visit us at http://appscale.cs.ucsb.edu
• E-mail: cgb@cs.ucsb.edu

More Related Content

PDF
AppScale + Neptune @ HPCDB
PDF
Neptune @ SoCal
PDF
AppScale @ LA.rb
PDF
Appscale at CLOUDCOMP '09
PDF
Active Cloud DB at CloudComp '10
PPTX
Tech Talk on Autoscaling in Apache Stratos
PDF
Ph.D. Defense
PPT
Designing the Call of Cthulhu app with Google App Engine
AppScale + Neptune @ HPCDB
Neptune @ SoCal
AppScale @ LA.rb
Appscale at CLOUDCOMP '09
Active Cloud DB at CloudComp '10
Tech Talk on Autoscaling in Apache Stratos
Ph.D. Defense
Designing the Call of Cthulhu app with Google App Engine

What's hot (20)

PDF
AppScale Talk at SBonRails
PDF
Heterogeneous Workflows With Spark At Netflix
PDF
Serverless data processing with Data Pipeline
PDF
StreamSQL Feature Store (Apache Pulsar Summit)
PDF
Flink Forward SF 2017: Bill Liu & Haohui Mai - AthenaX : Uber’s streaming pro...
PDF
DataConf.TW2018: Develop Kafka Streams Application on Your Laptop
PPTX
AWS ELB Tips & Best Practices
PDF
Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...
PPTX
Portable Streaming Pipelines with Apache Beam
PPT
DevOpsCon Cloud Workshop
PDF
Building Realtime Data Pipelines with Kafka Connect and Spark Streaming: Spar...
PPTX
Sas 2015 event_driven
PPT
Docker in the Cloud
PPTX
Automate all your EMR related activities
PPTX
Kafka Connect: Real-time Data Integration at Scale with Apache Kafka, Ewen Ch...
PPTX
AWS - Lambda Fundamentals
PDF
Kafka Summit NYC 2017 - Building Advanced Streaming Applications using the La...
PDF
Sigmoid akka stream
PPTX
Confluent building a real-time streaming platform using kafka streams and k...
PPTX
Amazon EC2 to Amazon VPC: A case study
AppScale Talk at SBonRails
Heterogeneous Workflows With Spark At Netflix
Serverless data processing with Data Pipeline
StreamSQL Feature Store (Apache Pulsar Summit)
Flink Forward SF 2017: Bill Liu & Haohui Mai - AthenaX : Uber’s streaming pro...
DataConf.TW2018: Develop Kafka Streams Application on Your Laptop
AWS ELB Tips & Best Practices
Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...
Portable Streaming Pipelines with Apache Beam
DevOpsCon Cloud Workshop
Building Realtime Data Pipelines with Kafka Connect and Spark Streaming: Spar...
Sas 2015 event_driven
Docker in the Cloud
Automate all your EMR related activities
Kafka Connect: Real-time Data Integration at Scale with Apache Kafka, Ewen Ch...
AWS - Lambda Fundamentals
Kafka Summit NYC 2017 - Building Advanced Streaming Applications using the La...
Sigmoid akka stream
Confluent building a real-time streaming platform using kafka streams and k...
Amazon EC2 to Amazon VPC: A case study
Ad

Similar to A Pluggable Autoscaling System @ UCC (20)

PDF
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
PDF
Comparative Study of Various Platform as a Service Frameworks
PDF
COMPARISON OF OPEN-SOURCE PAAS ARCHITECTURAL COMPONENTS
PDF
Comparison of open source paas architectural components
PDF
Microservices architecture: practical aspects
PDF
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
PDF
Modern Software Architecture - Cloud Scale Computing
PPTX
Transforming Legacy Applications Into Dynamically Scalable Web Services
PPTX
Cloud Computing from Academic Perspective
PDF
Spring in the Cloud
PPTX
Microservices approach for Websphere commerce
PDF
Architecting for the cloud
PDF
Cloud Foundry for PHP developers
PDF
PHP Buildpacks in the Cloud on Bluemix
 
PPTX
Cloud Foundry Roadmap (Cloud Foundry Summit 2014)
PDF
Java in the Cloud : PaaS Platforms in Comparison
PDF
Java in the Cloud : PaaS Platforms in Comparison
PDF
Experiments with Complex Scientific Applications on Hybrid Cloud Infrastructures
PDF
Going FaaSter, Functions as a Service at Netflix
PPTX
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
COMPARATIVE STUDY OF VARIOUS PLATFORM AS A SERVICE FRAMEWORKS
Comparative Study of Various Platform as a Service Frameworks
COMPARISON OF OPEN-SOURCE PAAS ARCHITECTURAL COMPONENTS
Comparison of open source paas architectural components
Microservices architecture: practical aspects
Scalable Architecture on Amazon AWS Cloud - Indicthreads cloud computing conf...
Modern Software Architecture - Cloud Scale Computing
Transforming Legacy Applications Into Dynamically Scalable Web Services
Cloud Computing from Academic Perspective
Spring in the Cloud
Microservices approach for Websphere commerce
Architecting for the cloud
Cloud Foundry for PHP developers
PHP Buildpacks in the Cloud on Bluemix
 
Cloud Foundry Roadmap (Cloud Foundry Summit 2014)
Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison
Experiments with Complex Scientific Applications on Hybrid Cloud Infrastructures
Going FaaSter, Functions as a Service at Netflix
Openstack Summit Tokyo 2015 - Building a private cloud to efficiently handle ...
Ad

Recently uploaded (20)

PPT
Module 1.ppt Iot fundamentals and Architecture
PPTX
1. Introduction to Computer Programming.pptx
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
Modernising the Digital Integration Hub
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PPT
What is a Computer? Input Devices /output devices
PPTX
The various Industrial Revolutions .pptx
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
1 - Historical Antecedents, Social Consideration.pdf
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Architecture types and enterprise applications.pdf
PPTX
Chapter 5: Probability Theory and Statistics
PDF
STKI Israel Market Study 2025 version august
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
observCloud-Native Containerability and monitoring.pptx
PDF
A novel scalable deep ensemble learning framework for big data classification...
Module 1.ppt Iot fundamentals and Architecture
1. Introduction to Computer Programming.pptx
Assigned Numbers - 2025 - Bluetooth® Document
Univ-Connecticut-ChatGPT-Presentaion.pdf
Hindi spoken digit analysis for native and non-native speakers
Zenith AI: Advanced Artificial Intelligence
Modernising the Digital Integration Hub
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
What is a Computer? Input Devices /output devices
The various Industrial Revolutions .pptx
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
NewMind AI Weekly Chronicles - August'25-Week II
1 - Historical Antecedents, Social Consideration.pdf
Group 1 Presentation -Planning and Decision Making .pptx
Architecture types and enterprise applications.pdf
Chapter 5: Probability Theory and Statistics
STKI Israel Market Study 2025 version august
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
observCloud-Native Containerability and monitoring.pptx
A novel scalable deep ensemble learning framework for big data classification...

A Pluggable Autoscaling System @ UCC

  • 1. A Pluggable Autoscaling Service for Open Cloud PaaS Systems Chris Bunch Vaibhav Arora Navraj Chohan Chandra Krintz Shashank Hedge Ankit Srivastava UCC 2012 @ Chicago, IL November 8, 2012
  • 2. Cloud Computing • Three tiers of abstraction: • Infrastructure: Scalable hardware • Platform: Scalable APIs • Software: Scalable applications
  • 3. Autoscaling Cloud Services • Easy access to vast resources • Hard to automatically configure and deploy applications • Requires in-depth knowledge about the app • Lots of existing research on autoscaling • Most solutions scale on coarsely-defined metrics
  • 4. Solving these Problems • No one solution works for all applications • Need a “pluggable” system that users can experiment with, via existing or new autoscaling algorithms • Need to automate scaling up and down for distributed software stacks
  • 5. Cloud Computing • Infrastructure: Completely self-service • Platform: Automated access to certain APIs • Software: Optimized for one piece of software
  • 6. AppScale • An open source implementation of the Google App Engine APIs • Can run over Amazon EC2 or Eucalyptus • Configures and deploys automatically • Users need only specify the number of nodes to run over
  • 7. Role System • Represent each component in the AppScale stack as a “role”, which requires: • Startup scripts • Shutdown scripts • Metric collection / storage
  • 9. AppController + Roles • AppController controls all other roles • Automatically places roles on nodes • Handles ordering dependencies • Can scale based on role or node state
  • 10. Scaling in a PaaS • Can scale based on SaaS or PaaS-level info: • SaaS-level: Application statistics • API usage, request latency • PaaS-level: Role or node statistics • # of roles/nodes alive, failure history
  • 11. High Availability • AppControllers periodically check in w/ Metadata service • Any AppController missing their check in has failed • Next AppController spawns a new node with roles of the failed node
  • 12. Quality of Service • Load Balancer checks in with Metadata service with: • # of requests per app • # of queued requests per app • Estimate these values for next check in • Scale up or down if predictions exceed customizable thresholds
  • 13. Cost Awareness • Amazon EC2 meters on a per-hour basis • Scaling down => hot spares • Scaling up => use hot spares first • Reap VMs near the hour boundary • Use Spot Instances to save money
  • 14. Evaluation Methodology • Python / Java Guestbook apps from Google • Three-tier web deployment model • Three virtual machines • 40,000 web requests (70 concurrently) • All values are the average of five runs
  • 17. Wrapping it up • Thanks to the AppScale team, especially co- lead Navraj Chohan and advisor Chandra Krintz • AppScale 1.6.3 released on October 30 • Visit us at http://appscale.cs.ucsb.edu • E-mail: cgb@cs.ucsb.edu