COMMA: Coordinating the Migration of Multi-tier applications
description
Transcript of COMMA: Coordinating the Migration of Multi-tier applications
COMMA: Coordinating the Migration of Multi-tier applications
1
Jie Zheng* T.S Eugene Ng* Kunwadee Sripanidkulchai† Zhaolei Liu*
*Rice University, USA †NECTEC, Thailand
Presenter: Zhaolei (Fred) Liu
2
Live migration in cloud
• For cloud providers• Hardware maintenance• Resource relocation
• For users• Provision services• Price and performance
3
Multi-tier application in cloud
• In cloud, a multi-tier application runs on multiple VMs
• The VMs hosting a multi-tier application need to communicate with each other
Presentation tier
Logic tier
Data tier
4
How to migrate a group of VMs?
•Sequential migration: migrate VMs one by one
5
How to migrate a group of VMs?
•Parallel migration: migrate all VMs at the same time
6
Problem with sequential migration•Application performance degradation caused by
component split during migration
7
Problem with parallel migration
•VMs still may not finish migration at the same time • Static factors: VM disk size, memory size, etc. • Dynamic factors: network bandwidth, application workload, etc.
8
COMMA: Coordinating the Migration ofMulti-tier Applications
• Formulation & objective• System design• Algorithms• Implementation & evaluation
Sequential
Parallel
COMMA
0 200 400 600 800 1000 1200 1400
Component Split time(s)
1s
9
Formulation & Objective
•Minimizing the migration’s impact on application performance• Define impact as the time when VMs are split
• Define impact as the volume of traffic impacted by migration• TM: traffic matrix• ti: the migration finish time of the i th VM
Minimize
Not ideal!
10
COMMA: Periodic adaptation and coordination
Hypervisor
Hypervisor
Hypervisor
ControllerController Messages:• Start migration• Set migration speed
Hypervisor Messages:• Migration progress• Available bandwidth• Disk dirty rate and memory dirty rate (Pacer*)
* J. Zheng, T. S. E. Ng, K. Sripanidkulchai, and Z. Liu. Pacer: A progress management system for live virtual machine mi-gration in cloud computing. IEEE Transactions on Network and Service Management, 10(4):369–382, Dec 2013.
11
Coordination in the first stage of pre-copy• Coordinate pre-copy of all VMs to finish at the same time
vm1
vm2 vm3
vm4
80 30
2050
Communication Graph (KBps)
VM2 Pre-copyVM3 Pre-copy
VM4 Pre-copy
VM1 Pre-copy
Time
Stage 1 Stage 2
Migration Start
Migration End
• Meet the bandwidth limit by dividing VMs into different groups
Inter-group scheduling in the second stage of dirty iteration and memory migration
12
VM3VM4
VM1VM2
vm1
vm2
vm320MBps
5MBps
10MBps
vm4 20MBps 30MBps
vm1
vm2 vm3
vm4
80 30
2050
Communication Graph (KBps)
VM2 Pre-copyVM3 Pre-copy
VM4 Pre-copy
VM1 Pre-copy
Time
Stage 1 Stage 2
Migration Start
Migration End
Maximal dirty rate Available bandwidth
13
• Maximize bandwidth utilization and minimize performance degradation by scheduling dirty iteration inside each group in the second stage
VM3
VM2
VM3
VM2
VM1 VM1
VM3
VM2VM1
Band
wid
th
No Performance Degradation;Long Migration Time
Band
wid
th
No Performance Degradation;Short Migration Time
Performance Degradation;Short Migration Time
Band
wid
th
Time TimeTime
Start at the same time; Finish at different time
Start at the same time; Finish at the same time
Start at different time; Finish at the same time
Intra-group scheduling
14
Implementation & Evaluation:
• Fully implemented COMMA on KVM platform, QEMU version 0.12.50
• Used SpecWeb and RUBiS as the application
• Fully Evaluated COMMA on various scenarios
15
COMMA is able to reduce application performance degradation
Time(s)
Aver
age
resp
onse
late
ncy
(ms)
Migrating 3-VM RUBiS using COMMA
16
Migrating 3-VM RUBiS using sequential migration
Compared to COMMA, sequential migration incurs high application performance degradation
Time(s)
Aver
age
resp
onse
late
ncy
(ms)
17
COMMA is able to minimize migration impact
Sequential
Parallel
COMMA
0 500 1000 1500 2000 2500
Migration Impact (MB)
3.6 MB
More results: vary the VM number, placement, workload, and migration to EC2
18
Summary & Advantages
• COMMA is able to minimize application performance degradation during migration
• COMMA has tiny overhead • Efficient heuristic algorithms• Computation time less than 10 ms
• COMMA is application independent• Run-time adaptation• All measurements are on hypervisor level
• COMMA has great applicability• Designed for pre-copy model (KVM, XEN)• Easily adapt to other migration models