• No results found

Optimization of QoS for Cloud-Based Services through Elasticity and Network Awareness

N/A
N/A
Protected

Academic year: 2021

Share "Optimization of QoS for Cloud-Based Services through Elasticity and Network Awareness"

Copied!
32
0
0

Loading.... (view fulltext now)

Full text

(1)

Master Thesis:

Optimization of QoS for Cloud-Based Services through Elasticity

and Network Awareness

(2)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(3)

BonFIRE Project Overview

BonFIRE Project Overview

Testing experiments selected in open calls

Service Components in virtual machines to be virtual machines to be deployed on the Cloud

Service combination in validation scenarios

The BonFIRE (Building service testbeds for Future Internet Research and

Large scale experimentation Network Effects & Services needs

(cross cutting)

Experimentation) project will design, build and operate a multi-site

cloud-based facility to support research across applications, services and

systems targeting services research community on Future Internet.

P t i f t t f iliti Permanent infrastructure facilities

(4)

Operational Infrastructure: Hardware and Software

Operational Infrastructure: Hardware, and Software

- LARGE SCALE testingg

- Address CROSS CUTTING issues

(Network Effects & Services needs)

- VALIDATION and OPTIMISATION

(5)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(6)

Motivation

Motivation

„

Cloud & SOA-based Environments should provide elasticity

dynamical change of the environment according to the actual demand

Requests

$

$

(7)

Motivation

Motivation

„ Elasticity:

– essential property of a Cloud Environment, allowing to dynamically scale utilized resources in accordance to the momentary demand

„ Automated Elasticity:

– elasticity, executed and controlled autonomously based on Key Performance

I di (KPI )

Indicators (KPIs)

„ KPIs that can be taken into account are:

– CPU Utilization – Memory Utilization – Response Time – Network parameters „ Delay „ Packet loss „ t „ etc.

(8)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(9)

Cloud based Service Environment (1/3) Load Balancing

Cloud-based Service Environment – (1/3) – Load Balancing

Users

„In a typical, cloud-based service

environment, the load is shared between application servers dynamically

dynamically

„A Load Balancer represents a key

component allowing for dynamic load BalancerLoad

component, allowing for dynamic load sharing between multiple serving nodes (application servers)

Balancer

„Different load-sharing algorithms

exist, e.g. round robin, weighted round

robin, random, sticky session etc. Application Servers

VMs

„Load-balancers can be application

specific (L7 HTTP load sharing) , or application agnostic (L4 load sharing) application agnostic (L4 load sharing)

(10)

Cloud based Service Environment (2/3) Cloud Management

Cloud-based Service Environment – (2/3) – Cloud Management

Users

„In a typical cloud-based service

environment, application servers run on top of VMs

„Virtual machines can be dimensioned

in a flexible way regarding allocated

CPU memory and storage BalanceLoad

CPU, memory and storage

„A Cloud Management System is

capable of dynamically booting,

Balancer

capable of dynamically booting,

migrating and deleting virtual machines running on heterogeneous hypervisors (KVM, XEN, VMware etc.)

Cloud Manager Application

Servers

(11)

Cloud based Service Environment (3/3) Service Monitoring

Cloud-based Service Environment – (3/3) – Service Monitoring

Users

„In order to provide dynamic cloud

elasticity, different measurements (e.g. VM, service and even network) have to

be taken into account Measurements

be taken into account

„By aggregating and analyzing

real-time measurements an elasticity BalancerLoad

Measurements aggregator agent

time measurements, an elasticity management system is capable of intelligently controlling cloud

management systems

Balancer

agent

„Based on performance thresholds

(e.g. service execution time, network

f h t/VM f ) Cloud Manager Application Servers VMs

performance, host/VM performance), triggering the setup, migration and destruction of distributed VMs can be performed

(12)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(13)

Monitoring Systems Comparison chart

Monitoring Systems Comparison chart

Name IP SLA Reports Logical GroupingTrending Trend Prediction Auto

Discovery Agent SNMP Syslog Plugins

Triggers /

Alerts WebApp

Distributed Monitoring Inventory

Data Storage

Method License Maps

Access Control IPv6

Ganglia No Yes Yes No Via gmond

check in Yes Via plugin No Yes No Viewing Yes Unknown

RRDtool,

in memory BSD Yes No Unknown

OpenNMS Yes Yes Yes Unknown Yes Supported Yes Yes Yes Yes Full Control Yes Limited RRD,

PostgreSQLg GPL Yes Yes Limited

Zabbix Yes Yes Yes Yes Yes Supported Yes Yes Yes Yes Full Control Yes Yes

Oracle MySQL PostgreSQL S

QLite

GPL Yes Yes Yes

Nagios Via plugin Yes Yes No Via plugin Supported Via plugin Via

l i Yes Yes Full Control Yes Via plugin Flat file SQL GPL Yes Yes Yes

Nagios Via plugin Yes Yes No Via plugin Supported Via plugin

plugin Yes Yes Full Control Yes Via plugin Flat file, SQL GPL Yes Yes Yes

Name IP SLA Reports Logical GroupingTrending Trend Prediction Auto

Discovery Agent SNMP Syslog Plugins

Triggers /

Alerts WebApp

Distributed Monitoring Inventory

Data Storage

Method License Maps

Access Control IPv6

(14)

Zabbix Monitoring System

Zabbix Monitoring System

(15)

Zabbix Monitoring System

Zabbix Monitoring System

„ Client-server based monitoring

„ Active and passive modes (active mode used for trespassing domain Firewalls)

„ Flexibility in adding user-defined Metrics by executing shell scripts

„ Auto-registration/linkage of newly added hosts (Virtual Machines)

„ (!) Well-defined API for performing Create, Update, Delete (CRUD) operations on ( ) p g , p , ( ) p

almost all inner data structures (Items, Hosts, Host Groups, Templates, Triggers, Actions etc.)

(16)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(17)

Load Balancers: comparison chart

Load Balancers: comparison chart

HAProxy Squid+MRTG Ultra Monkey NGINX mod_proxyApache balancer

Supported Layer 4/7 7 4/7 7 7

Actuality 2010 2010 2008 2010

License GPL v2 GPL GPL 2-clause BSD-like License v2Apache

Documentation ++ ++ + ++ +

Inbuild

Monitoring - MRTG - -

(18)

Load Balancers

Load Balancers

„ Requirements:

– dynamically add/remove virtual machines

– dynamically assign different “weights” to the running servers

„ Non of the investigated load balancers had API for remote reconfiguration

„ Simple REST interface was developed for this purpose for NGINX and HAProxy load

(19)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(20)

Elasticity Engine

Elasticity Engine

Users Load Measurements aggregator agent Load Balancer agent

Elasticity Engine

Cloud Manager Application Servers VMs age t Servers

(21)

Agenda

Agenda

„ BonFIRE Project overview

„ Motivation

„ General System Architecture

– Monitoring in the Cloud environment – Software Load Balancers

– Elasticity Engine

„ Elasticity: Upscaling/Downscaling

„ Network implications

(22)

Assumptions:

Assumptions:

„ VMs containing an application server with a test application

„ Simple stateless application (can be a WebService)

„ Test application mainly utilizes CPU resources

„ No issues like databases replication are taken into account

„ Concept of the VM Group – a set of load balanced machines with the same base image p p g

(23)

Upscaling/Downscaling

Upscaling/Downscaling

(24)

Upscaling: CPU based

Upscaling: CPU-based

„ Performed on the bases of actual resources utilization

„ Meaningful thresholds have to be defined to specify the moment of reacting

„ Zabbix provides flexible triggers mechanism

100 % 80%

CPU  Utilization

(25)

Trigger! 5

Zabbix Server

Trigger! Zabbix API: addTrigger(VMGroup.CPU<80%) Control information 5 Load Web Portal Test 1 CPU Memory etc. VM 1 Load VM 3 httperf VM 2 Generator <Experiment> <VMGroup> <VM1> <Service1> ….. /VM1 Deployment  Description  2 3 4 6 8 Balancer Reconfigure

Elasticity Engine

</VM1> ….. <VMGroup> Available data:  • VM1.CPU=50%, VM.CPU=90% • Elastic: true 8 VMGroup.CPU<80% 7 Elastic: true Overview of available resources: • LoadBalancer.Domain1.delay=500ms,  • LoadBalancer‐Domain12delay=100ms …. Policies (Rules): If  (Trigger.type=CPU)&(Elasticity=true)&(VmGroup.Size< VmGroup.MaxSize) Æ Upscale(VMGroup)  OpenNebula Cloud manager …. manager

(26)

Downscaling: CPU based

Downscaling: CPU-based

„ Checks performed regularly (no Zabbix triggers used, data is polled)

„ Decisions made on the basis of estimation

VM1 VM2 100 % 80% 100 % 80% VM1 VM2 CPU  Utilization (%) 70% 40%

(27)

Downscaling Model

Downscaling Model

f l d amount of load  to  be redistributed existing load on  the i’th VM

(28)

Downscaling

Downscaling

estimated utilization of i‘th VM  after  downscaling (%)

(29)

Network implications

Network implications

„ S i ti i d b th

„ Service response time perceived by the user:

Network delay (Round-Trip Time) Application delay (Request processing time) time)

„ Response time defines the Quality of Service and Quality of Experience

(30)

Cloud Brokerage: Network Aspects

Cloud Brokerage: Network Aspects

Domain 

Feb  6 12:14:14 localhost \

haproxy[14389]: 10.0.1.2:8080[06/Feb/2009:12:14:14.655] http‐in \

static/sr 110/0/30/69/109 200 2750 1/1/1/1/0 0/0 {1 t } \

Local Cloud

agent: static/srv1{} "GET /servlet1/getWeather.do?city=Berlin 10/0/30/69/109 200 2750 ‐ ‐ ‐‐‐‐ 1/1/1/1/0 0/0 {1wt.eu} \HTTP/1.1"

Load

VM1

3 ms; 100 Mbps low packet loss

CPU Utilization: 80 % !!! Users’ requests Balancer VM2 500 ms; 3 Mb 100 ms; 3 Mbps ; 2 Mbps high packet loss

(31)

Summary

„

There is a possibility to build a solid elasticity enabler based on the

open-„

There is a possibility to build a solid elasticity enabler based on the open

source components

„

Providing a generic Elasticity framework

„

Providing a generic Elasticity framework

– allows controlling resources on a broad range of cross-cutting monitored

data (CPU, MEM, Storage, SET, Delay, Loss, etc.)

allows to improve the QoS and QoE while minimizing the costs

– allows to improve the QoS and QoE while minimizing the costs

„

There is a broad range of open questions regarding optimal policies and

h

h ld

thresholds

„

VM deployment rules (e.g. size, location, migration)

„

load balancing rules (e.g.round robin DRR, weighted round robin

g

( g

,

g

WRR)

„

thresholds for triggers

„

network implications

(32)

References

Related documents

A technique called TF-IDF (term frequency-inverse document frequency) is used to extract features from the data set. A Weka input file is created based on the

Cilj ovog istraživanja je ustanoviti kako primjena živog ektomikoriznog micelija na korijen vinove loze utječe na prinos i kakvoću grožđa sorte ´Cabernet

Instead of looking at an image and starting to randomly edit, think about the editing process in two parts. You need to adjust COLOR and you need to adjust BRIGHTNESS and POP..

security. ADMARC, the agricultural parastatal, was established in 1971 to help smallholder farmers gain access to agricultural inputs and to provide them with

Effects of methyl jasmonate (MeJA) treatments on the expression of 3-hydroxy-3-methylglutaryl-CoA reductase ( HMG ) and sterol-3- β -glucosyl transferase ( STRL ) genes and

Furthermore, the Zululand Chamber of Commerce and Industry has assisted in arranging support and maximising impact through the various youth entrepreneurship

The purpose of this study was to investigate whether hemodynamic congestion measured by NT-proBNP level and ePCWP at hospital discharge could predict short term clinical outcomes

Different contribution profiles: Under equal conditions in host and home country the contribution profile can be flat over the life cycle, say a given share of average wage or