An Optimization Problem in Adaptive Virtual ... - Semantic Scholar

10 downloads 226 Views 446KB Size Report
Resource monitoring and inference. – Application independent ... Resource multiplexing using. OS level mechanism ... by a single image. •VMware GSX Server ...
An Optimization Problem in Adaptive Virtual Environments Ananth I. Sundararaj Manan Sanghi Jack R. Lange Peter A. Dinda Prescience Lab Department of Computer Science Northwestern University

http://virtuoso.cs.northwestern.edu

Summary • Virtual execution environments provide opportunities for dynamic adaptation • Important components are – Resource monitoring and inference – Application independent adaptation mechanisms – Efficient adaptation algorithms

• Previously proposed simple heuristics – Significant scope for improvement

• In this work – Formalize the adaptation problem – Show that it is NP-hard – Propose future research directions

2

Outline • Virtual execution environments – An example • Virtuoso system – Introduction • Virtual networks – Measurement and inference (VTTIF) – Adaptation mechanisms (VNET)

• • • • •

Problem formalization A special case of the adaptation problem Analysis Status Summary 3

Virtual Machine Grid Computing 1

arbitrary amounts of AimDeliver computational power to perform distributed and parallel computations

Traditional Paradigm

New Paradigm

2

Grid Computing

Resource multiplexing using OS level mechanism

3b

5

Grid Computing using virtual machines

4

3a

Problem1:

6a

Complexity from resource Solution user’s perspective

Problem2:

Complexity from resource owner’s perspective

6b

Virtual Machines What are they?

How to leverage them?

4

Virtual Machines Virtual machine monitors (VMMs)

•Raw machine is the abstraction •VM represented by a single image •VMware GSX Server

5

The Simplified Virtuoso Model User’s LAN

Virtual networking ties the machine back to user’s home network

Orders a raw machine

VM

Specific hardware and performance Basic software installation available

Virtuoso continuously monitors and adapts User

6

Outline • Virtual execution environments – An example • Virtuoso system – Introduction • Virtual networks – Measurement and inference – Adaptation mechanisms

• • • • •

Problem formalization A special case of the adaptation problem Analysis Status Summary 7

Virtual Networks

VM traffic going out on foreign LAN

Foreign hostile LAN

User’s friendly LAN

X

IP network

Host

Proxy

Virtual Machine

A machine is suddenly plugged into a foreign network. What happens? • Does it get an IP address? • Is it a routeable address? • Does firewall let its traffic through? To any port?

VNET: A bridge with long wires

8

Measurement and Inference Underlying network

Host and VM

• Size and compute capacities

• Topology

• Bandwidth • Latency

[Gupta et al. In submission]

• Size and compute demands

Application (VTTIF) • Topology

• Traffic load

[Gupta et al. LNCS 05]

Application layer VM layer

Virtual network layer VNET daemons

Underlying network layer 9 Physical hosts

Adaptation Mechanisms VM Migration

• Third party migration schemes

Topology changes

• Overlay links

• Overlay forwarding rules

Resource reservation

[Sundararaj et al. LCR 04, HPDC 05]

• Network [Lange et al. HPDC 05] • CPU

X

[Lin et al. GRID 2004]

VM Migration

VM layer

X X

Topology changes

VNET daemons

Resource reservation10 Physical hosts

Outline • Virtual execution environments – An example • Virtuoso system – Introduction • Virtual networks – Measurement and inference (VTTIF) – Adaptation mechanisms (VNET)

• • • • •

Problem formalization A special case of the adaptation problem Analysis Status Summary 11

Generic Adaptation Problem In Virtual Execution Environments (GAPVEE) compute2 size2 Input: H2 1. lat12 bw24 bw12

compute1 size1

lat24 bw14

H1

lat14

H4

size4

bw13

lat34 lat13

bw34

H3 compute3

2. VM1 VM2 VM3

compute4

vm_compute1 vm_size1 vm_compute2 vm_size2 vm_compute3 vm_size3

size3

3.

si

di

bi

li

A1

VM1

VM2

b1

l1

A2 A3 A4

VM1

VM3

b2

l2

VM2

VM3

b3

l3

VM3

VM1

b4

l4 12

A set of ordered 4-tuples, “A”

Generic Adaptation Problem In Virtual Execution Environments Output: compute4 size4 Host constraints H2

H4

H1

ma pp ed

A mapping from VMs to Hosts

• Size and compute demands of VMs must be met within host constraints

m ap pe d

d pe ap m

vm_compute1 VM1 vm_size 1

H3

vm_compute2 VM1 vm_size 2

vm_compute3 VM1 vm_size 3

VM demands

13

Generic Adaptation Problem In Virtual Execution Environments Output: compute4 size4 Host constraints H2

H4

H1

VM1

bw13 lat13

A mapping from 4-tuples to Paths

H3 si

di

bi

li

A1

VM1

VM2

b1

l1

A2 A3 A4

VM1

VM3

b2

l2

VM2

VM3

b3

l3

VM3

VM1

b4

l4

A set of ordered 4-tuples, “A”

VM2

VM3

• Bandwidth and latency demands of 4tuples must be met within constraints

Hence

b1 + b2 = lat13

14

Generic Adaptation Problem In Virtual Execution Environments Output: compute4 size4 Host constraints H2

H4

H1

VM1

bw13 lat13 H3 si

di

bi

li

A1

VM1

VM2

b1

l1

A2 A3 A4

VM1

VM3

b2

l2

VM2

VM3

b3

l3

VM3

VM1

b4

l4

A set of ordered 4-tuples, “A”

VM2

H1 VM3

bw13 H3

A1 (b1) A2 (b2)

bw13 – (b1+b2) is the residual capacity of the edge Bottleneck bandwidth: min residual 15 capacity along a path

Generic Adaptation Problem In Virtual Execution Environments • Goal: – VMs to Hosts mapping – Path to each 4-tuple – Meeting all demands within constraints – Such that • Sum of residual bottleneck bandwidth over each mapped path is maximized 16

Optimizing Objective functions • Many possibilities • Maximizing sum of residual bottleneck bandwidths over each mapped path – Intuition: • Leave the most room for application to increase performance

• Minimizing the residual bottleneck capacity – Intuition: • Increase room for other applications to enter system

17

Outline • Virtual execution environments – An example • Virtuoso system – Introduction • Virtual networks – Measurement and inference (VTTIF) – Adaptation mechanisms (VNET)

• • • • •

Problem formalization A special case of the adaptation problem Analysis Status Summary 18

Special Case of GAPVEE: Routing Problem In Virtual Execution Environments (RPVEE) Input: H2 1. bw24 bw12

bw14

H1

H4

bw13 bw34

H3

2.

si

di

bi

A1

H1

H3

b1

A2 A3 A4

H1

H3

b2

H2

H3

b3

H3

H4

b4

A set of ordered 3-tuples, “A”

19

Special Case of GAPVEE: Routing Problem In Virtual Execution Environments (RPVEE) Output: H2

H4

H1 bw13

H3 si

di

bi

A1

H1

H3

b1

A2 A3 A4

H1

H3

b2

H2

H3

b3

H3

H4

b4

A set of ordered 3-tuples, “A”

A mapping from 3-tuples to Paths • Bandwidth demands of 3-tuples must be met within constraints

•Sum of residual bottleneck bandwidth is maximized over each 20 path

Analysis • Theorem 1: RPVEE is NP-hard • Edge Disjoint Path Problem (EDPP) – Arbitrary instance of EDPP – Convert to an instance of RPVEED – A “Yes” solution for RPVEED implies a “Yes” solution for EDPP – A “No” solution for RPVEED implies a “No” solution for EDPP 21

Edge Disjoint Path Problem (EDPP) • A well known NP-complete problem • Input – A graph G = (H,E) – A set of ordered 2-tuples S = {(si,di), where si, di in H}

• Output – “Yes” if for all (si,di) in S, there exist edge disjoint paths from si to di in G = (H,E) – “No” otherwise 22

Decision version of RPVEE (RPVEED) • Input – A graph G = (H,E) – A function bw: E -> R – A set of ordered 3-tuples S = {(si,di,bi), where si, di in H, bi in R, i = 1,…k}

• Output – “Yes” if for all (si,di,bi) in S, there exist paths from si to di in G = (H,E), such that sum of bottleneck bandwidth = k*ε – “No” otherwise 23

Given an arbitrary instance of EDPP si

H2

H4

H1

di

H1

H2

H1

H4

H2

H4

H1

H3

A set of ordered 2-tuples A directed graph G = (H,E)

H3

Converted to a particular instance of RPVEED 1

si

H2

1 1+ ε

1+ε 1 1+ ε

H1 1+ ε

1

1

1+ ε

1

H4

di

bi

H1

H2

1

H1

H4

1

H2

H4

1

H1

H3

1

A set of ordered 3-tuples A complete directed graph G = (H,E)

H3

24

1

A function bw : E -> R

Outline • Virtual execution environments – An example • Virtuoso system – Introduction • Virtual networks – Measurement and inference (VTTIF) – Adaptation mechanisms (VNET)

• • • • •

Problem formalization A special case of the adaptation problem Analysis Status Summary 25

Status • Previously developed a variety of heuristics (Greedy and Simulated annealing) • Effective in improving performance – Significant scope for improvement

• Formalization and analysis, first steps • Generic incarnation hard, focus on special cases • Currently researching the well studied variants of our problem (such as un-splittable flows) 26

Summary • Virtual execution environments provide opportunities for dynamic adaptation • Important components are – Resource monitoring and inference – Application independent adaptation mechanisms – Efficient adaptation algorithms

• Previously proposed simple heuristics – Significant scope for improvement

• In this work – Formalize the adaptation problem – Show that it is NP-hard – Propose future research directions

27

• For More Information – Prescience Lab (Northwestern University) • http://plab.cs.northwestern.edu

– Virtuoso: Resource Management and Prediction for Distributed Computing using Virtual Machines • http://virtuoso.cs.northwestern.edu

• VNET is publicly available from • http://virtuoso.cs.northwestern.edu

28