Top Banner
A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH
19

A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

A Model-Based System to Automate Cloud Resource Allocation and OptimizationCISC 836 – GRAYDON SMITH

Page 2: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

ProblemCloud providers offer quick and easy methods to allocate resources

Not a simple task to optimize

Not cost-effective

Pick several configurations and load test

Page 3: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Motivating ExampleHybrid 4-Dimensional Augmented Reality (HD4AR)

◦ Take picture◦ upload to cloud◦ Returned augmented image has information tagged to it

Originally designed for in-house, standalone use

Demand caused creation of HD4ARWebDataService

QoS requirements of 2000 active users/minute

gsmith
Spelling mistake in the paper
Page 4: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Challenges1) Translating high-level QoS goals into low-level load generator configuration

a. jMeter Thread groups b. OS level details creates complexity

2) Customized test flows not supported or difficulty to verifya. Testing single API at a timeb. Chaining of requests based upon logic

3) Resource bottleneck analysis a. Difficult or non-existentb. Correlate to QoS metrics

Page 5: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Challenges Continued4) Lack of Model analysis to derive resource config strategy

a. Termination criteriab. How much data is enough?

5) Lack of End-to-End testing of resource allocation, load generation, resource utilization metric collection and QoS metric tracking

a. Most systems generate load tests for single itemsb. Focus on a few QoS metricsc. How to test multi-tier configurations? (security groups, load-balancers, databases, etc)d. Providers offer many resource types and parameterse. E.g. Amazon AWS offers 50 resource types with hundreds of parameters

Page 6: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Solution (ROAR)Model-based Resource Optimization, Allocation and Recommendation (ROAR) System

◦ Raises abstraction level when load-testing◦ Textual DSL specifies testing plan – Generic Resource Optimization for Web applications Language

(GROWL)◦ Implemented in XText◦ DSL specifies QoS requirements and high-level test plan◦ Generates jMeter XML configuration ◦ Code generator to automate allocation and testing of configurations

Page 7: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.
Page 8: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Addressing Challenges 1 & 2GROWL addresses challenges by

Specifying QoS goals Removing the need to configure Thread Groups, Logic Controllers, etc. No need to know underlying jMeter details jMeter thread count may not sufficiently test load or “ramp up” too quickly Throughput shaping by steps

Page 9: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Comparison

Page 10: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Addressing Challenge 3Automates Temporal Correlation of Resource Utilization and QoS Metrics

Throughput Shaper discretizes tests into temporal blocks

Lines up server resource usage with QoS measurements

Only looks at CPU, memory, network I/O, and disk I/O

Step 4 of model

Page 11: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.
Page 12: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.
Page 13: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Addressing Challenge 4Filtering step (Step 5 of the process)

N = [ Tex / Tp ]

N : number of servers

Tex : Expected throughput

Tp : Actual peak throughput

Problems: Reasonable Tp from all data points Determined by a resource reaching near 100% utilization and dramatic latency increase

Repeat process for each configuration

Page 14: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.
Page 15: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.
Page 16: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Addressing Challenge 5Different applications have a variety of configurations e.g. Libraries and environment

Package application using Docker Virtualized packaging Versioned in Git

Currently only support Amazon AWS

Plans for OpenStack

Page 17: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Case StudyExperiments outlined

Based on the motivating example 2400 requests/sec 5000 requests/sec

Page 18: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

Conclusion/DiscussionMotivations and problems clearly defined

Presents a clear process for assessing cloud configurations and resource configuration

Low detail on GROWL Xtext model

Multiple case studies?

Page 19: A Model-Based System to Automate Cloud Resource Allocation and Optimization CISC 836 – GRAYDON SMITH.

ReferencesY. Sun, J. White, S. Eade. A Model-Based System to Automate Cloud Resource Allocation and Optimization. Model-Driven Development of Mobile Applications Allowing Role-Driven Variants. 17th International Conference on Model-Driven Engineering Languages and Systems (MoDELS'14). Springer LNCS 8767. Pages 18-34.

Amazon Web Services (2014), http://aws.amazon.com/

Apache JMeter (2014), https://jmeter.apache.org/