Dynamically Scaling Applications in the Cloud Presented by Paul.

Slides:



Advertisements
Similar presentations
1/17/20141 Leveraging Cloudbursting To Drive Down IT Costs Eric Burgener Senior Vice President, Product Marketing March 9, 2010.
Advertisements

Ivan Pleština Amazon Simple Storage Service (S3) Amazon Elastic Block Storage (EBS) Amazon Elastic Compute Cloud (EC2)
Take your CMS to the cloud to lighten the load Brett Pollak Campus Web Office UC San Diego.
Virtual Machine Usage in Cloud Computing for Amazon EE126: Computer Engineering Connor Cunningham Tufts University 12/1/14 “Virtual Machine Usage in Cloud.
Chapter 22: Cloud Computing and Related Security Issues Guide to Computer Network Security.
Cloud Computing Imranul Hoque. Today’s Cloud Computing.
1 NETE4631 Cloud deployment models and migration Lecture Notes #4.
Infrastructure as a Service (IaaS) Amazon EC2
Cloud Computing PRESENTED BY- Rajat Dixit (rd2392)
Emerging Platform#6: Cloud Computing B. Ramamurthy 6/20/20141 cse651, B. Ramamurthy.
Automatic Resource Scaling for Web Applications in the Cloud Ching-Chi Lin Institute of Information Science, Academia Sinica Department of Computer Science.
Technical Architectures
w/ Service Provider Foundation & Service Management Automation VMs, Networks, Automation Service Bus Database SQL Sever MySQL Web Sites Services Plans.
FI-WARE – Future Internet Core Platform FI-WARE Cloud Hosting July 2011 High-level description.
Cloud Computing (101).
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 4.
B UILDING M ULTI - TIER W EB A PPLICATIONS IN V IRTUAL E NVIRONMENTS.
Bandwidth Measurements for VMs in Cloud Amit Gupta and Rohit Ranchal Ref. Cloud Monitoring Framework by H. Khandelwal, R. Kompella and R. Ramasubramanian.
Cloud Don McGregor Research Associate MOVES Institute
Cloud Computing By Alex Chiu. What is Cloud Computing?
Plan Introduction What is Cloud Computing?
Cloud Computing Why is it called the cloud?.
Towards auto-scaling in Atmosphere cloud platform Tomasz Bartyński 1, Marek Kasztelnik 1, Bartosz Wilk 1, Marian Bubak 1,2 AGH University of Science and.
A Brief Overview by Aditya Dutt March 18 th ’ Aditya Inc.
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
Cloud MapReduce : a MapReduce Implementation on top of a Cloud Operating System Speaker : 童耀民 MA1G Authors: Huan Liu, Dan Orban Accenture.
Software to Data model Lenos Vacanas, Stelios Sotiriadis, Euripides Petrakis Technical University of Crete (TUC), Greece Workshop.
PhD course - Milan, March /09/ Some additional words about cloud computing Lionel Brunie National Institute of Applied Science (INSA) LIRIS.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
A MAZON W EB S ERVICES Reza Yousefzadeh 12/9/2014.
INTRODUCTION TO CLOUD COMPUTING CS 595 LECTURE 7 2/23/2015.
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Monitoring Latency Sensitive Enterprise Applications on the Cloud Shankar Narayanan Ashiwan Sivakumar.
Yaoshen Yuan Tufts University Virtual Machine Usage in Cloud Computing in Google EE-126.
M.A.Doman Short video intro Model for enabling the delivery of computing as a SERVICE.
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Autonomic SLA-driven Provisioning for Cloud Applications Nicolas Bonvin, Thanasis Papaioannou, Karl Aberer Presented by Ismail Alan.
Large Scale Sky Computing Applications with Nimbus Pierre Riteau Université de Rennes 1, IRISA INRIA Rennes – Bretagne Atlantique Rennes, France
C LAUDIO A A RDAGNA, E RNESTO D AMIANI, F ULVIO F RATE, D AVIDE R EBECCANI Universita degli Studi di Milano, Italy M ARCO U GHETTI Telecom Italia, TILab,
Licensed under Creative Commons Attribution-Share Alike 3.0 Unported License Cloud Hosting Practices Lessons DuraSpace has learned Bill Branan Open Repositories.
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Distributed Computing Systems CSCI 4780/6780. Scalability ConceptExample Centralized servicesA single server for all users Centralized dataA single on-line.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
Web Technologies Lecture 13 Introduction to cloud computing.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-2.
Building Cloud Solutions Presenter Name Position or role Microsoft Azure.
Cloud Computing Andrew Stromme and Colin Schimmelfing.
Cloud Computing from a Developer’s Perspective Shlomo Swidler CTO & Founder mydrifts.com 25 January 2009.
Alfresco Enterprise on Azure Shah Rahman Founder and CEO, CloudlyIO.
Alfresco on Azure Shah Rahman Founder and CEO, CloudlyIO.
Amazon Web Services. Amazon Web Services (AWS) - robust, scalable and affordable infrastructure for cloud computing. This session is about:
INTRODUCTION TO AMAZON WEB SERVICES (EC2). AMAZON WEB SERVICES  Services  Storage (Glacier, S3)  Compute (Elastic Compute Cloud, EC2)  Databases (Redshift,
Fault – Tolerant Distributed Multimedia Streaming Web Application By Nirvan Sagar – Srishti Ganjoo – Syed Shahbaaz Safir
StratusLab Final Periodic Review
StratusLab Final Periodic Review
Network Load Balancing
Platform as a Service.
Cloud Computing Platform as a Service
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
Replication Middleware for Cloud Based Storage Service
CNIT131 Internet Basics & Beginning HTML
20409A 7: Installing and Configuring System Center 2012 R2 Virtual Machine Manager Module 7 Installing and Configuring System Center 2012 R2 Virtual.
Specialized Cloud Mechanisms
AWS Cloud Computing Masaki.
Cloud Computing Architecture
Specialized Cloud Architectures
Cloud Computing Architecture
Cloud Computing: Concepts
Presentation transcript:

Dynamically Scaling Applications in the Cloud Presented by Paul

Problem The cloud offers o Near infinite computing capabilities o Near infinite storage o On-demand access to new VMs o Pay-as-you-go model But how do you build an application to automatically take advantage of those resources? [1]

Overview of scaling options [1]

Horizontal Scaling VM Replication o Duplicate servers and create load balancers to distribute incoming request o Most common approach to scaling o Will look in more detail... Network Scalability o As an application scales up, the bandwidth requirements for intercloud communication and app requests increases, [1] assesses the possibility of requesting network resources in conjunction with cloud resources Network as a Server (NaaS) [1]

Vertical Scaling VM resizing (live) o Taking a VM with given processing power, and upgrading it with more resources while it's still running VM replacement o Replacing less powerful VM with more powerful VM (shutting down original VM) Might require reboots, and application tolerance [1]

"Rule of thumb" CPU-Intensive o Best to load balance and split computation among many instances Network intensive o Better to use single CPU heavy instance More network intensive o DNS-based load balancing on powerful CPUs [1]

Decisions, decisions 1 Cloud to rule them all? o Do you want to use multiple cloud providers? o Does part of your application require running on private cloud? How much control over automated scaling would you like? o If you don't want any control, maybe PaaS is better option o Do you simply want horizontal scaling, and will handle load balancing on your own? o How much $$$ do you have?

Methods for Scaling Automatic VM Scaling Dynamic Workload-pattern Matching Whole Application Scaling Non-scalable Load Balancing (e.g. Elastic Load Balancing) DNS-based Load Balancing [1]

Basic: Automatic VM Scaling Services that scale based on predefined VM- related performance metrics Offered by Amazon and Rightscale o Amazon Autoscaling comes with Cloudwatch  Set conditions based on Cloudwatch variables, react to latency, CPU speed, etc. What you might imagine for scaling - like a state machine o If conditions a,b,c are met, do x,y,z [1]

The "Controller"

"Non-Scalable" Load Balancers Amazon offers load balancing service (Elastic Load Balancing) o The reason it's "non-scalable" is this is a single load balancer Could be used in conjunction with horizontal scaling o Scale up/down the number of instances, configure load balancer to balance across running instances

Elastic Beanstalk Automatically scale up your application depending on services it's using, and beanstalk controller parameters o Only pay for underlying AWS resources Can upload.NET, PHP/Python, and Java apps for integration with Elastic Beanstalk Closer in function to a PaaS o Still have access to AWS instances, can interact with elastic beanstalk controller

Whole Application Scaling [3]

Whole Application Scaling [3]

Dynamic Workload-pattern Matching [2] Scalability Controller

Dynamic Workload-pattern Matching [2]

Final Observations You must first decide how many clouds you want to use Scaling is still an art o Systems for automated scaling still in their infancy At the core, there is always a scaling controller o Either you configure and operate the controller, or the IaaS provider does (e.g. Elastic Beanstalk) You pay for automation o Either with your time or your money o More customized automation == more complexity

Sources [1] L. M. Vaquero, L. Rodero-Merino, and R. Buyya. "Dynamically scaling applications in the cloud," SIGCOMM Comput. Commun. Rev., 41: [2] P. Marshall, K. Keahey, and T. Freeman, "Elastic site:Using clouds to elastically extend site resources," Cluster Computing and the Grid, IEEE International Symposium on, vol. 0, pp , [3]R. Buyya, R. Ranjan, and R. Calheiros, “Intercloud: Utility-oriented federation of cloud computing environments for scaling of application services.” in ICA3PP 2010: The 10th International Conference on Algorithms and Architectures for Parallel Processing, 2010, pp. 19–24.

Links for papers [1] nCloud2011.pdf [2] e_ccgrid_2010.pdf [3]