가상화 기반 클라우드 환경에서 맵리듀스 성능 향상을 위한 가상화 오버헤드 인식 데이터 전송 및 가상머신 배치
Virtualization Overhead-aware Data Transfer and Virtual Machine Placement for Improving MapReduce Performance in a Virtualized Cloud Environment
- 주제(키워드) 도움말 가상화 , 클라우드 , 오버헤드 , 맵리듀스 , 블록 장치 재구성 , 가상머신 배치
- 발행기관 서강대학교 일반대학원
- 지도교수 박성용
- 발행년도 2016
- 학위수여년월 2016. 2
- 학위명 박사
- 학과 및 전공 일반대학원 컴퓨터공학과
- 실제URI http://www.dcollection.net/handler/sogang/000000059012
- 본문언어 한국어
- 저작권 서강대학교 논문은 저작권보호를 받습니다.
초록/요약
클라우드 컴퓨팅과 가상화 기술들이 발전하면서, 클라우드 상에서 가상머신들을 이용하여 가상 클러스터를 구성하는 것이 클러스터 기반 서비스들을 제공하는데 매우 효과적인 수단이 되고 있다. 그러나 클라우드 환경에서는 대체로 물리적 서버들이 제공하는 자원들을 공유하기 때문에 가상머신 사이의 간섭에 의해 이러한 가상 클러스터에서 운영하는 응용들의 성능에 영향을 미치게 된다. 특히, 맵리듀스와 같은 클러스터 기반의 서비스들은 다수의 노드로 구성되어 운영되고 노드 간 데이터 전송이 빈번하게 발생하기 때문에 가상화 오버헤드로 인한 영향을 많이 받아서 성능 저하가 크게 발생하는 문제를 갖고 있다. 본 논문은 가상화 기반 클라우드 환경에서 가상 클러스터의 맵리듀스 성능 향상을 위한 새로운 두 가지 기법들을 제안한다. 첫째로 블록 장치 재구성 기법을 활용하는 동적 블록 장치 재구성 알고리즘을 제안한다. 블록 장치 재구성 기법은 특정 가상머신에 부착된 가상 블록 장치를 동적으로 다른 가상머신에 탈착하고 재부착하는 것으로서 가상 클러스터의 맵리듀스 응용이 가상머신 사이의 데이터 전송을 네트워크 전송 없이 쉽게 이룰 수 있도록 한다. 본 논문에서 제안하는 동적 블록 장치 재구성 알고리즘은 CPU 이용률과 데이터 크기를 기반으로 다중 회귀분석을 이용하여 네트워크와 블록 장치 재구성 기법을 통한 데이터 전송 시간을 추정하고, 맵퍼 가상머신과 리듀서 가상머신 사이의 최소 비용 데이터 전송 경로를 동적으로 결정한다. 두 번째는 가상화 기반 클라우드 환경에서 네트워크 대역폭을 보장하기 위해 필요한 가상화 오버헤드를 고려하는 가상머신 배치 알고리즘을 제안한다. 기존의 연구들이 대게 가상머신 사이의 통신을 위해 드라이버 도메인에서 발생하는 가상화 오버헤드를 간과하였기 때문에, 드라이버 도메인이 가상머신의 네트워크 I/O를 처리하기 위한 가상화 오버헤드를 감당할 수 있는 만큼의 CPU 자원을 충분히 갖지 못하여 맵리듀스 응용이 실행되는 가상 클러스터에 할당된 네트워크 대역폭을 제대로 보장해주지 못하는 문제가 발생하였다. 그 결과, 가상 클러스터의 맵리듀스 성능에 불가측성이 발생하게 된다. 따라서 가상 클러스터의 가상머신들에 안정적인 네트워크 성능을 보장해줄 수 있는 물리적 서버들에 가상 클러스터를 배치하기 위해, 본 연구에서 제안하는 알고리즘은 가상머신에 할당된 네트워크 대역폭을 보장해줄 수 있도록 충분한 CPU 자원을 갖는 물리적 서버를 선택한다. 이 알고리즘은 가상화 오버헤드를 감당하기 위해 필요한 CPU 이용률을 추정하기 위해 가상머신들의 네트워크 대역폭 사용을 기반으로 표준 선형 회귀분석을 사용하였다.
more초록/요약
With the advances of cloud computing and virtualization technologies, building a virtual cluster using VMs(virtual machines) over cloud has become an attractive alternative for providing cluster-based services. However, since these virtual clusters often share the resources provided by PMs(physical machines), it is more likely that the interferences between VMs affect the performance of applications running on top of the virtual clusters such as MapReduce applications. This thesis aims to propose two novel schemes to improve the MapReduce performance over virtual clusters in a virtualized cloud environment. In the first approach, a dynamic block device reconfiguration algorithm is proposed. The proposed algorithm utilizes a block device reconfiguration scheme, where a virtual block device attached to a VM can be dynamically detached and reattached to other VMs at runtime. This scheme allows MapReduce applications to move data easily across different VMs without any network transfers between VMs. The dynamic block device reconfiguration algorithm estimates total time for transferring data both via network and block device reconfiguration scheme using multiple regression analysis based on CPU utilization and data size, and adaptively determines a least-cost data transfer path between a mapper VM and a reducer VM. In the second approach, a VM placement algorithm, which considers the virtualization overhead incurred to guarantee network bandwidth in a virtualized cloud environment, is proposed. Since previous research efforts usually ignore the virtualization overhead incurred in a driver domain to process the communications between VMs, the network bandwidth allocated to a virtual cluster running MapReduce applications cannot be fully utilized when a driver domain has not enough CPU resources to cover the virtualization overhead for VM networking functions. This results in unpredictable MapReduce performance running on the virtual cluster. Therefore, in order to deploy a virtual cluster on PMs that can provide stable network performance to VMs of the virtual cluster, the proposed algorithm finds an appropriate PM whose driver domain has enough CPU resource to guarantee network bandwidth allocated to the VM. The algorithm estimates the CPU utilization required to cover virtualization overhead using standard linear regression based on the use of network bandwidth by VMs.
more