라이브 마이그레이션 코스트 측정 관련 논문 리뷰

3 minute read

※ 개인적으로 정리하고 싶은 부분 위주로 작성하였습니다.

문제정의 및 요약

1) 실시간 마이그레이션에 에너지 오버헤드가 수반되며, 오버헤드의 크기는 가상 시스템의 RAM 크기 및 사용 가능한 네트워크 대역폭에 따라 다르다. 하지만 대부분 마이그레이션 모델들은 에너지 비용을 고려하지 않는다는 것 → 따라서 해당 논문에서는 실시간 마이그레이션 energy cost를 정량적으로 추정하기 위한 수학적 모델을 제안한다. 2) 마이그레이션 시간과 전력 소비량을 KVM을 이용하여 실험하고, 해당 데이터를 바탕으로 90% 정확도로 가상 머신의 실시간 마이그레이션에 대한 energy overhead를 예측하는 energy cost 모델 도출

가상머신 live migration

▶ 기본적인 live migration 알고리즘 수행 단계는 3단계로 이루어지며, 해당 단계를 통해 페이지 단위로 메모리가 전송이 된다.

1단계(pre-copy 단계): 메모리가 페이지 단위로 반복적으로 복사되는 동안 VM은 계속 실행하게 되는데 이는 알고리즘이 반복적으로 수행된다는 것을 의미. 각 라운드마다 시간이 오래걸릴 수 있기 때문에 일부 메모리 전송 페이지가 변경될 수 있고 동기화되지 않기 때문에 다시 전송할 가능성이 존재.

2단계(pre-copy termination 단계) : 중지조건이 없으면 무한정으로 수행하기 때문에 중지 조건을 걸어줘야 함.

[중지조건]

  1. 반복 횟수를 사전에 정의된 임계값을 초과

  2. 전송된 총 메모리 양이 사전에 정의된 임계값을 초과

  3. 변경된 페이지 수가 사전에 정의된 임계값보다 낮을 경우

3단계(stop-and-copy 단계) : 하이퍼바이저는 추가적으로 페이지가 쓰이는 것을 방지하기 위해 VM을 중지하고 나머지 변경된 페이지 및 가상 CPU 상태를 대상 host에 복사. 알고리즘 프로세스가 완료되면 대상 host의 하이퍼바이저가 VM을 재개

해당 논문 실험

중심적으로 다루는 내용

  1. 마이그레이션에 사용할 수 있는 가상 머신 및 네트워크 대역폭의 TRAM 크기가 마이그레이션 중 에너지 소비에 어떤 영향을 미치는지

  2. 네트워크 대역폭 및 RAM 크기와 관련하여 마이그레이션의 에너지 비용을 추정하는 공식 모델이 어떠한지

전력소비량 분석

동일하게 구성된 서버 2대로 실험을 진행(클러스터 머신, NAS)

  • 분석 : 두 서버의 전력 소비량 확률 분포함수(CDF) 사용 - 마이그레이션 중

CDF 접근법에서는 전력 소비량을 랜덤 변수 p로 간주(어떠한 방식으로 동작하는지 설명할 수 없기 때문)

CDF 정의식

p : 실수

→ 분포 함수는 랜덤 변수 p(서버의 전력 소비량)가 특정 실수 p보다 크거나 같은 값을 가질 확률을 나타냄

→ 누적 함수이므로 $F_p(p)$가 단조롭게 증가, 임의의 $p_2 > p_1$에 대해 $F_p(p_2)→F_p(p_1)$ 식이 유지

→ 윗 글의 경우 $F_p(0) = 0, F_p(100) = 1$

각 서버의 전력 소비량에 대한 CDF 결과

→ 마이그레이션 중에 두 서버의 전력 소비량은 유휴 전력 및 가변 활성 전력 두 가지가 번갈아 발생

→ $P_a$의 값은 가용(활용된) 네트워크 대역폭이 증가함에 따라 증가하는 반면 VM 크기는 마이그레이션 중 전력 소비에 영향을 주지 않음

→ 두 서버가 두 전원 상태 중 하나에서 보내는 시간은 네트워크 대역폭과 VM 크기에 따라 다름

→ 위쪽 다이어그램은 서버가 20MBps에서 100MBps 사이의 네트워크 대역폭을 사용할 때 1000MB 가상 시스템을 마이그레이션하기 위한 전원 분배 기능을 나타냄

→ 아래 다이어그램은 사용 가능한 네트워크 대역폭이 100MBps인 800MB에서 1700MB 사이의 가상 시스템을 마이그레이션하기 위한 전원 분배 기능을 나타냄

→ 가상 시스템 크기에 상관없이 두 서버 모두 다른 상태이며, 소비 및 활성 상태이기 때문에 사용 가능한 네트워크 대역폭이 증가함에 따라 전력 범위 또한 증가하며 소비하는 것을 알 수 있음

Ex) Source Host에는 40MBps 네트워크 대역폭을 사용하여 31W에서 38W 사이여야 하는 반면, 100MBps 대역폭은 41W에서 46W 사이의 활성 전력 소비가 발생. 또한 800MB에서 1700MB 사이의 가상 시스템을 마이그레이션하는 동안 비활성 전력에는 큰 차이가 없음

▶ VM의 실시간 마이그레이션 중 Source 및 Destination 호스트의 활성 전력 소비량

cost3

→ 전력 범위와 두 서버가 활성 상태에서 소비하는 평균 전력은 네트워크 대역폭과 관련하여 선형 기능을 소모

Migration Time

VM 크기가 800MB에서 1700MB 사이이고 사용 가능한 서버 네트워크 대역폭이 20MBps에서 100MBps 사이일 때 마이그레이션 시간을 측정

▶ RAM 크기 및 네트워크 대역폭 구성이 서로 다른 Athena의 마이그레이션 시간의 산술 평균을 요약하고, 다음 두가지를 관찰

1) 사용 가능한 네트워크 대역폭이 증가함에 따라 유휴 VM의 마이그레이션 시간이 비선형적으로 감소

2) 유휴 VM의 마이그레이션 시간은 VM 크기 증가에 따라 선형적으로 증가

관찰 결과

1) 네트워크 대역폭이 두 배로 증가할 경우 마이그레이션 시간이 50% 감소

ex. 20MBps, VM size 1000MB → 평균 migration time : 41초 / 40MBps → 평균 migration time : 21초

2) VM size가 두 배로 증가하면 migration time은 183% 증가

ex. VM size 80MB → migration time : 18초 / VM size 1600MB → migration time : 33초

결론

다른 논문에서 제안한 idle VMs의 migration time에 위 두가지 접근을 적용하여 측정

$t = A + B * S / b$

A : 일정시간 마이그레이션 전/후 오버헤드

b : bandwidth

B : 프로토콜 오버헤드(마이그레이션 볼륨 상수 계수만큼 증가)

→ 해당 식에서 두가지 관찰을 적용하여 처음에는 비선형 회귀 분석을 사용하여 최적의 마이그레이션 시간τ에 맞는 A 및 B 값을 확인하고 삽입

Energy Overhead

cost4

$T_s$ ​: 시작시간​

$T_e$ ​: 종료시간​

$P_s​(t),P_d​(t)$ : 시간 t와 관련한 source 및 대상호스트의 전력소비​

$P_i$ : 활성전력에서 빼야하는 호스트(약25W) 및 source의 유휴 전력소비량​

▶ 해당 식을 통해 실험한 결과

1) 유휴 가상 시스템의 실시간 마이그레이션에 따른 에너지 오버헤드는 대역폭 증가에 따라 사소한 방식으로 감소하고 VM 크기가 증가함에 따라 크게 증가

2) 에너지 측면에서 가능한 높은 네트워크 대역폭을 사용하여 수행하고, 여러 마이그레이션 후보가 있을 경우 RAM과 관련된 가장 작은 VM을 선택하는 것이 에너지 효율에 가장 좋은 옵션인 것으로 나타남

Energy Model

선형관계를 가정

cost5

s : VM size

b : network bandwidth

Leave a comment