KR20160049006A - 가상 머신 마이그레이션 관리 방법, 장치, 및 시스템 - Google Patents

가상 머신 마이그레이션 관리 방법, 장치, 및 시스템 Download PDF

Info

Publication number
KR20160049006A
KR20160049006A KR1020167008845A KR20167008845A KR20160049006A KR 20160049006 A KR20160049006 A KR 20160049006A KR 1020167008845 A KR1020167008845 A KR 1020167008845A KR 20167008845 A KR20167008845 A KR 20167008845A KR 20160049006 A KR20160049006 A KR 20160049006A
Authority
KR
South Korea
Prior art keywords
migration
virtual machine
computing node
migrated
duration
Prior art date
Application number
KR1020167008845A
Other languages
English (en)
Other versions
KR101814560B1 (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20160049006A publication Critical patent/KR20160049006A/ko
Application granted granted Critical
Publication of KR101814560B1 publication Critical patent/KR101814560B1/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
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명의 실시예는 가상 머신 마이그레이션 관리 방법을 개시하며, 상기 방법은: 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간(migration duration time)을 계산하는 단계 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ; 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하는 단계; 및 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하는 단계를 포함한다. 본 발명의 실시예는 가상 머신 마이그레이션 관리 장치 및 시스템을 추가로 개시한다. 본 발명을 사용함으로써, 가상 머신 마이그레이션에 대한 결정의 정확도가 어느 정도 향상될 수 있다.

Description

가상 머신의 마이그레이션을 관리하기 위한 방법, 장치, 및 시스템{METHOD, APPARATUS, AND SYSTEM FOR MANAGING MIGRATION OF VIRTUAL MACHINE}
본 출원은 2013년 12월 06일 중국특허청에 출원되고 발명의 명칭이 "virtual machine migration management MEHTOD, APPARATUS AND SYSTEM"인 중국특허 No. 201310656235.1에 대한 우선권을 주장하는 바이며, 상기 문헌은 본 명세서에 원용되어 병합된다.
본 발명은 컴퓨터 기술 분야에 관한 것이며, 특히 가상 머신 마이그레이션 관리 방법, 장치 및 시스템에 관한 것이다.
가상 머신의 활발한 마이그레이션은 가상화 분야에서 중요한 기술이고, 가상 클러스터, 무충격 서비스 교환, 및 호스트 유지보수를 위한 동적 자원 스케줄링을 실행하는 데 중요한 수단이다. 가상 머신의 활발한 마이그레이션의 기본적인 원리는 사용자의 서비스가 영향을 받지 않거나 사용자가 마이그레이션을 인지하지 못하는 경우에 러닝 가상 머신을 원시 물리 머신으로부터 목적 물리 머신으로 이주하는 것이다. 열 자원과 전원의 정합을 신속하게 실행하기 위해, 매번 복수의 가상 머신이 이주되는 것으로 결정되어야 할 수도 있다. 현재의 정책은 호스트의 동시 마이그레이션을 가상 머신의 수에 따라 그리고 가상 머신의 내력 마이그레이션 지속 시간의 평균값을 참조하여 각각의 호스트에 수납되어 있는 마이그레이션용 가상 머신의 최대 수를 계산하는 것이다. 그렇지만, 사양 및 서비스의 차이로 인해 마이그레이션 지속 시간의 편차가 비교적 크다. 그러므로 마이그레이션 지속 시간의 평가가 부정확하고 가상 머신의 활발한 마이그레이션에 대한 결정이 적절하게 이루어지지 않는다.
이를 감안하여, 본 발명의 실시예는 가상 머신 마이그레이션 관리 방법, 장치 및 시스템을 제공하며, 이것은 가상 머신의 마이그레이션 지속 시간을 동적으로 계산할 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 결정의 정확도가 어느 정도 향상될 수 있다.
전술한 기술적 문제를 해결하기 위해, 본 발명의 실시예의 제1 관점은 가상 머신 마이그레이션 관리 방법을 제공하며, 상기 방법은:
이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간(migration duration time)을 계산하는 단계 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ;
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하는 단계; 및
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하는 단계
를 포함한다.
제1 관점의 제1 가능한 실시 방법에서, 상기 방법은:
상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기 시작한 후, 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하고 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하는 단계
를 더 포함한다.
제1 관점의 제2 가능한 실시 방법에서, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하는 단계는:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00001
및 전달 횟수의 수
Figure pct00002
를 계산하는 단계
를 포함하며,
여기서
Figure pct00003
이고,
Figure pct00004
이고,
Figure pct00005
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00006
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00007
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00008
은 전달 횟수의 최대 수이며,
Figure pct00009
Figure pct00010
가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값이다.
제1 관점의 제3 가능한 실시 방법에서, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하는 단계는:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00011
및 전달 횟수의 수
Figure pct00012
를 계산하는 단계
를 포함하며,
여기서
Figure pct00013
이고,
Figure pct00014
이고,
Figure pct00015
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00016
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00017
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00018
은 전달 횟수의 최대 수이고,
Figure pct00019
Figure pct00020
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
Figure pct00021
는 이주될 가상 머신의 메모리 압축비이다.
제1 관점 및 제1 관점의 제1 내지 제3 가능한 실시 방법을 참조하여, 제1 관점의 제4 가능한 실시 방식에서, 매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
Figure pct00022
을 초기화하는 단계
를 더 포함하며, 여기서
Figure pct00023
는 대응하는 컴퓨팅 노드가 지원하는 동시 마이그레이션을 위한 가상 머신의 수이고
Figure pct00024
는 자원 스케줄링 주기이다.
제1 관점의 제4 가능한 실시 방법을 참조하여, 제1 관점의 제5 가능한 실시 방식에서, 매회의 자원 스케줄링 초기에 컴퓨팅 노드가 가상 머신 마이그레이션을 수행하는 것으로 검출되면, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
Figure pct00025
가 초기화되고,
Figure pct00026
는 컴퓨팅 노드에서 이주되고 있는 가상 머신의 마이그레이션 지속 시간이다.
이에 대응해서, 본 발명의 실시예의 제2 관점은 가상 머신 마이그레이션 관리 장치를 제공하며, 상기 장치는:
이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하도록 구성되어 있는 마이그레이션 지속 시간 계산 모듈 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ;
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하도록 구성되어 있는 이용 가능한 마이그레이션 지속 시간 관리 모듈; 및
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있는 마이그레이션 결정 모듈
을 포함한다.
제2 관점의 제1 가능한 실시 방법에서, 상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은,
상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기 시작한 후, 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하고 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하도록 추가로 구성되어 있다.
제2 관점의 제2 가능한 실시 방법에서, 상기 마이그레이션 지속 시간 계산 모듈이 상기 마이그레이션 지속 시간을 계산하는 것은:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00027
및 전달 횟수의 수
Figure pct00028
를 계산하는 단계
를 포함하며,
여기서
Figure pct00029
이고,
Figure pct00030
이고,
Figure pct00031
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00032
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00033
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00034
은 전달 횟수의 최대 수이며,
Figure pct00035
Figure pct00036
가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값이다.
제1 관점의 제3 가능한 실시 방법에서, 상기 마이그레이션 지속 시간 계산 모듈이 상기 마이그레이션 지속 시간을 계산하는 것은:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00037
및 전달 횟수의 수
Figure pct00038
를 계산하는 단계
를 포함하며,
여기서
Figure pct00039
이고,
Figure pct00040
이고,
Figure pct00041
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00042
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00043
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00044
은 전달 횟수의 최대 수이고,
Figure pct00045
Figure pct00046
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
Figure pct00047
는 이주될 가상 머신의 메모리 압축비이다.
제2 관점 및 제2 관점의 제1 내지 제3 가능한 실시 방법을 참조하여, 제4 가능한 실시 방식에서, 상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은:
매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
Figure pct00048
을 초기화하도록 추가로 구성되어 있으며,
여기서
Figure pct00049
는 대응하는 컴퓨팅 노드가 지원하는 동시 마이그레이션을 위한 가상 머신의 수이고
Figure pct00050
는 자원 스케줄링 주기이다.
제2 관점의 제4 가능한 실시 방법을 참조하여, 제2 관점의 제5 가능한 실시 방식에서, 상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은:
매회의 자원 스케줄링 초기에 컴퓨팅 노드가 가상 머신 마이그레이션을 수행하는 것으로 검출되면, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
Figure pct00051
를 초기화하도록 추가로 구성되어 있으며,
여기서,
Figure pct00052
는 컴퓨팅 노드에서 이주되고 있는 가상 머신의 마이그레이션 지속 시간이다.
이에 대응해서, 본 발명의 실시예의 제3 관점은 가상 머신 마이그레이션 관리 시스템을 추가로 제공하며, 상기 시스템은 가상 머신을 각각 수납하는 적어도 2개의 컴퓨팅 노드 장치, 및 본 발명의 실시예의 제2 관점에 따른 가상 머신 마이그레이션 관리 장치를 포함한다.
이에 대응해서, 본 발명의 실시예의 제4 관점은 가상 머신 마이그레이션 관리 시스템을 제공하며, 상기 시스템은 적어도 하나의 이주될 가상 머신을 수납하는 원시 컴퓨팅 노드, 목적 컴퓨팅 노드, 및 가상 머신 마이그레이션 관리 장치를 포함하며,
상기 가상 머신 마이그레이션 관리 장치는, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하고 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ; 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하며; 그리고 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있다.
본 발명의 제4 관점의 제1 가능한 실시 방법에서, 상기 마이그레이션 지속 시간은 이하의 2개의 실행 방식:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00053
및 전달 횟수의 수
Figure pct00054
를 계산하는 방식 - 여기서
Figure pct00055
이고,
Figure pct00056
이고,
Figure pct00057
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00058
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00059
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00060
은 전달 횟수의 최대 수이며,
Figure pct00061
Figure pct00062
가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값임 - 및
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00063
및 전달 횟수의 수
Figure pct00064
를 계산하는 방식 - 여기서
Figure pct00065
이고,
Figure pct00066
이고,
Figure pct00067
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00068
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00069
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00070
은 전달 횟수의 최대 수이고,
Figure pct00071
Figure pct00072
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
Figure pct00073
는 이주될 가상 머신의 메모리 압축비임 -
중 어느 하나에서의 계산에 의해 획득될 수 있다.
본 발명의 실시예에 따르면, 마이그레이션 지속 시간은 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
본 발명의 실시예의 기술적 솔루션을 더 명확하게 설명하기 위해, 이하에서는 본 발명의 실시예를 설명하는 데 필요한 첨부된 도면에 대해 간략하게 설명한다. 당연히, 이하의 실시예의 첨부된 도면은 본 발명의 일부의 실시예에 지나지 않으며, 당업자라면 창조적 노력 없이 첨부된 도면으로부터 다른 도면을 도출해낼 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 방법에 대한 개략적인 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 방법에 대한 개략적인 흐름도이다.
도 3은 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 장치에 대한 개략적인 구조도이다.
도 4는 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 장치에 대한 개략적인 구조도이다.
도 5는 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 시스템에 대한 개략적인 구조도이다.
도 6은 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 시스템에 대한 개략적인 구조도이다.
도 7은 본 발명의 실시예에 따른 분배 자원 관리 시스템에 대한 개략적인 구조도이다.
이하에서는 본 발명의 실시예에 첨부된 도면을 참조하여 본 발명의 실시예의 기술적 솔루션에 대해 명확하고 완전하게 설명한다. 당연히, 설명된 실시예는 본 발명의 모든 실시예가 아닌 일부에 지나지 않는다. 당업자가 창조적 노력 없이 본 발명의 실시예에 기초하여 획득하는 모든 다른 실시예는 본 발명의 보호 범위 내에 있게 된다.
본 발명의 실시예에서의 가상 머신 마이그레이션 관리 방법은 가상 머신 마이그레이션 관리 장치를 사용함으로써 실행될 수 있다. 가상 머신 마이그레이션 관리 장치는 독립적인 노드 장치에서 실행될 수 있으며, 도 7에 도시된 분배 자원 관리 시스템의 관리 노드 장치에서 실행될 수도 있다. 도 7에 도시된 분배 자원 관리 시스템은 관리 노드 장치 및 복수의 컴퓨팅 노드를 포함하며, 여기서 상기 컴퓨팅 노드는 노드 클러스터에 종합될 수 있다. 마스터 노드 Master 및 슬레이브 노드 Slave는 노드 클러스터에 추가로 설치될 수 있다.
도 1은 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 방법에 대한 개략적인 흐름도이다. 도면에 도시된 바와 같이, 본 실시예에서의 가상 머신 마이그레이션 관리 방법은 적어도 이하를 포함할 수 있다.:
S101. 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간(migration duration time)을 계산하며, 여기서 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함한다.
가상 머신 마이그레이션을 프리-카피(pre-copy) 방식으로 수행하는 예를 이용한다. 가상 머신 마이그레이션 관리 장치는 부하 균형(load balancing)과 같은 인자에 따라, 컴퓨팅 노드 i로부터 컴퓨팅 노드 j로 이주시켜야 하는 가상 머신
Figure pct00074
, 즉 상기 이주될 가상 머신에 대해 결정할 수 있고, 상기 이주될 가상 머신의 상위 계층 서비스 QoS(Quality of Service)에 의해 지정된 메모리 변화 속도
Figure pct00075
, 및 상기 이주될 가상 머신의 하위 계층 네트워크 QoS에 의해 지정된 마이그레이션 네트워크 대역폭
Figure pct00076
을 추가로 획득할 수 있다. 또한, 마이그레이션 지속 시간을 단축시키는 프로세스는 다음과 같이 될 수 있다:
최초의 카피에서, 원시 컴퓨팅 노드에 의해 가상 머신
Figure pct00077
에 할당된 메모리를
Figure pct00078
라 가정하고, 이것은 본 실시예에서 할당된 메모리라 칭한다. 가상 머신
Figure pct00079
의 할당된 메모리
Figure pct00080
는 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 전달되고, 소요되는 시간은 다음과 같다:
Figure pct00081
; (예시적으로,
Figure pct00082
의 단위는 Mb일 수 있고
Figure pct00083
의 단위는 Mb/s일 수 있다)
2번째 카피에서, 최초의 카피에서의 시각
Figure pct00084
내에, 가상 머신
Figure pct00085
의 할당된 메모리 내의
Figure pct00086
가 변하고, 메모리의 이 부분은 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 전달되어야 하고, 소요되는 시간은 다음과 같다:
Figure pct00087
;
3번째 카피에서, 2번째 카피에서의 시각
Figure pct00088
내에, 가상 머신
Figure pct00089
의 할당된 메모리 내의
Figure pct00090
가 변하고, 메모리의 이 부분은 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 전달되어야 하고, 소요되는 시간은 다음과 같다:
Figure pct00091
;
그리고
유추에 의해, 마이그레이션 지속 시간은 최종적으로 다음과 같이 되어야 한다:
Figure pct00092
Figure pct00093
이고,
Figure pct00094
인 것으로 가정하고, 일반적으로,
Figure pct00095
Figure pct00096
를 설정함으로써, q가 1보다 작은 것을 보장할 수 있고, 그러므로 위의 식은 수렴한다. 그런 다음, 위의 식은 다음과 같이 더 간단하게 된다:
Figure pct00097
식(1)
여기서 n은 전달 횟수(순회)의 총수이고,
Figure pct00098
이며,
Figure pct00099
은 전달 횟수의 최대 수이며,
Figure pct00100
Figure pct00101
가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold) X보다 작은 조건을 충족하는 최소 정수 값이다. 메모리 더티 페이지는 매회의 카피의 전달 프로세스에서 변하는 메모리 페이지이다. 메모리 더티 페이지 임계값 X는 메모리 더티 페이지의 수의 값이고, 관리자에 의해 사전설정될 수 있다. 즉, 한 번 순회의 복제의 메모리 더티 페이지의 수가 메모리 더티 페이지 임계값보다 작으면, 그 카피는 중지될 수 있다.
그렇지만, 선택적 실시예에서, 가상 머신 마이그레이션은 가상 머신 메모리를 먼저 압축하고 그런 다음 카피하는 방식으로 수행될 수 있다. 메모리 압축비
Figure pct00102
는 채택된 압축 알고리즘에 따라 결정될 수 있으며, 식(1)은 다음과 같이 추가로 조정될 수 있다:
마이그레이션 지속 시간
Figure pct00103
이고, 전달 횟수의 수는
Figure pct00104
이며, 여기서
Figure pct00105
이고,
Figure pct00106
이며, n을 결정하는 방식은 위의 설명에서의 방식과 동일하다.
S102. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득한다.
구체적으로, 이용 가능한 마이그레이션 지속 시간, 즉 스케줄링 주기마다 컴퓨팅 노드에 의한 가상 머신 마이그레이션에 필요한 시간은 컴퓨팅 노드마다 설정될 수 있다. 예를 들어, 각각의 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간은 일정한 간격으로 또는 통상적인 이벤트(예를 들어, 가상 자원 클러스터로/로부터 컴퓨팅 노드를 부가/삭제, 가상 머신의 시작/종료)가 자원 스케줄링을 촉발할 때 초기화된다. 또한, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간은 이용 가능한 마이그레이션 지속 시간에 영향을 주고 컴퓨팅 노드에서 발생하는 통상적인 이벤트(예를 들어 상기 컴퓨팅 노드 상에서 원래 실행되는 가상 머신을 다른 컴퓨팅 노드로 이주시키기 또는 다른 컴퓨팅 노드 상에서 원래 실행되는 가상 머신을 상기 컴퓨팅 노드로 이주시키기)와 함께 갱신될 수 있다. 컴퓨팅 노드 i로부터 컴퓨팅 노드 j로 이동되어야 하는 가상 머신
Figure pct00107
에 대한 결정 후, 가상 머신 마이그레이션 관리 장치는 원시 컴퓨팅 노드, 즉 컴퓨팅 노드 i의 현재 이용 가능한 마이그레이션 지속 시간, 및 목적 컴퓨팅 노드, 즉 컴퓨팅 노드 j의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득한다.
S103. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정한다.
즉, 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 단계 S101에서의 계산에 의해 획득되는 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 개별적으로 비교된다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧지 않으면, 이주될 가상 머신은 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정된다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧거나 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧으면, 이주될 가상 머신은 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 없는 것으로 결정된다.
선택적 실시예에서, 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정된 후, 가상 머신 마이그레이션 관리 장치는 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드에 가상 머신 마이그레이션 명령을 개별적으로 송신할 수 있으며, 이에 따라 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드는 이주될 가상 머신의 가상 머신 마이그레이션을 수행하기 시작한다. 한편, 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 개별적으로 감산되고, 이에 따라 가상 머신 마이그레이션이 다음에 필요할 때, 갱신된 이용 가능한 마이그레이션 지속 시간에 따라, 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 동적 결정이 실행되어, 대응하는 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간의 정확한 관리를 실행한다.
그렇지만, 다른 선택적 실시예에서, 가상 머신 마이그레이션 관리 장치는 또한 이주될 가상 머신의 마이그레이션이 완료된 후, 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 현재 마이그레이션의 실제의 마이그레이션 지속 시간을 개별적으로 감산하여, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간의 더 정확한 관리를 실행할 수 있다.
본 실시예에서, 도 1에 설명된 가상 머신 마이그레이션 관리 방법을 참조하여, 마이그레이션 지속 시간이 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
도 2는 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 방법에 대한 개략적인 흐름도이다. 도면에 도시된 바와 같이, 본 실시예에서의 가상 머신 마이그레이션 관리 방법은 이하를 포함할 수 있다:
S201. 매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간을 초기화한다.
특정한 실행에서, 컴퓨팅 노드 i의 이용 가능한 마이그레이션 지속 시간
Figure pct00108
로 초기화될 수 있으며, 여기서
Figure pct00109
는 컴퓨팅 노드 i에 의해 허용되는 동시 마이그레이션을 위한 가상 머신의 수이고
Figure pct00110
는 자원 스케줄링 주기이다.
선택적 실시예에서, 각각의 컴퓨팅 노드의 이용 가능한 지속 시간이 초기화되면, 각각의 컴퓨팅 노드가 가상 머신 마이그레이션을 현재 수행하고 있는지를 검출할 수 있다. 컴퓨팅 노드 i가 컴퓨팅 노드 j로의 가상 머신
Figure pct00111
의 마이그레이션을 현재 수행하고 있으면, 컴퓨팅 노드 i의 이용 가능한 마이그레이션 지속 시간은
Figure pct00112
로 초기화될 수 있고, 여기서
Figure pct00113
는 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 이주될 가상 머신
Figure pct00114
의 마이그레이션 파라미터에 따라 계산되는 마이그레이션 지속 시간이며, 여기서 마이그레이션 파라미터는 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함한다. 마이그레이션 지속 시간을 계산하는 특정한 방식은 위의 실시예에서 상세하게 예시되었으므로, 이에 대해서는 본 실시예에서 다시 설명하지 않는다.
S202. 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하여, 여기서 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함한다.
가상 머신 마이그레이션 관리 장치는 부하 균형과 같은 인자에 따라, 컴퓨팅 노드 i로부터 컴퓨팅 노드 j로 이주시켜야 하는 가상 머신
Figure pct00115
, 즉 상기 이주될 가상 머신에 대해 결정할 수 있고, 상기 이주될 가상 머신의 상위 계층 서비스 QoS(Quality of Service)에 의해 지정된 메모리 변화 속도
Figure pct00116
가 계산될 수 있다. 특정한 계산 방식에 대해서는, 위의 실시예에서의 단계 S101을 참조하면 되므로, 이에 대해서는 본 실시예에서 다시 설명하지 않는다.
S203. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득한다.
S204. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기로 결정한다.
즉, 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 단계 S202에서의 계산에 의해 획득되는 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 개별적으로 비교된다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧지 않으면, 이주될 가상 머신은 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정된다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧거나 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧으면, 이주될 가상 머신은 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 없는 것으로 결정된다.
S205. 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주하는 것을 시작한 후, 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 마이그레이션 지속 시간을 감산하고, 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 마이그레이션 지속 시간을 감산한다.
특정한 실시예에서, 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정된 후, 가상 머신 마이그레이션 관리 장치는 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드에 가상 머신 마이그레이션 명령을 개별적으로 송신할 수 있으며, 이에 따라 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드는 이주될 가상 머신의 가상 머신 마이그레이션을 수행하기 시작한다. 또한, 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 개별적으로 감산된다. 그렇지만, 다른 선택적 실시예에서, 가상 머신 마이그레이션 관리 장치는 또한 이주될 가상 머신의 마이그레이션이 완료된 후, 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 현재 마이그레이션의 실제의 마이그레이션 지속 시간을 개별적으로 감산할 수 있다.
본 실시예에서, 도 2에 설명된 가상 머신 마이그레이션 관리 방법을 참조하여, 마이그레이션 지속 시간이 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
도 3은 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 장치에 대한 개략적인 구조도이다. 본 발명에서의 가상 머신 마이그레이션 관리 장치는 분배 자원 관리 시스템의 관리 노드 장치에서 실행될 수 있으며, 다른 독립적인 노드 장치에서 실행될 수도 있다. 도면에 도시된 바와 같이, 본 실시예에서의 가상 머신 마이그레이션 관리 장치는:
이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하도록 구성되어 있는 마이그레이션 지속 시간 계산 모듈
을 포함할 수 있으며, 여기서 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함한다.
특정한 실시예에서, 가상 머신 마이그레이션을 프리-카피 방식으로 수행하는 예를 이용한다. 가상 머신 마이그레이션 관리 장치는 부하 균형과 같은 인자에 따라, 컴퓨팅 노드 i로부터 컴퓨팅 노드 j로 이주시켜야 하는 가상 머신
Figure pct00117
, 즉 상기 이주될 가상 머신에 대해 결정할 수 있고, 상기 이주될 가상 머신의 상위 계층 서비스 QoS(Quality of Service)에 의해 지정된 메모리 변화 속도
Figure pct00118
, 및 상기 이주될 가상 머신의 하위 계층 네트워크 QoS에 의해 지정된 마이그레이션 네트워크 대역폭
Figure pct00119
을 추가로 획득할 수 있다. 또한, 마이그레이션 지속 시간 계산 모듈(310)은 식(1)에 따라 마이그레이션 지속 시간을 계산할 수 있다:
Figure pct00120
이고, 전달 횟수의 수는
Figure pct00121
이며, 여기서
Figure pct00122
이고,
Figure pct00123
이며,
Figure pct00124
은 전달 횟수의 최대 수이며,
Figure pct00125
Figure pct00126
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이다. 마이그레이션을 계산하고 감소시키는 특정한 프로세스에 대해서는 전술한 실시예에 상세히 설명되어 있으므로 이에 대해서는 본 실시예에서 다시 설명하지 않는다.
그렇지만, 선택적 실시예에서, 가상 머신 마이그레이션은 가상 머신 메모리를 먼저 압축하고 그런 다음 카피하는 방식으로 수행될 수 있다. 메모리 압축비
Figure pct00127
는 채택된 압축 알고리즘에 따라 결정될 수 있으며, 식(1)은 다음과 같이 추가로 조정될 수 있다:
마이그레이션 지속 시간
Figure pct00128
이고, 전달 횟수의 수는
Figure pct00129
이며, 여기서
Figure pct00130
이고,
Figure pct00131
이며, n을 결정하는 방식은 위의 설명에서의 방식과 동일하다.
이용 가능한 마이그레이션 지속 시간 관리 모듈(320)은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하도록 구성되어 있다.
구체적으로, 이용 가능한 마이그레이션 지속 시간 관리 모듈(320)은 컴퓨팅 노드마다 이용 가능한 마이그레이션 지속 시간을 설정할 수 있으며, 일정한 간격으로 또는 통상적인 이벤트(예를 들어, 가상 자원 클러스터로/로부터 컴퓨팅 노드를 부가/삭제, 가상 머신의 시작/종료)가 자원 스케줄링을 촉발할 때 각각의 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간을 초기화한다. 선택적으로, 각각의 컴퓨팅 노드의 이용 가능한 지속 시간이 초기화되면, 각각의 컴퓨팅 노드가 가상 머신 마이그레이션을 현재 수행하고 있는지를 검출할 수 있다. 컴퓨팅 노드 i가 컴퓨팅 노드 j로의 가상 머신
Figure pct00132
의 마이그레이션을 현재 수행하고 있으면, 컴퓨팅 노드 i의 이용 가능한 마이그레이션 지속 시간은
Figure pct00133
로 초기화될 수 있고, 여기서
Figure pct00134
는 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 마이그레이션 지속 시간 계산 모듈(310)에 의해 이주될 가상 머신
Figure pct00135
의 마이그레이션 파라미터에 따라 계산되는 마이그레이션 지속 시간이며, 마이그레이션 파라미터는 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함한다.
또한, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간은 이용 가능한 마이그레이션 지속 시간에 영향을 주고 컴퓨팅 노드에서 발생하는 통상적인 이벤트(예를 들어 상기 컴퓨팅 노드 상에서 원래 실행되는 가상 머신을 다른 컴퓨팅 노드로 이주시키기 또는 다른 컴퓨팅 노드 상에서 원래 실행되는 가상 머신을 상기 컴퓨팅 노드로 이주시키기)와 함께 갱신될 수 있다. 컴퓨팅 노드 i로부터 컴퓨팅 노드 j로 이동되어야 하는 가상 머신
Figure pct00136
에 대한 결정 후, 가상 머신 마이그레이션 관리 장치는 원시 컴퓨팅 노드, 즉 컴퓨팅 노드 i의 현재 이용 가능한 마이그레이션 지속 시간, 및 목적 컴퓨팅 노드, 즉 컴퓨팅 노드 j의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득한다. 예를 들어, 마이그레이션 결정 모듈(330)이 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정한 후, 가상 머신 마이그레이션 관리 장치는 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드에 가상 머신 마이그레이션 명령을 개별적으로 송신할 수 있으며, 이에 따라 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드는 이주될 가상 머신의 가상 머신 마이그레이션을 수행하기 시작한다. 또한, 이용 가능한 마이그레이션 지속 시간 관리 모듈(320)은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 마이그레이션 지속 시간을 개별적으로 감산한다. 그렇지만, 다른 선택적 실시예에서, 이용 가능한 마이그레이션 지속 시간 관리 모듈(320)은 또한 이주될 가상 머신의 마이그레이션이 완료된 후, 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 현재 마이그레이션의 실제의 마이그레이션 지속 시간을 개별적으로 감산할 수 있다.
마이그레이션 결정 모듈(330)은: 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있다.
즉, 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 마이그레이션 지속 시간 계산 모듈(310)에 의한 계산에 의해 획득되는 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 개별적으로 비교된다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧지 않으면, 마이그레이션 결정 모듈(330)은 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정한다. 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧거나 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 마이그레이션 지속 시간보다 짧으면, 마이그레이션 결정 모듈(330)은 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 없는 것으로 결정한다.
선택적 실시예에서, 이주될 가상 머신이 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주될 수 있는 것으로 결정된 후, 마이그레이션 결정 모듈(330)은 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드에 가상 머신 마이그레이션 명령을 개별적으로 송신할 수 있으며, 이에 따라 원시 컴퓨팅 노드 및 목적 컴퓨팅 노드는 이주될 가상 머신의 가상 머신 마이그레이션을 수행하기 시작한다. 한편, 마이그레이션 결정 모듈(330)은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 마이그레이션 지속 시간을 개별적으로 감산하도록 이용 가능한 마이그레이션 지속 시간 관리 모듈(320)에 명령할 수 있다.
본 실시예에서, 도 3에 설명된 가상 머신 마이그레이션 관리 장치를 참조하여, 마이그레이션 지속 시간이 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
도 4는 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 장치에 대한 개략적인 구조도이다. 도 3에 도시된 바와 같이, 가상 머신 마이그레이션 관리 장치(400)는 CPU와 같은 적어도 하나의 프로세서(401), 적어도 하나의 네트워크 인터페이스(403), 메모리(404), 및 적어도 하나의 통신 버스(402)를 포함할 수 있다. 통신 버스(402)는 이러한 구성요소 간의 접속 및 통신을 실행하도록 구성되어 있다. 네트워크 인터페이스(403)는 표준 유선 인터페이스 및 표준 무선 인터페이스(예를 들어 WI-FI 인터페이스)를 선택적으로 포함할 수 있다. 예를 들어, 안테나 장치가 구비되어 다른 노드 장치와의 시그널링 또는 데이터 통신을 수행하도록 구성되어 있다. 메모리(404)는 고속 RAM 메모리일 수 있고, 적어도 하나의 디스크 메모리와 같은 비휘발성 메모리(non-volatile memory)일 수도 있다. 메모리(404)는 추가로 선택적으로 전술한 프로세서(401)에서 떨어져 위치하는 적어도 하나의 스토리지 장치일 수 있다. 메모리(404)는 일군의 프로그램 코드를 저장하고, 프로세서(401)는 메모리(404)에 저장되어 있는 프로그램 코드를 발동하도록 구성되어 있다. 프로그램 코드는 이하의 동작:
이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간(migration duration time)을 계산하는 단계 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ;
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하는 단계; 및
상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하는 단계
를 수행하는 데 사용된다.
또한, 선택적 실시예에서, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하는 단계는:
상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00137
및 전달 횟수의 수
Figure pct00138
를 계산하는 단계
를 포함하며,
여기서
Figure pct00139
이고,
Figure pct00140
이고,
Figure pct00141
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00142
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00143
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00144
은 전달 횟수의 최대 수이며,
Figure pct00145
Figure pct00146
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이다.
또한, 선택적 실시예에서, 가상 머신 마이그레이션은 가상 머신 메모리를 먼저 압축하고 그런 다음 카피하는 방식으로 수행될 수 있다. 메모리 압축비
Figure pct00147
는 채택된 압축 알고리즘에 따라 결정될 수 있으며, 식(1)은 다음과 같이 추가로 조정될 수 있다:
마이그레이션 지속 시간
Figure pct00148
이고, 전달 횟수의 수는
Figure pct00149
이며, 여기서
Figure pct00150
이고,
Figure pct00151
이며, n을 결정하는 방식은 위의 설명에서의 방식과 동일하다.
또한, 선택적 실시예에서, 프로세서(401)는 메모리(404)에 저장되어 있는 프로그램 코드를 추가로 발동하여, 이하의 단계:
상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기 시작한 후, 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하고 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하는 단계
를 수행한다. 그러므로 가상 머신 마이그레이션이 다음에 필요할 때, 갱신된 이용 가능한 마이그레이션 지속 시간에 따라, 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 동적 결정이 실행된다. 가상 머신이 이주되어, 대응하는 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간의 정확한 관리를 실행한다.
그렇지만, 다른 선택적 실시예에서, 가상 머신 마이그레이션 관리 장치는 또한 이주될 가상 머신의 마이그레이션이 완료된 후, 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 그리고 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 현재 마이그레이션의 실제의 마이그레이션 지속 시간을 개별적으로 감산하여, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간의 더 정확한 관리를 실행할 수 있다.
또한, 선택적 실시예에서, 프로세서(401)는 메모리(404)에 저장되어 있는 프로그램 코드를 추가로 발동하여, 이하의 단계:
매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
Figure pct00152
을 초기화하는 단계
를 수행하며, 여기서
Figure pct00153
는 대응하는 컴퓨팅 노드가 지원하는 동시 마이그레이션을 위한 가상 머신의 수이고
Figure pct00154
는 자원 스케줄링 주기이다.
또한, 선택적 실시예에서, 각각의 컴퓨팅 노드의 이용 가능한 지속 시간이 초기화되면, 각각의 컴퓨팅 노드가 가상 머신 마이그레이션을 현재 수행하고 있는지를 검출할 수 있다. 컴퓨팅 노드 i가 컴퓨팅 노드 j로의 가상 머신
Figure pct00155
의 마이그레이션을 현재 수행하고 있으면, 컴퓨팅 노드 i의 이용 가능한 마이그레이션 지속 시간은
Figure pct00156
로 초기화될 수 있고, 여기서
Figure pct00157
는 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요하고 이주될 가상 머신
Figure pct00158
의 마이그레이션 파라미터에 따라 계산되는 마이그레이션 지속 시간이다.
본 실시예에서, 도 4에 설명된 가상 머신 마이그레이션 관리 장치를 참조하여, 마이그레이션 지속 시간이 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
도 5는 본 발명의 실시예에 따른 가상 머신 마이그레이션 관리 시스템에 대한 개략적인 구조도이다. 도면에 도시된 바와 같이, 본 발명의 이 실시예에서의 가상 머신 마이그레이션 관리 시스템은 적어도: 컴퓨팅 노드 장치(510), 컴퓨팅 노드 장치(520), ..., 및 컴퓨팅 노드 장치(5n0) 중 적어도 2개를 포함할 수 있고, 각각의 장치는 가상 머신, 및 가상 머신 마이그레이션 관리 장치(500)를 수납한다.
가상 머신 마이그레이션 관리 장치(500)는 전술한 실시예 중 어느 하나의 실시예에서 설명된 가상 머신 마이그레이션 관리 장치일 수 있으며, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하고 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ; 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하며; 그리고 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있다.
컴퓨팅 노드 장치들은 가상 머신 마이그레이션 관리 장치가 이동될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기로 결정할 때 상기 이동될 가상 머신에 대한 마이그레이션 동작을 수행하도록 구성되어 있다.
또한, 본 실시예에 소개된 가상 머신 마이그레이션 관리 시스템은 전술한 방법 실시예 중 어느 하나의 실시예에서의 가상 머신 마이그레이션 관리 방법의 프로세스 중 일부 또는 전부를 실행하는 데 사용될 수 있다.
도 6은 본 발명의 다른 실시예에 따른 가상 머신 마이그레이션 관리 시스템이고, 여기서 상기 시스템은 적어도 하나의 이주될 가상 머신을 수납하는 원시 컴퓨팅 노드(i620), 목적 컴퓨팅 노드(j630), 및 가상 머신 마이그레이션 관리 장치(610)를 포함한다.
가상 머신 마이그레이션 관리 장치(610)는: 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드(i620)로부터 상기 목적 컴퓨팅 노드(j630)로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하고 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ; 상기 원시 컴퓨팅 노드(i620)의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드(j630)의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하며; 그리고 상기 원시 컴퓨팅 노드(i620)의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드(j630)의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드(i620)로부터 상기 목적 컴퓨팅 노드(j630)로 이주시키기로 결정하도록 구성되어 있다.
선택적 실시예에서, 마이그레이션 지속 시간은 이하의 2개의 실행 방식:
이주될 가상 머신을 원시 컴퓨팅 노드(i620)로부터 목적 컴퓨팅 노드(j630)로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00159
및 전달 횟수의 수
Figure pct00160
를 계산하는 방식 - 여기서
Figure pct00161
이고,
Figure pct00162
이고,
Figure pct00163
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00164
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00165
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00166
은 전달 횟수의 최대 수이며,
Figure pct00167
Figure pct00168
가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값임 - 및
이주될 가상 머신을 원시 컴퓨팅 노드(i620)로부터 목적 컴퓨팅 노드(j630)로 이주시키는 데 필요한 마이그레이션 지속 시간
Figure pct00169
및 전달 횟수의 수
Figure pct00170
를 계산하는 방식 - 여기서
Figure pct00171
이고,
Figure pct00172
이고,
Figure pct00173
는 이주될 가상 머신의 할당된 메모리 크기이고,
Figure pct00174
는 이주될 가상 머신의 메모리 변화 속도이고,
Figure pct00175
는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
Figure pct00176
은 전달 횟수의 최대 수이고,
Figure pct00177
Figure pct00178
가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
Figure pct00179
는 이주될 가상 머신의 메모리 압축비임 -
중 어느 하나에서의 계산에 의해 획득될 수 있다.
또한, 본 실시예에 소개된 가상 머신 마이그레이션 관리 시스템은 전술한 방법 실시예 중 어느 하나의 실시예에서의 가상 머신 마이그레이션 관리 방법의 프로세스 중 일부 또는 전부를 실행하는 데 사용될 수 있다.
본 발명의 실시예에 따르면, 마이그레이션 지속 시간은 이주될 가상 머신의 마이그레이션 파라미터에 따라 동적으로 계산될 수 있고, 계산된 마이그레이션 지속 시간은 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간과 비교되어 가상 머신 마이그레이션이 수행될 수 있는지가 결정될 수 있다는 것을 알 수 있다. 컴퓨팅 노드의 동시 마이그레이션을 위한 가상 머신의 수는 동적으로 관리될 수 있으며, 이에 의해 가상 머신 마이그레이션에 대한 더 정확한 결정을 수행한다.
당업자라면 실시예의 방법의 프로세스 중 일부 또는 전부는 관련 하드웨어에 명령을 내리는 컴퓨터 프로그램에 의해 구현될 수 있다는 것을 이해할 수 있을 것이다. 프로그램은 컴퓨터가 판독 가능한 저장 매체에 저장될 수 있다. 프로그램이 실행되면, 실시예의 방법의 프로세스가 실행된다. 저장 매체는 자기디스크, 광디스크, 리드 온리 메모리(Read-Only Memory, ROM), 또는 랜덤 액세스 메모리(Random Access Memory, RAM) 등이 될 수 있다.
개시된 것은 본 발명의 예시적 실시예에 지나지 않으며, 본 발명의 보호 범위를 제한하려는 것이 아니다. 본 발명의 청구범위에 따른 등가의 변화는 본 발명의 보호 범위 내에 있게 된다.

Claims (15)

  1. 가상 머신 마이그레이션 관리 방법으로서,
    이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간(migration duration time)을 계산하는 단계 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ;
    상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하는 단계; 및
    상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하는 단계
    를 포함하는 가상 머신 마이그레이션 관리 방법.
  2. 제1항에 있어서,
    상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하는 단계는,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00180
    및 전달 횟수의 수
    Figure pct00181
    를 계산하는 단계
    를 포함하며,
    여기서
    Figure pct00182
    이고,
    Figure pct00183
    이고,
    Figure pct00184
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00185
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00186
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00187
    은 전달 횟수의 최대 수이며,
    Figure pct00188
    Figure pct00189
    가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값인, 가상 머신 마이그레이션 관리 방법.
  3. 제1항에 있어서,
    상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하는 단계는,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00190
    및 전달 횟수의 수
    Figure pct00191
    를 계산하는 단계
    를 포함하며,
    여기서
    Figure pct00192
    이고,
    Figure pct00193
    이고,
    Figure pct00194
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00195
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00196
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00197
    은 전달 횟수의 최대 수이고,
    Figure pct00199
    가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
    Figure pct00200
    는 이주될 가상 머신의 메모리 압축비인, 가상 머신 마이그레이션 관리 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기 시작한 후, 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하고 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하는 단계
    를 더 포함하는 가상 머신 마이그레이션 관리 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
    Figure pct00201
    을 초기화하는 단계
    를 더 포함하며,
    여기서
    Figure pct00202
    는 대응하는 컴퓨팅 노드가 지원하는 동시 마이그레이션을 위한 가상 머신의 수이고
    Figure pct00203
    는 자원 스케줄링 주기인, 가상 머신 마이그레이션 관리 방법.
  6. 제5항에 있어서,
    매회의 자원 스케줄링 초기에 컴퓨팅 노드가 가상 머신 마이그레이션을 수행하는 것으로 검출되면, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
    Figure pct00204
    가 초기화되고,
    Figure pct00205
    는 컴퓨팅 노드에서 이주되고 있는 가상 머신의 마이그레이션 지속 시간인, 가상 머신 마이그레이션 관리 방법.
  7. 가상 머신 마이그레이션 관리 장치로서,
    이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하도록 구성되어 있는 마이그레이션 지속 시간 계산 모듈 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ;
    상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하도록 구성되어 있는 이용 가능한 마이그레이션 지속 시간 관리 모듈; 및
    상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있는 마이그레이션 결정 모듈
    을 포함하는 가상 머신 마이그레이션 관리 장치.
  8. 제7항에 있어서,
    상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드로부터 목적 컴퓨팅 노드로 이주시키기 시작한 후, 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하고 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간으로부터 상기 마이그레이션 지속 시간을 감산하도록 추가로 구성되어 있는, 가상 머신 마이그레이션 관리 장치.
  9. 제7항에 있어서,
    상기 마이그레이션 지속 시간 계산 모듈이 상기 마이그레이션 지속 시간을 계산하는 것은,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00206
    및 전달 횟수의 수
    Figure pct00207
    를 계산하는 단계
    를 포함하며,
    여기서
    Figure pct00208
    이고,
    Figure pct00209
    이고,
    Figure pct00210
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00211
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00212
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00213
    은 전달 횟수의 최대 수이며,
    Figure pct00214
    Figure pct00215
    가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값인, 가상 머신 마이그레이션 관리 장치.
  10. 제7항에 있어서,
    상기 마이그레이션 지속 시간 계산 모듈이 상기 마이그레이션 지속 시간을 계산하는 것은,
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00216
    및 전달 횟수의 수
    Figure pct00217
    를 계산하는 단계
    를 포함하며,
    여기서
    Figure pct00218
    이고,
    Figure pct00219
    이고,
    Figure pct00220
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00221
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00222
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00223
    은 전달 횟수의 최대 수이고,
    Figure pct00224
    Figure pct00225
    가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
    Figure pct00226
    는 이주될 가상 머신의 메모리 압축비인, 가상 머신 마이그레이션 관리 장치.
  11. 제7항 내지 제10항 중 어느 한 항에 있어서,
    상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은,
    매회의 자원 스케줄링 초기에 모든 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
    Figure pct00227
    을 초기화하도록 추가로 구성되어 있으며,
    여기서
    Figure pct00228
    는 대응하는 컴퓨팅 노드가 지원하는 동시 마이그레이션을 위한 가상 머신의 수이고
    Figure pct00229
    는 자원 스케줄링 주기인, 가상 머신 마이그레이션 관리 장치.
  12. 제11항에 있어서,
    상기 이용 가능한 마이그레이션 지속 시간 관리 모듈은,
    매회의 자원 스케줄링 초기에 컴퓨팅 노드가 가상 머신 마이그레이션을 수행하는 것으로 검출되면, 컴퓨팅 노드의 이용 가능한 마이그레이션 지속 시간
    Figure pct00230
    를 초기화하도록 추가로 구성되어 있으며,
    여기서,
    Figure pct00231
    는 컴퓨팅 노드에서 이주되고 있는 가상 머신의 마이그레이션 지속 시간인, 가상 머신 마이그레이션 관리 장치.
  13. 가상 머신 마이그레이션 관리 시스템으로서,
    가상 머신을 각각 수납하는 적어도 2개의 컴퓨팅 노드 장치, 및 제7항 내지 제12항 중 어느 한 항에 따른 가상 머신 마이그레이션 관리 장치를 포함하는 가상 머신 마이그레이션 관리 시스템.
  14. 가상 머신 마이그레이션 관리 시스템으로서,
    적어도 하나의 이주될 가상 머신을 수납하는 원시 컴퓨팅 노드, 목적 컴퓨팅 노드, 및 가상 머신 마이그레이션 관리 장치를 포함하며,
    상기 가상 머신 마이그레이션 관리 장치는, 상기 이주될 가상 머신의 마이그레이션 파라미터에 따라, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키는 데 필요한 마이그레이션 지속 시간을 계산하고 - 상기 마이그레이션 파라미터는 상기 이주될 가상 머신의 할당된 메모리 크기, 메모리 변화 속도, 및 마이그레이션 네트워크 대역폭을 포함함 - ; 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간을 개별적으로 획득하며; 그리고 상기 원시 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간 및 상기 목적 컴퓨팅 노드의 현재 이용 가능한 마이그레이션 지속 시간이 상기 마이그레이션 지속 시간보다 짧지 않으면, 상기 이주될 가상 머신을 상기 원시 컴퓨팅 노드로부터 상기 목적 컴퓨팅 노드로 이주시키기로 결정하도록 구성되어 있는, 가상 머신 마이그레이션 관리 시스템.
  15. 제14항에 있어서,
    상기 마이그레이션 지속 시간은 이하의 2개의 실행 방식:
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00232
    및 전달 횟수의 수
    Figure pct00233
    를 계산하는 방식 - 여기서
    Figure pct00234
    이고,
    Figure pct00235
    이고,
    Figure pct00236
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00237
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00238
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00239
    은 전달 횟수의 최대 수이며,
    Figure pct00240
    Figure pct00241
    가 사전설정된 메모리 더티 페이지 임계값(preset memory dirty page threshold)보다 작은 조건을 충족하는 최소 정수 값임 - 및
    상기 이주될 가상 머신을 원시 컴퓨팅 노드 i로부터 목적 컴퓨팅 노드 j로 이주시키는 데 필요한 마이그레이션 지속 시간
    Figure pct00242
    및 전달 횟수의 수
    Figure pct00243
    를 계산하는 방식 - 여기서
    Figure pct00244
    이고,
    Figure pct00245
    이고,
    Figure pct00246
    는 이주될 가상 머신의 할당된 메모리 크기이고,
    Figure pct00247
    는 이주될 가상 머신의 메모리 변화 속도이고,
    Figure pct00248
    는 이주될 가상 머신의 마이그레이션 네트워크 대역폭이고,
    Figure pct00249
    은 전달 횟수의 최대 수이고,
    Figure pct00250
    Figure pct00251
    가 사전설정된 메모리 더티 페이지 임계값보다 작은 조건을 충족하는 최소 정수 값이며,
    Figure pct00252
    는 이주될 가상 머신의 메모리 압축비임 -
    중 어느 하나에서의 계산에 의해 획득될 수 있는, 가상 머신 마이그레이션 관리 시스템.
KR1020167008845A 2013-12-06 2014-08-07 가상 머신 마이그레이션 관리 방법, 장치, 및 시스템 KR101814560B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201310656235.1A CN103685256B (zh) 2013-12-06 2013-12-06 一种虚拟机迁移管理方法、装置及系统
CN201310656235.1 2013-12-06
PCT/CN2014/083869 WO2015081717A1 (zh) 2013-12-06 2014-08-07 一种虚拟机迁移管理方法、装置及系统

Publications (2)

Publication Number Publication Date
KR20160049006A true KR20160049006A (ko) 2016-05-04
KR101814560B1 KR101814560B1 (ko) 2018-01-04

Family

ID=50321571

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167008845A KR101814560B1 (ko) 2013-12-06 2014-08-07 가상 머신 마이그레이션 관리 방법, 장치, 및 시스템

Country Status (5)

Country Link
EP (1) EP2894827B1 (ko)
JP (1) JP6168576B2 (ko)
KR (1) KR101814560B1 (ko)
CN (1) CN103685256B (ko)
WO (1) WO2015081717A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220012833A (ko) * 2020-07-21 2022-02-04 구글 엘엘씨 가상 머신들의 복제-기반 마이그레이션의 최적화
KR102403625B1 (ko) * 2021-10-15 2022-05-30 오케스트로 주식회사 물리 서버 성능 저하를 고려하여 가상 머신 예측 관리를 구현한 가상 머신 배치 시스템 및 가상 머신 배치 방법

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103685256B (zh) * 2013-12-06 2017-08-04 华为技术有限公司 一种虚拟机迁移管理方法、装置及系统
US9720728B2 (en) 2013-12-06 2017-08-01 Huawei Technologies Co., Ltd. Migrating a VM when the available migration duration times of a source and destination node are greater than the VM's migration duration time
US9558005B2 (en) 2014-05-19 2017-01-31 Intel Corporation Reliable and deterministic live migration of virtual machines
US20180024854A1 (en) * 2015-03-27 2018-01-25 Intel Corporation Technologies for virtual machine migration
CN107566319B (zh) * 2016-06-30 2021-01-26 中央大学 虚拟机器即时转移方法
CN106227580A (zh) * 2016-07-18 2016-12-14 浪潮(北京)电子信息产业有限公司 一种虚拟机的动态迁移方法及系统
CN106874066B (zh) * 2017-01-20 2021-01-26 中兴通讯股份有限公司 一种虚拟机迁移方法及装置、电子设备
CN106970824B (zh) * 2017-03-07 2019-12-17 华中科技大学 一种基于带宽感知的虚拟机迁移压缩方法及系统
CN107368349B (zh) * 2017-07-17 2020-09-08 郑州云海信息技术有限公司 一种资源管理方法及装置
CN109408195B (zh) * 2018-09-05 2022-04-22 华为云计算技术有限公司 虚拟机热迁移方法及装置
CN109246229B (zh) * 2018-09-28 2021-08-27 网宿科技股份有限公司 一种分发资源获取请求的方法和装置
KR102262645B1 (ko) 2020-12-31 2021-06-09 박용정 클라우드 컴퓨팅 환경에서의 리소스관리를 위한 모니터링 시스템 및 방법
CN113254161B (zh) * 2021-06-29 2021-10-26 飞腾信息技术有限公司 一种基于cpu的快速虚拟机热迁移方法
CN117806776B (zh) * 2024-02-29 2024-05-10 山东海量信息技术研究院 一种数据迁移方法、装置及电子设备和存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484208B1 (en) * 2002-12-12 2009-01-27 Michael Nelson Virtual machine migration
JP4438807B2 (ja) * 2007-03-02 2010-03-24 日本電気株式会社 仮想マシンシステム、管理サーバ、仮想マシン移行方法及びプログラム
US8095929B1 (en) * 2007-04-16 2012-01-10 Vmware, Inc. Method and system for determining a cost-benefit metric for potential virtual machine migrations
US9110702B2 (en) 2010-06-02 2015-08-18 Microsoft Technology Licensing, Llc Virtual machine migration techniques
JP5763961B2 (ja) * 2011-04-14 2015-08-12 キヤノン株式会社 通信装置、通信システム、通信装置の制御方法およびプログラム
CN103064733A (zh) * 2011-10-20 2013-04-24 电子科技大学 云计算虚拟机热迁移技术
JP5817844B2 (ja) * 2012-01-10 2015-11-18 富士通株式会社 仮想マシン管理プログラム、方法、及び装置
JP2013200615A (ja) * 2012-03-23 2013-10-03 Nec Corp 仮想マシン移動制御システム、仮想マシン移動方法およびプログラム
CN102662763B (zh) * 2012-04-11 2014-03-26 华中科技大学 基于服务质量的虚拟机资源调度方法
CN102866915B (zh) * 2012-08-21 2015-08-26 华为技术有限公司 虚拟化集群整合方法、装置及虚拟化集群系统
CN103685256B (zh) * 2013-12-06 2017-08-04 华为技术有限公司 一种虚拟机迁移管理方法、装置及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220012833A (ko) * 2020-07-21 2022-02-04 구글 엘엘씨 가상 머신들의 복제-기반 마이그레이션의 최적화
KR102403625B1 (ko) * 2021-10-15 2022-05-30 오케스트로 주식회사 물리 서버 성능 저하를 고려하여 가상 머신 예측 관리를 구현한 가상 머신 배치 시스템 및 가상 머신 배치 방법

Also Published As

Publication number Publication date
EP2894827B1 (en) 2016-10-26
JP6168576B2 (ja) 2017-07-26
EP2894827A4 (en) 2015-09-02
CN103685256B (zh) 2017-08-04
KR101814560B1 (ko) 2018-01-04
EP2894827A1 (en) 2015-07-15
CN103685256A (zh) 2014-03-26
JP2016537705A (ja) 2016-12-01
WO2015081717A1 (zh) 2015-06-11

Similar Documents

Publication Publication Date Title
KR101814560B1 (ko) 가상 머신 마이그레이션 관리 방법, 장치, 및 시스템
US9720728B2 (en) Migrating a VM when the available migration duration times of a source and destination node are greater than the VM's migration duration time
ES2939689T3 (es) Método y dispositivo para realizar planificación de recursos
CN108009016B (zh) 一种资源负载均衡控制方法及集群调度器
US20170195282A1 (en) Address Processing Method, Related Device, and System
US20160156567A1 (en) Allocation method of a computer resource and computer system
US8782235B2 (en) Resource migration system and resource migration method
EP3226131B1 (en) Scaling method and device for virtual machine (vm)
US20120324471A1 (en) Control device, management device, data processing method of control device, and program
US20170315839A1 (en) Method and Device for Processing Virtual Machine Migration
US10721137B2 (en) Performance assurance using workload phase detection
US11194569B2 (en) Method, electronic device and medium for upgrading a hyper-converged infrastructure node
US20130047158A1 (en) Method and System for Real Time Detection of Resource Requirement and Automatic Adjustments
JP2011258119A (ja) クラスタ構成管理方法、管理装置及びプログラム
US20150350055A1 (en) Shared resource contention
CN109960565B (zh) 云平台、基于云平台的虚拟机调度方法及装置
KR101608859B1 (ko) 클라우드 기반의 지능형 전력제어 시스템
US11995460B2 (en) Resource determination device, method, and program
JP2013200615A (ja) 仮想マシン移動制御システム、仮想マシン移動方法およびプログラム
CN112379974A (zh) 一种虚拟机热迁移系统及其热迁移方法
CN115794305B (zh) 虚拟机内存的调整方法和装置、存储介质及电子装置
JP6383340B2 (ja) キャッシュ競合管理システム、リソース割当サーバおよびリソース割当方法
KR101671119B1 (ko) 클라우드 컴퓨팅 시스템의 자원 관리 방법
CN106325972B (zh) 一种虚拟机管理方法及网络设备
US20220229689A1 (en) Virtualization platform control device, virtualization platform control method, and virtualization platform control program

Legal Events

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