KR20120126549A - 가상 머신 마이그레이션 처리 장치 및 방법 - Google Patents

가상 머신 마이그레이션 처리 장치 및 방법 Download PDF

Info

Publication number
KR20120126549A
KR20120126549A KR1020110044428A KR20110044428A KR20120126549A KR 20120126549 A KR20120126549 A KR 20120126549A KR 1020110044428 A KR1020110044428 A KR 1020110044428A KR 20110044428 A KR20110044428 A KR 20110044428A KR 20120126549 A KR20120126549 A KR 20120126549A
Authority
KR
South Korea
Prior art keywords
virtual machine
migration
source
file
target
Prior art date
Application number
KR1020110044428A
Other languages
English (en)
Other versions
KR101264895B1 (ko
Inventor
엄영익
신은환
김태형
김정한
김정훈
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020110044428A priority Critical patent/KR101264895B1/ko
Publication of KR20120126549A publication Critical patent/KR20120126549A/ko
Application granted granted Critical
Publication of KR101264895B1 publication Critical patent/KR101264895B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 시, 복수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택하고, 소스 가상 머신의 이미지 파일과 다른 노드들의 가상 머신의 이미지 파일을 각각 비교하여 일치도를 산출하고, 일치도가 가장 높은 가상 머신을 타겟 가상 머신으로 선택하고, 타겟 가상 머신이 구현된 타겟 노드 상에 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어하되, 타겟 노드의 호스트가 타겟 가상 머신으로부터 복사된 파일 블록과 소스 가상 머신으로부터 수신된 파일 블록으로 구성되는 마이그레이션 가상 머신을 구현하도록 제어한다. 이때, 복사된 파일 블록은 타겟 가상 머신의 파일 블록 중 소스 가상 머신의 파일 블록과 중복된 중복 파일 블록이고, 수신된 파일 블록은 소스 가상 머신의 파일 블록 중 상기 중복 파일 블록을 제외한 나머지 파일 블록이다.

Description

가상 머신 마이그레이션 처리 장치 및 방법{VIRTUAL MACHINE MIGRATION PROCESSING APPARATUS AND METHOD THEREOF}
본 발명은 가상 머신(VM, Virtual Machine)에 대한 마이그레이션(migration) 처리를 수행하는 장치 및 방법에 관한 것이다.
가상화는 하나의 물리적 시스템을 논리적으로 분할해 자원 공유의 효율성을 극대화하는 기술이다. 이러한, 가상화를 위해서는 컴퓨터 시스템의 추상화가 필수적이며, 추상화 과정에서 자원 처리의 복잡도가 증가되어 하드웨어 장치의 로드(load) 발생을 야기하는 문제점이 있었다.
이러한 문제점을 해결하기 위하여, 가상화 시스템 상에서 로드 발생의 원인이 되는 가상 머신에 대한 마이그레이션(migration) 처리를 수행할 수 있다. 가상 머신 마이그레이션은 로드를 발생시키는 가상 머신을 자원적 여유가 있는 시스템으로 이동시키는 기술이며, 기존의 가상 머신 마이그레이션 기법들은 메모리상의 실행 컨텍스트의 이동 시 사용되는 자원 비용을 최소화하기 위한 방법에 초점을 맞추고 있다.
그런데, 네트워크를 통한 스토리지의 공유가 어려운 광대역네트워크(WAN, Wide Area Network) 환경에서는 실행 컨텍스트 뿐만 아니라 가상 머신 이미지 자체의 이동이 불가피하여, 전체 이미지 파일을 전송함에 따른 네트워크 자원 비용 낭비 및 데이터 전송 지연이 발생될 수 있다는 문제점이 있었다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 광대역네트워크 상에서 네트워크 자원 사용의 효율성을 높이고 데이터 전송 지연을 최소화 할 수 있는 가상 머신 마이그레이션 처리 장치 및 방법을 제공하고자 한다.
상기와 같은 기술적 과제를 달성하기 위한 본 발명의 일 측면에 따른 가상 머신 마이그레이션 처리 장치는, 복수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택하는 마이그레이션 대상 선택부; 상기 소스 가상 머신과 다른 노드들의 가상 머신의 이미지 파일을 각각 비교하여 상기 소스 가상 머신과의 일치도가 가장 높은 타켓 가상 머신을 추출하는 일치도 평가부; 및 상기 타겟 가상 머신이 구현된 타겟 노드 상에 상기 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어하는 마이그레이션 처리부를 포함하되, 상기 마이그레이션 처리부는, 상기 소스 가상 머신의 파일 블록 중 상기 타겟 가상 머신과 중복되는 중복 파일 블록을 제외한 나머지 파일 블록이 상기 타겟 노드로 전송되도록 제어하고, 상기 마이그레이션 가상 머신에 상기 타겟 가상 머신의 상기 중복 파일 블록이 복사되도록 제어한다.
그리고, 본 발명의 다른 측면에 따른 가상 머신 마이그레이션 처리 방법은, 복수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택하는 단계; 상기 소스 가상 머신의 이미지 파일과 다른 노드들의 가상 머신의 이미지 파일을 각각 비교하여 일치도를 산출하는 단계; 상기 일치도가 가장 높은 가상 머신을 타겟 가상 머신으로 선택하는 단계; 및 상기 타겟 가상 머신이 구현된 타겟 노드 상에 상기 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어하는 단계를 포함하되, 상기 타겟 노드의 호스트가 상기 타겟 가상 머신으로부터 복사된 파일 블록과 상기 소스 가상 머신으로부터 수신된 파일 블록으로 구성되는 상기 마이그레이션 가상 머신을 구현하도록 제어하며, 상기 복사된 파일 블록은 상기 타겟 가상 머신의 파일 블록 중 상기 소스 가상 머신의 파일 블록과 중복된 중복 파일 블록이고, 상기 수신된 파일 블록은 상기 소스 가상 머신의 파일 블록 중 상기 중복 파일 블록을 제외한 나머지 파일 블록이다.
전술한 본 발명의 과제 해결 수단에 의하면, 소스 가상 머신과 일치도가 가장 높은 타겟 가상 머신이 구현된 물리 장치로 소스 가상 머신의 마이그레이션 처리를 수행함으로써, 소스 가상 머신의 파일 블록 중 최소의 파일 블록이 원거리 전송되도록 할 수 있어 네트워크 자원 사용의 효율을 높이고 데이터 전송 지연을 최소화할 수 있다.
도 1은 본 발명이 적용되는 광대역네트워크(WAN) 상의 가상 머신 마이그레이션 처리 시스템의 구성도이다.
도 2는 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 일실시예에 따른 가상 머신의 파일 블록 일치도 평가 방식을 설명하기 위한 도면이다.
도 4a는 본 발명의 일실시예에 따른 타겟 가상 머신 선택 방식을 설명하기 위한 도면이다.
도 4b는 본 발명의 일실시예에 따른 소스 가상 머신의 파일 블록을 전송하는 방식을 설명하기 위한 도면이다.
도 5는 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 방법을 설명하기 위한 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명이 적용되는 광대역네트워크(WAN) 상의 가상 머신 마이그레이션 처리 시스템의 구성도이다.
도 1에서와 같이, 본 발명의 일실시예에 따른 광대역네트워크(WAN, Wide Area Network) 상의 가상 머신 마이그레이션 처리 시스템은, 광대역네트워크를 통해 연결되는 다수의 노드 및 가상 머신 마이그레이션 처리 장치(100)를 포함한다.
이때, 다수의 노드는 각각 하나의 물리적 장치 상에 다수의 가상 머신(VM, Virtual Machine)이 구현된 물리 서버이다.
그리고, 가상 머신 마이그레이션 처리 장치(100)는 각 노드(즉, 물리 서버) 상에 구현된 가상 머신들 중 마이그레이션(migration) 처리할 대상 가상 머신(이하, ‘소스 가상 머신’이라고 함)을 선택하고, 소스 가상 머신이 구현된 노드(이하, ‘소스 노드’라고 함) 이외의 노드 중 특정 노드(이하, ‘타겟 노드’라고 함)로 소스 가상 머신의 이미지 파일을 마이그레이션 처리한다.
특히, 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 장치(100)는 광대역네트워크 상의 다수의 노드 중 소스 가상 머신과 이미지 파일의 일치도가 가장 높은 가상 머신(이하, ‘타겟 가상 머신’이라고 함)을 추출하고, 타겟 가상 머신이 구현되어 있는 타겟 노드에 소스 가상 머신을 마이그레이션 처리한다.
한편, 도 1 에서는 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 시스템에서 가상 머신 마이그레이션 처리 장치(100)가 광대역네트워크 상에 별개의 장치로서 독립적으로 구성되는 것을 나타내었다. 그런데, 본 발명의 다른 실시예에서는 가상 머신 마이그레이션 처리 장치(100)가 다수의 노드 중 특정 노드 상에 포함되어 구성되는 것도 가능하다.
이하, 도 2 내지 도 4를 참조하여 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 장치에 대해서 상세히 설명하도록 한다.
도 2는 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 장치의 구성을 나타내는 블록도이다.
도 2에 도시한 바와 같이, 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 장치(100)는 자원 사용 현황 정보 수집부(110), 가상 머신 파일 정보 수집부(120), 마이그레이션 대상 선택부(130), 일치도 평가부(140) 및 마이그레이션 처리부(150)를 포함한다.
자원 사용 현황 정보 수집부(110)는 각 노드 별로 구현된 가상 머신의 CPU 자원, 메모리 자원 및 네트워크 자원 중 적어도 하나의 자원에 대한 자원 사용량 정보를 포함하는 자원 사용 현황 정보를 수집한다.
이때, 자원 사용 현황 정보 수집부(110)는 광대역네트워크를 통해 접속되는 다수의 노드들로부터 실시간으로 또는 기설정된 주기마다 자원 사용 현황 정보를 수신하며, 수신된 자원 사용 현황 정보를 각 노드 별로 매칭하여 갱신 저장한다.
그리고, 자원 사용 현황 정보 수집부(110)는 마이그레이션 대상 선택부(130)로 자원 사용 현황 정보를 제공한다.
가상 머신 파일 정보 수집부(120)는 각 노드의 가상 머신 별로 실행 컨텍스트 정보 및 파일 블록의 구조 정보를 포함하는 이미지 파일 정보를 수집한다. 참고로, 파일 블록은 각 가상 머신의 이미지 파일을 기설정된 크기 단위로 나눈 데이터 블록을 의미하며, 페이지(page)라고 지칭할 수 있다.
이때, 가상 머신 파일 정보 수집부(120)는 각 가상 머신의 이미지 파일 정보를 실시간으로 또는 기설정된 주기마다 수신하며, 수신된 이미지 파일 정보를 각 노드 별로 매칭하여 갱신 저장한다.
그리고, 가상 머신 파일 정보 수집부(120)는 수집된 이미지 파일 정보를 마이그레이션 처리부(150)로 제공한다.
마이그레이션 대상 선택부(130)는 각 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택한다.
이때, 마이그레이션 대상 선택부(130)는 자원 사용 현황 정보에 기초하여 가상 머신 별 자원 사용률을 산출하고, 자원 사용률이 기설정된 임계값 이상인 가상 머신을 상기 소스 가상 머신으로서 선택한다.
구체적으로, 마이그레이션 대상 선택부(130)는 각 가상 머신의 CPU 자원, 메모리 자원 및 네트워크 자원 중 적어도 하나의 자원에 대해 각 노드의 호스트가 가상 머신 별로 할당한 자원 할당량을 확인한다. 그리고, 마이그레이션 대상 선택부(130)는 가상 머신이 현재 사용하고 있는 자원 사용량으로 상기 확인된 자원 할당량을 나누어 상기 자원 사용률을 산출할 수 있다.
또한, 본 발명의 일실시예에 따른 마이그레이션 대상 선택부(130)는 자원 사용 현황 정보에 기초하여 노드 별 자원 사용률을 산출하고, 상기 자원 사용률이 기설정된 임계값 이상인 소스 노드에 구현된 가상 머신 중 어느 하나의 가상 머신을 상기 소스 가상 머신으로서 선택하는 것도 가능하다.
구체적으로, 마이그레이션 대상 선택부(130)는 노드 별로 구현된 가상 머신들에 대해 호스트가 할당한 전체 자원 할당량과 가상 머신들의 현재 자원 사용량을 이용하여 노드 별 자원 사용률을 산출할 수 있다.
한편, 본 발명의 일실시예에서는 마이그레이션 대상 선택부(130)가 각 노드의 자원 사용 현황 정보를 이용하여 자원 사용률을 산출하고, 자원 사용률에 기초하여 소스 가상 머신을 선택하는 것을 나타내었다. 그런데, 본 발명의 다른 실시예에서는 마이그레이션 대상 선택부(130)가 다수의 노드 중 특정 노드로부터 특정 가상 머신의 정보를 포함하는 마이그레이션 요청을 수신할 수 있으며, 수신된 특정 가상 머신을 소스 가상 머신으로 선택할 수 있다. 이와 같은 경우, 각 노드들은 자체적으로 가상 머신 별 자원 사용 현황 정보를 관리할 수 있으며, 각 가상 머신 중 자원 사용률이 기설정된 임계값 이상이 되는 가상 머신의 정보를 상기 임계값 이상이 되는 시점에 가상 머신 마이그레이션 처리 장치(100)로 전송할 수 있다.
일치도 평가부(140)는 소스 가상 머신의 이미지 파일과 소스 노드가 아닌 다른 노드들의 가상 머신의 이미지 파일을 비교하여, 소스 가상 머신에 대한 다른 가상 머신들의 파일 일치도를 산출한다. 그리고, 일치도 평가부(140)는 소스 가상 머신에 대한 일치도가 가장 높은 가상 머신(즉, 타켓 가상 머신)을 추출한다.
이때, 일치도 평가부(140)는 소스 가상 머신의 파일 블록의 해시(hash)값과 다른 가상 머신의 파일 블록의 해시값을 비교하여 일치도를 산출한다.
구체적으로, 도 3은 본 발명의 일실시예에 따른 가상 머신의 파일 블록 일치도 평가 방식을 설명하기 위한 도면이다.
도 3에서 도시한 바와 같이, 일치도 평가부(140)는 소스 가상 머신(Source VM)의 이미지 파일의 각 파일 블록과 다른 가상 머신(도 3에서는 타겟 가상 머신을 나타냄)의 이미지 파일의 각 파일 블록을 비교하여 해시값이 동일한 파일 블록의 존재 여부 및 개수를 추출한다.
도 3에서는 소스 가상 머신 및 타겟 가상 머신의 파일 블록이 10개일 경우를 나타내었다. 이때, 도 3에서는 소스 가상 머신의 이미지 파일은 두 개의 ‘digest 0’, 두 개의 ‘digest 1’, 한 개의 ‘digest 2’, 한 개의 ‘digest 3’, 세 개의 ‘digest 4’, 및 한 개의‘digest 5’ 로 구성되고, 타겟 가상 머신의 이미지 파일은 두 개의 ‘digest 1’, 네 개의 ‘digest 2’, 두 개의 ‘digest 3’, 한 개의 ‘digest 4’, 및 한 개의‘digest 5’로 구성되는 것을 나타내었다.
그리고, 도 4a는 본 발명의 일실시예에 따른 타겟 가상 머신 선택 방식을 설명하기 위한 도면이다.
도 4a에서는 가상 머신 A, 가상 머신 B, 및 가상 머신 C가 구현된 노드들을 나타내었다. 그리고, 도 4a에서는 가상 머신 A가 소스 가상 머신인 경우, 가상 머신 A의 이미지 파일에 대한 가상 머신 B의 일치도는 50%이고, 가상 머신 C의 일치도는 10%인 것을 나타내었다.
이때, 일치도 평가부(140)는 가상 머신 B를 타겟 가상 머신으로 선택한다. 이후, 가상 머신 B가 구현된 노드의 호스트는 가상 머신 A에 대한 마이그레이션 가상 머신 구현 시 가상 머신 B로부터 중복 파일 블록을 복사 처리한다. 즉, 동일 노드 상에 구현된 로컬 가상 머신 간에 파일 블록 복사 처리가 수행된다. 이처럼, 로컬 가상 머신 간의 파일 블록 복사 처리에 의해 네트워크 자원 사용 효율 및 데이터 전송 속도가 향상되는 효과가 있다.
마이그레이션 처리부(150)는 타겟 가상 머신이 구현된 타겟 노드 상에 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어한다.
특히, 마이그레이션 처리부(150)는 소스 가상 머신의 파일 블록 중 타겟 가상 머신과 중복되는 중복 파일 블록을 제외한 나머지 파일 블록이 타겟 노드로 전송되도록 제어하고, 마이그레이션 가상 머신에 타겟 가상 머신의 중복 파일 블록이 복사되도록 제어한다.
구체적으로, 마이그레이션 처리부(150)는 소스 노드로 소스 가상 머신의 파일 블록 중 중복 파일 블록을 제외한 나머지 파일 블록을 타겟 노드로 전송하도록 하는 마이그레이션 처리 명령을 전송한다.
또한, 마이그레이션 처리부(150)는 타겟 노드로 소스 가상 머신의 이미지 파일 정보를 포함하는 마이그레이션 처리 명령을 전송한다. 이때, 마이그레이션 처리 명령은 타겟 노드의 호스트가 타겟 가상 머신으로부터 중복 파일 블록을 복사하도록 제어한다. 그리고, 마이그레이션 처리 명령은 타겟 노드의 호스트가 소스 가상 머신으로부터 수신된 상기 나머지 파일 블록과 상기 복사한 중복 파일 블록을 소스 가상 머신의 이미지 파일 정보에 기초하여 마이그레이션 가상 머신의 파일로 구현하도록 제어한다.
도 4b는 본 발명의 일실시예에 따른 소스 가상 머신의 파일 블록을 전송하는 방식을 설명하기 위한 도면이다.
도 4 b에서 도시한 바와 같이, 본 발명의 일실시예에 따른 마이그레이션 처리 방식에 따르면, 소스 가상 머신(Source VM)은 중복 파일 블록을 제외한 나머지 파일 블록을 타겟 노드(Target Node)로 전송한다. 그러면, 타겟 노드(Target Node)는 소스 가상 머신으로부터 수신된 파일 블록을 마이그레이션 가상 머신의 메모리 상에 저장하고, 타겟 가상 머신의 중복 파일 블록을 복사하여 마이그레이션 가상 머신의 메모리 상에 저장한다. 즉, 로컬 가상 머신 간 파일 블록 복사 처리를 수행한다. 이때, 타겟 노드는 소스 가상 머신의 이미지 파일 정보에 따른 파일 블록의 구조로 마이 그레이션 가상 머신을 구현한다.
이하, 도 5를 참조하여 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 방법에 대해서 상세히 설명하도록 한다.
도 5는 본 발명의 일실시예에 따른 가상 머신 마이그레이션 처리 방법을 설명하기 위한 순서도이다.
도 5에서와 같이, 먼저 광대역네트워크 상에 존재하는 다수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택한다(S510).
구체적으로, 노드 별 가상 머신의 자원 사용 현황 정보를 확인하여, 자원 사용률이 기설정된 임계값 이상인 가상 머신을 소스 가상 머신으로서 선택한다. 또한, 자원 사용률이 상기 임계값 이상인 가상 머신이 존재하는 소스 노드를 선택하고, 소스 노드 상의 가상 머신 중 기설정된 마이그레이션 처리 기준에 따른 특정 가상 머신을 소스 가상 머신으로서 선택하는 것도 가능하다. 참고로, 상기 마이그레이션 처리 기준은 노드의 자원 사용 효율을 높일 수 있도록 노드의 자원 사용 품질(Qos), 데이터 처리 속도 등의 기준이 설정될 수 있다.
다음으로, 소스 가상 머신에 대한 다른 가상 머신들의 이미지 파일 블록의 일치도를 평가한다(S520).
이때, 각 가상 머신의 이미지 파일 정보를 확인하여, 소스 가상 머신의 파일 블록과 다른 가상 머신의 파일 블록을 비교한다. 참고로, 기설정된 개수의 파일 블록을 기준으로 소스 가상 머신의 파일 블록과 동일한 다른 가상 머신의 파일 블록의 개수에 기초하여 일치도를 산출할 수 있다. 또한, 소스 가상 머신과 파일 블록을 비교하는 가상 머신은 소스 노드 이외의 노드에 구현된 가상 머신이다.
그런 후, 일치도가 가장 높은 가상 머신을 마이그레이션 처리 시 타겟 가상 머신으로 선택한다(S530).
이때, 소스 가상 머신과 동일한 파일 블록의 개수가 가장 많은(즉, 일치도가 가장 높은) 가상 머신을 타겟 가상 머신으로 선택한다.
그런 후, 타겟 가상 머신이 구현된 타겟 노드 상에 소스 가상 머신에 대한 파일 블록 마이그레이션 처리를 수행한다(S540).
이때, 소스 가상 머신은 전체 파일 블록 중 타겟 가상 머신과 중복되는 중복 파일 블록을 제외한 나머지 파일 블록을 타겟 노드로 전송하고, 타겟 노드는 소스 가상 머신으로부터 수신된 파일 블록과 타겟 가상 머신 상의 중복 파일 블록을 이용하여 마이그레이션 가상 머신을 구현한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 가상 머신 마이그레이션 장치 110: 자원 사용 현황 정보 수집부
120: 가상 머신 파일 정보 수집부 130: 마이그레이션 대상 선택부
140: 일치도 평가부 150: 마이그레이션 처리부

Claims (15)

  1. 가상 머신 마이그레이션(migration) 처리 장치에 있어서,
    복수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택하는 마이그레이션 대상 선택부;
    상기 소스 가상 머신과 다른 노드들의 가상 머신의 이미지 파일을 각각 비교하여 상기 소스 가상 머신과의 일치도가 가장 높은 타켓 가상 머신을 추출하는 일치도 평가부; 및
    상기 타겟 가상 머신이 구현된 타겟 노드 상에 상기 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어하는 마이그레이션 처리부를 포함하되,
    상기 마이그레이션 처리부는,
    상기 소스 가상 머신의 파일 블록 중 상기 타겟 가상 머신과 중복되는 중복 파일 블록을 제외한 나머지 파일 블록이 상기 타겟 노드로 전송되도록 제어하고, 상기 마이그레이션 가상 머신에 상기 타겟 가상 머신의 상기 중복 파일 블록이 복사되도록 제어하는 가상 머신 마이그레이션 처리 장치.
  2. 제 1 항에 있어서,
    상기 가상 머신 별로 실행 컨텍스트 정보 및 파일 블록의 구조 정보를 포함하는 이미지 파일 정보를 수집하는 가상 머신 파일 정보 수집부를 더 포함하는 가상 머신 마이그레이션 처리 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 마이그레이션 처리부는,
    상기 타겟 노드로 상기 소스 가상 머신의 이미지 파일 정보를 포함하는 마이그레이션 처리 명령을 전송하되,
    상기 마이그레이션 처리 명령은,
    상기 타겟 노드의 호스트가 상기 타겟 가상 머신으로부터 복사한 상기 중복 파일 블록과 상기 소스 가상 머신으로부터 수신된 상기 나머지 파일 블록을 상기 소스 가상 머신의 이미지 파일 정보에 기초하여 상기 마이그레이션 가상 머신의 파일로 구현하도록 제어하는 것인 가상 머신 마이그레이션 처리 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 마이그레이션 처리부는,
    상기 소스 가상 머신의 파일 블록 중 상기 중복 파일 블록을 제외한 나머지 파일 블록을 상기 타겟 노드로 전송하도록 하는 마이그레이션 처리 명령을 상기 소스 가상 머신이 구현된 소스 노드로 전송하는 가상 머신 마이그레이션 처리 장치.
  5. 제 1 항에 있어서,
    상기 복수의 노드 별로 구현된 가상 머신의 CPU 자원, 메모리 자원 및 네트워크 자원 중 적어도 하나의 자원에 대한 자원 사용량 정보를 포함하는 자원 사용 현황 정보를 수집하는 자원 사용 현황 정보 수집부를 더 포함하는 가상 머신 마이그레이션 처리 장치.
  6. 제 5 항에 있어서,
    상기 마이그레이션 대상 선택부는,
    상기 자원 사용 현황 정보에 기초하여 상기 가상 머신 별 자원 사용률을 산출하고, 상기 자원 사용률이 기설정된 임계값 이상인 가상 머신을 상기 소스 가상 머신으로서 선택하는 가상 머신 마이그레이션 처리 장치.
  7. 제 5 항에 있어서,
    상기 마이그레이션 대상 선택부는,
    상기 자원 사용 현황 정보에 기초하여 노드 별 자원 사용률을 산출하고, 상기 자원 사용률이 기설정된 임계값 이상인 소스 노드에 구현된 가상 머신 중 어느 하나의 가상 머신을 상기 소스 가상 머신으로서 선택하는 가상 머신 마이그레이션 처리 장치.
  8. 제 1 항에 있어서,
    상기 일치도 평가부는,
    상기 소스 가상 머신의 파일 블록의 해시값과 다른 가상 머신들의 파일 블록의 해시값을 비교하여 상기 일치도를 산출하는 가상 머신 마이그레이션 처리 장치.
  9. 가상 머신 마이그레이션(migration) 처리 방법에 있어서,
    (a) 복수의 노드에 구현된 가상 머신 중 마이그레이션 처리할 소스 가상 머신을 선택하는 단계;
    (b) 상기 소스 가상 머신의 이미지 파일과 다른 노드들의 가상 머신의 이미지 파일을 각각 비교하여 일치도를 산출하는 단계;
    (c) 상기 일치도가 가장 높은 가상 머신을 타겟 가상 머신으로 선택하는 단계; 및
    (d) 상기 타겟 가상 머신이 구현된 타겟 노드 상에 상기 소스 가상 머신과 동일한 이미지 파일 형태의 마이그레이션 가상 머신이 구현되도록 제어하는 단계를 포함하되,
    상기 (d) 단계에서,
    상기 타겟 노드의 호스트가 상기 타겟 가상 머신으로부터 복사된 파일 블록과 상기 소스 가상 머신으로부터 수신된 파일 블록으로 구성되는 상기 마이그레이션 가상 머신을 구현하도록 제어하며,
    상기 복사된 파일 블록은 상기 타겟 가상 머신의 파일 블록 중 상기 소스 가상 머신의 파일 블록과 중복된 중복 파일 블록이고, 상기 수신된 파일 블록은 상기 소스 가상 머신의 파일 블록 중 상기 중복 파일 블록을 제외한 나머지 파일 블록인 가상 머신 마이그레이션 처리 방법.
  10. 제 9 항에 있어서,
    상기 (d) 단계에서,
    상기 소스 가상 머신의 이미지 파일 정보를 포함하고 상기 타겟 노드의 호스트가 상기 복사된 파일과 상기 수신된 파일을 상기 이미지 파일 정보에 따라 상기 마이그레이션 가상 머신으로 구현하도록 제어하는 제 1 마이그레이션 처리 명령을 상기 타겟 노드로 전송하고,
    상기 중복 파일 블록의 정보를 포함하고 상기 소스 가상 머신이 상기 중복 파일 블록의 정보에 기초하여 상기 나머지 파일 블록을 상기 타겟 노드로 전송하도록 제어하는 제 2 마이그레이션 처리 명령을 상기 소스 가상 머신이 구현된 소스 노드로 전송하는 가상 머신 마이그레이션 처리 방법.
  11. 제 10 항에 있어서,
    상기 (b) 단계 이전에,
    상기 가상 머신 별로 실행 컨텍스트 정보 및 파일 블록의 구조 정보를 포함하는 상기 이미지 파일 정보를 수집하는 단계를 더 포함하는 가상 머신 마이그레이션 처리 방법.
  12. 제 9 항에 있어서,
    상기 (a) 단계 이전에,
    상기 복수의 노드 별로 구현된 가상 머신의 CPU 자원, 메모리 자원 및 네트워크 자원 중 적어도 하나의 자원에 대한 자원 사용량 정보를 포함하는 자원 사용 현황 정보를 수집하는 단계; 및
    상기 자원 사용 현황 정보에 기초하여 각 가상 머신 별 자원 사용률을 산출하는 단계를 더 포함하는 가상 머신 마이그레이션 처리 방법.
  13. 제 12 항에 있어서,
    상기 (a) 단계에서,
    상기 자원 사용률이 기설정된 임계값 이상인 가상 머신을 상기 소스 가상 머신으로서 선택하는 가상 머신 마이그레이션 처리 방법.
  14. 제 12 항에 있어서,
    상기 (a) 단계에서,
    상기 자원 사용률이 기설정된 임계값 이상인 가상 머신이 구현된 소스 노드를 선택하고,
    기설정된 마이그레이션 처리 기준에 따라 상기 소스 노드의 가상 머신 중 어느 하나를 상기 소스 가상 머신으로 선택하는 가상 머신 마이그레이션 처리 방법.
  15. 제 9 항에 있어서,
    상기 (b) 단계에서,
    상기 소스 가상 머신의 파일 블록의 해시값과 다른 가상 머신들의 파일 블록의 해시값을 비교하여 상기 일치도를 산출하는 가상 머신 마이그레이션 처리 방법.
KR1020110044428A 2011-05-12 2011-05-12 가상 머신 마이그레이션 처리 장치 및 방법 KR101264895B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110044428A KR101264895B1 (ko) 2011-05-12 2011-05-12 가상 머신 마이그레이션 처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110044428A KR101264895B1 (ko) 2011-05-12 2011-05-12 가상 머신 마이그레이션 처리 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120126549A true KR20120126549A (ko) 2012-11-21
KR101264895B1 KR101264895B1 (ko) 2013-05-15

Family

ID=47511857

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110044428A KR101264895B1 (ko) 2011-05-12 2011-05-12 가상 머신 마이그레이션 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101264895B1 (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160099365A (ko) 2015-02-12 2016-08-22 한국전자통신연구원 가상머신 마이그레이션의 중복제거 기반 기반 메모리 마이그레이션 장치 및 방법
KR101657414B1 (ko) * 2015-05-20 2016-09-30 경희대학교 산학협력단 Cpu 사용률 제어 장치 및 방법
WO2018101736A1 (ko) * 2016-11-30 2018-06-07 제주대학교 산학협력단 가상머신의 마이그레이션을 수행하기 위한 방법 및 장치
KR20180062403A (ko) * 2016-11-30 2018-06-08 제주대학교 산학협력단 가상머신의 마이그레이션을 수행하기 위한 방법 및 장치
KR20190061875A (ko) * 2017-11-28 2019-06-05 한양대학교 에리카산학협력단 프로세스 라이브 마이그레이션 기술 최적화를 위한 자동화 기법
CN113495777A (zh) * 2020-04-03 2021-10-12 中移动信息技术有限公司 虚拟机上线方法、装置、设备及介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102248443B1 (ko) * 2019-10-18 2021-05-04 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160099365A (ko) 2015-02-12 2016-08-22 한국전자통신연구원 가상머신 마이그레이션의 중복제거 기반 기반 메모리 마이그레이션 장치 및 방법
KR101657414B1 (ko) * 2015-05-20 2016-09-30 경희대학교 산학협력단 Cpu 사용률 제어 장치 및 방법
WO2018101736A1 (ko) * 2016-11-30 2018-06-07 제주대학교 산학협력단 가상머신의 마이그레이션을 수행하기 위한 방법 및 장치
KR20180062403A (ko) * 2016-11-30 2018-06-08 제주대학교 산학협력단 가상머신의 마이그레이션을 수행하기 위한 방법 및 장치
KR20190061875A (ko) * 2017-11-28 2019-06-05 한양대학교 에리카산학협력단 프로세스 라이브 마이그레이션 기술 최적화를 위한 자동화 기법
CN113495777A (zh) * 2020-04-03 2021-10-12 中移动信息技术有限公司 虚拟机上线方法、装置、设备及介质

Also Published As

Publication number Publication date
KR101264895B1 (ko) 2013-05-15

Similar Documents

Publication Publication Date Title
KR101264895B1 (ko) 가상 머신 마이그레이션 처리 장치 및 방법
Zhang et al. A survey on virtual machine migration: Challenges, techniques, and open issues
US10298670B2 (en) Real time cloud workload streaming
US9904570B2 (en) Exchanging and adjusting memory pre-copy convergence times (MPCT) among a group of virtual in order to converge at a pre-copy convergence time window
Hu et al. A time-series based precopy approach for live migration of virtual machines
Ma et al. Live virtual machine migration based on improved pre-copy approach
US9239765B2 (en) Application triggered state migration via hypervisor
He et al. Performance evaluation of live virtual machine migration in SDN-enabled cloud data centers
CN107222531B (zh) 一种容器云资源调度方法
Yang et al. AutoReplica: automatic data replica manager in distributed caching and data processing systems
EP2629490A1 (en) Optimizing traffic load in a communications network
US20170315839A1 (en) Method and Device for Processing Virtual Machine Migration
US11175942B2 (en) Virtual computing instance transfer path selection
JP6197791B2 (ja) 分散処理装置及び分散処理システム並びに分散処理方法
CN103810016A (zh) 实现虚拟机迁移的方法、装置和集群系统
Singh et al. A review on migration techniques and challenges in live virtual machine migration
Deshpande et al. Scatter-gather live migration of virtual machines
CN103064733A (zh) 云计算虚拟机热迁移技术
CN107967164B (zh) 一种虚拟机热迁移的方法及系统
CN106227587A (zh) 一种带快照虚拟机整机动态迁移方法及装置
CN103885811B (zh) 虚拟机系统全系统在线迁移的方法、系统与装置
Diallo et al. AutoMigrate: a framework for developing intelligent, self-managing cloud services with maximum availability
Yang et al. Automatic and Scalable Data Replication Manager in Distributed Computation and Storage Infrastructure of Cyber-Physical Systems.
Sato et al. A model-based algorithm for optimizing i/o intensive applications in clouds using vm-based migration
Anala et al. Application performance analysis during live migration of virtual machines

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160328

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170329

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee