KR101578177B1 - 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템 - Google Patents

클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템 Download PDF

Info

Publication number
KR101578177B1
KR101578177B1 KR1020140121159A KR20140121159A KR101578177B1 KR 101578177 B1 KR101578177 B1 KR 101578177B1 KR 1020140121159 A KR1020140121159 A KR 1020140121159A KR 20140121159 A KR20140121159 A KR 20140121159A KR 101578177 B1 KR101578177 B1 KR 101578177B1
Authority
KR
South Korea
Prior art keywords
physical
machine
virtual machine
physical machine
machines
Prior art date
Application number
KR1020140121159A
Other languages
English (en)
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 KR1020140121159A priority Critical patent/KR101578177B1/ko
Application granted granted Critical
Publication of KR101578177B1 publication Critical patent/KR101578177B1/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
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Abstract

본 발명에 따른 클라우드 컴퓨팅 시스템은 복수 개의 물리 머신 및 가상 머신과 물리 머신의 마이그레이션을 위한 서버를 포함하고, 복수 개 개의 물리 머신 중 하나 이상은 가상 머신을 하나 이상 포함하고, 서버는 물리 머신에 포함된 가상 머신 간의 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신을 선택할 수 있다. 그리고 복수 개의 물리 머신의 자원 이용률에 기초하여 선택된 마이그레이션 대상 가상 머신의 목적지 물리 머신을 선택하여, 마이그레이션 대상 가상 머신을 선택된 목적지 물리 머신으로 마이그레이션 한다.

Description

클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템{METHOD AND SYSTEM FOR MIGRATION BASED ON RESOURCE UTILIZATION RATE IN CLOUD COMPUTING}
본 발명은 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 이를 제공하기 위한 시스템에 관한 것이다.
클라우드 컴퓨팅 시스템(cloud computing system)은 하나의 물리 머신(physical machine)에 복수 개의 가상 머신(virtual machine)을 포함하여 자원(resource)의 효율성을 높일 수 있다. 그러나 클라우드 컴퓨팅 시스템은 물리 머신에 포함된 가상 머신에 과중한 부하(load)가 발생하면 병목 현상 등의 문제를 일으키게 되며 이로 인하여 전체 클라우드 컴퓨팅 시스템의 성능 및 서비스의 품질(quality of service; QoS)이 저하될 수 있다. 그러므로 다양한 가상 머신이 활용하는 자원의 이용률을 고려하여 자원을 효율적으로 분산하는 것이 클라우드 컴퓨팅 시스템에서 중요한 이슈이다.
특히, 클라우드 컴퓨팅 시스템에서는 시스템 및 자원의 이용률을 고려하여 자원의 로드 밸런싱(load balancing)에 최적화된 마이그레이션(migration) 방법이 필요하다. 클라우드 컴퓨팅 시스템에서 마이그레이션은 실행 중인 가상 머신이 한 물리 머신에서 다른 물리 머신으로 서비스의 중단 없이 이전하는 것을 의미한다.
클라우드 컴퓨팅 시스템에서 로드 밸런싱을 위한 마이그레이션 방법에 대한 기존 발명은 다음과 같다.
한국 공개특허공보 제2012-0118271호(발명의 명칭: "가상 머신 이동 대상 선택 방법")는 복수의 물리 머신 중에서 가상 머신을 이동시킬 대상 물리 머신을 선택하는 것으로, 복수의 물리 머신 간의 로드 밸런싱 및 스페이스 밸런싱을 수행하는 방법을 개시하고 있다. 이를 위하여, 이 발명은 가상 머신 생성에 필요한 자원 용량과 물리 머신의 자원 잔여 용량을 비교하여 물리머신의 제 1 집단을 선택한다. 그런 다음, 제 1 집단에서 단위 시간 동안 실행 대기 중인 프로세서의 평균 개수가 로드 밸런싱 기준보다 적은 집단을 선택하여 마이그레이션을 수행한다.
이와 더불어, 한국 공개특허공보 제2013-0019698호(발명의 명칭: "사용자 스케줄러와 마이그레이션(Migration)을 통한 자원 최적화 방법 및 시스템")는 자원 최적화를 위하여 가상 머신의 사용자의 시스템 스케줄링을 이용하는 마이그레이션 방법을 개시하고 있다.
본 발명의 본 실시예는 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 이를 제공하기 위한 시스템을 제공하는 데 그 목적이 있다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예에 따른 자원 이용률에 기초한 마이그레이션을 위한 클라우드 컴퓨팅 시스템은 복수 개의 물리 머신 및 가상 머신과 물리 머신의 마이그레이션을 위한 서버를 포함하고, 복수 개 개의 물리 머신 중 하나 이상은 가상 머신을 하나 이상 포함하고, 서버는 물리 머신에 포함된 가상 머신 간의 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신을 선택할 수 있다. 그리고 복수 개의 물리 머신의 자원 이용률에 기초하여 선택된 마이그레이션 대상 가상 머신의 목적지 물리 머신을 선택하여, 마이그레이션 대상 가상 머신을 선택된 목적지 물리 머신으로 마이그레이션 한다.
또한, 본 발명의 일 실시예에 따른 자원 이용률에 기초한 마이그레이션을 위한 클라우드 컴퓨팅 서버의 마이그레이션 방법은 복수 개의 물리 머신에 포함된 가상 머신 간에 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신을 선택하는 단계; 복수 개의 물리 머신의 자원 이용률에 기초하여 선택된 마이그레이션 대상 가상 머신의 목적지 물리 머신을 선택하는 단계; 및 마이그레이션 대상 가상 머신을 선택된 목적지 물리 머신으로 마이그레이션 하는 단계를 포함한다. 이때, 복수 개의 물리 머신 중 하나 이상은 가상 머신을 하나 이상 포함한다.
전술한 과제 해결 수단 중 어느 하나에 의하면, 본 발명의 일 실시예는 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템을 제공할 수 있으며, 이로 말미암아 관련 사업 전반에서 다양한 파급 효과를 기대할 수 있다.
본 발명에 따른 마이그레이션 방법 및 시스템은 자원의 이용률을 고려하여 마이그레이션을 수행하므로 로드 밸런싱을 고려한 클라우드 컴퓨팅 시스템을 제공할 수 있다.
또한, 본 발명에 따른 마이그레이션 방법 및 시스템은 클라우드 컴퓨팅 시스템의 성능 저하를 방지할 수 있으며, 서비스 품질 및 서비스의 균등성을 보장할 수 있다.
도 1은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템을 개략적으로 도시한 구성도이다.
도 2는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 물리 머신을 개략적으로 도시한 구성도이다.
도 3은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 가상 머신을 개략적으로 도시한 구성도이다.
도 4는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 물리 머신 및 가상 머신의 관계를 설명하기 위하여 물리 머신 및 가상 머신을 개략적으로 도시한 구성도이다.
도 5는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 마이그레이션 방법을 설명하기 위한 순서도이다.
도 6은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 마이그레이션 방법에서 마이그레이션 대상 가상 머신을 선택하는 단계를 설명하기 위한 순서도이다.
도 7은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 마이그레이션 방법에서 마이그레이션 대상 가상 머신을 선택하는 알고리즘에 대한 의사코드이다.
도 8은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 마이그레이션 방법에서 본 발명의 마이그레이션 대상 가상 머신의 목적지 물리 머신을 선택하는 단계를 설명하기 위한 순서도이다.
도 9는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템의 마이그레이션 방법에서 본 발명의 마이그레이션 대상 가상 머신의 목적지 물리 머신을 선택하는 알고리즘에 대한 의사코드이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
먼저, 도 1 내지 도 4를 이용하여 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)을 설명한다.
도 1은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)을 개략적으로 도시한 구성도이다. 도 2는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 물리 머신(200)을 개략적으로 도시한 구성도이다. 도 3은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 가상 머신(300)을 개략적으로 도시한 구성도이다. 도 4는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 물리 머신(200) 및 가상 머신(300)의 관계를 설명하기 위하여 물리 머신(200) 및 가상 머신(300)을 개략적으로 도시한 구성도이다.
본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)은 복수 개의 물리 머신(200), 가상 머신(300) 및 물리 머신(200)의 마이그레이션을 위한 서버(100)를 포함한다. 또한, 복수 개의 물리 머신(200) 중 하나 이상은 가상 머신(300)을 하나 이상 포함한다.
이때, 도 1에 도시된 클라우드 컴퓨팅 시스템(10)을 구성하는 각 구성요소는 네트워크(network)를 통해 연결될 수 있다. 네트워크는 단말 및 서버와 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 이러한 네트워크(network)의 일 예에는 3GPP(3rd Generation Partnership Project) 네트워크, LTE(Long Term Evolution) 네트워크, WIMAX(World Interoperability for Microwave Access) 네트워크, 인터넷(Internet), LAN(Local Area Network), Wireless LAN(Wireless Local Area Network), WAN(Wide Area Network), PAN(Personal Area Network), 블루투스(Bluetooth) 네트워크, 위성 방송 네트워크, 아날로그 방송 네트워크, DMB(Digital Multimedia Broadcasting) 네트워크 등이 포함되나 이에 한정되지는 않는다.
도 1에 도시된 서버(100)는 클라우드 컴퓨팅 시스템(10)에서 네트워크를 통해 물리 머신(200) 및 가상 머신(300)을 관리하고 서비스를 제공하는 것이다. 서버(100)는 서버 컴퓨터(server computer), 워크스테이션(workstation), 데스크톱 컴퓨터(desktop computer) 및 노트북 컴퓨터(notebook computer) 등 일반적인 컴퓨팅 시스템에 서버 소프트웨어(server software) 형태로 설치되거나, 하드웨어 형태로 탑재될 수 있다.
도 2를 참조하면, 물리 머신(200)은 프로세서(210), 메모리(220) 및 네트워크 모듈(230) 등을 포함하는 실제 하드웨어를 탑재한 컴퓨팅 장치이다. 예를 들어 물리 머신(200)은 서버 컴퓨터(server computer), 워크스테이션(workstation), 데스크톱 컴퓨터(desktop computer) 및 노트북 컴퓨터(notebook computer) 등 일반적인 컴퓨팅 장치를 포함할 수 있다.
또한, 도 3을 참조하면, 가상 머신(300)은 가상화된 프로세서(310), 가상화된 메모리(320) 및 가상화된 네트워크 모듈(330) 등을 포함하는 가상화된 컴퓨팅 장치이다. 가상 머신(300)은 물리 머신(200)에 포함되며, 가상화된 컴퓨팅 환경을 소프트웨어로 구현한 것이다. 그러므로 가상 머신(300)은 물리 머신(200)의 자원을 이용하여 운영 체제(operating system)나 응용 프로그램을 설치하고 실행할 수 있다. 가상 머신(300)은 가상 머신(300)에 설치된 운영 체제를 이용하여 물리 머신(200)의 자원에 직접 접근하여 실행하거나, 물리 머신(200)에 설치된 호스트 운영체제를 이용하여 자원에 접근하여 실행할 수 있다.
도 4를 참조하여 물리 머신(200) 및 가상 머신(300)의 관계를 설명하면 다음과 같다. 물리 머신(200)은 하이퍼바이저(hypervisor; 250)를 이용하여 물리 머신(200)에 포함된 하나 이상의 가상 머신(300)을 관리할 수 있다. 하이퍼바이저(250)는 물리 머신(200)에서 복수 개의 가상 머신(300)의 운영 체제를 동시에 실행하기 위한 논리적 플랫폼(logical platform)이다. 가상 머신(300)은 이러한 하이퍼바이저(250)를 이용하여 물리 머신(200)의 하드웨어 장치(240)를 가상화(virtualization)하여 이용할 수 있다.
본 발명의 일 실시예에 따른 서버(100)는 물리 머신(200)에 포함된 가상 머신(300) 간의 네트워크 종속성(network dependency)에 기초하여 마이그레이션 대상 가상 머신(300)을 선택하고, 복수 개의 물리 머신(200)의 자원 이용률에 기초하여 선택된 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택하여, 마이그레이션 대상 가상 머신(300)을 선택된 목적지 물리 머신(200)으로 마이그레이션 한다.
이때, 네트워크 종속성은 네트워크 종속성을 계산하는 가상 머신(300)과 상이한 가상 머신(300)의 네트워크 전송량에 기초하여 계산될 수 있다. 예를 들어, 복수 개의 물리 머신 중 제 1 물리 머신에 포함된 제 1 가상 머신 및 제 2 가상 머신 간에 네트워크 전송량이 있다면, 두 가상 머신 간에는 네트워크 종속성이 있다고 할 수 있다. 이 경우에 제 1 가상 머신이 제 2 물리 머신으로 마이그레이션 하면 제 1 물리 머신과 제 2 물리 머신 간의 네트워크 전송량이 증가하게 된다. 그러므로 전체 클라우드 컴퓨팅 시스템(10)의 네트워크 부하는 증가할 수 있다.
그러나 제 1 물리 머신에 포함되지만, 제 1 가상 머신 및 제 2 가상 머신과의 네트워크 통신을 하지 않아 네트워크 종속성이 없는 제 3 가상 머신을 제 2 물리 머신으로 마이그레이션 하면, 제 1 물리 머신과 제 2 물리 머신 간의 네트워크 전송량은 증가하지 않아 전체 클라우드 컴퓨팅 시스템(10)의 네트워크 부하에 영향을 미치지 않을 수 있다.
그러므로 이러한 네트워크 종속성을 이용하여 서버(100)는 복수 개의 물리 머신에 포함된 가상 머신 중 어느 하나의 가상 머신(300)과 어느 하나의 가상 머신(300)을 제외한 나머지 가상 머신(300) 간의 각각의 네트워크 전송량에 기초하여 네트워크 종속성을 계산하고, 복수 개의 물리 머신(200)에 포함된 가상 머신(300) 중 네트워크 종속성이 가장 작은 가상 머신(300)을 마이그레이션 대상 가상 머신(300)으로 선택할 수 있다.
또한, 마이그레이션 대상 가상 머신(300)이 선택된 다음 서버(100)는 선택된 마이그레이션 대상 가상 머신(300)의 자원 이용률 및 물리 머신(200)의 자원 이용률에 기초하여 목적지 물리 머신(200)을 선택할 수 있다.
구체적으로, 서버(100)는 마이그레이션 대상 가상 머신(300)과 자원 이용률 벡터의 내적을 계산하여 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택할 수 있다. 예를 들어, 서버(100)는 클라우드 컴퓨팅 시스템(10)의 로드 밸런싱을 위하여 마이그레이션 대상 가상 머신(300)의 자원 이용률과 보완이 될 수 있도록 자원 이용률 벡터의 내적 값이 작은 물리 머신(200)을 선택할 수 있다.
또한, 자원 이용률은 물리 머신(200) 및 가상 머신(300)에 포함된 자원의 사용량에 기초하여 계산될 수 있다. 이때, 자원은 물리 머신(200)에 포함된 하드웨어 장치(240) 및 가상 머신(300)에 포함된 가상화된 하드웨어 장치가 될 수 있다. 그리고 벡터의 내적을 계산하기 위하여 물리 머신(200) 및 가상 머신(300)에 대한 자원의 사용량을 벡터로 표현할 수 있다.
도 2 및 도 4에서 도시된 것처럼 본 발명의 일 실시예에 따른 물리 머신(200)은 프로세서(210), 메모리(220) 및 네트워크 모듈(230)을 포함할 수 있다. 그리고 도 3 및 도 4에 도시된 것처럼 본 발명의 일 실시예에 따른 가상 머신(300)은 물리 머신(200)에 대응하는 가상화된 프로세서(310), 가상화된 메모리(320) 및 가상화된 네트워크 모듈(330)을 포함할 수 있다.
이에 따라, 물리 머신(200)의 자원 이용률은 물리 머신(200)에 포함된 프로세서(210)의 사용량, 메모리(220)의 사용량 및 네트워크 모듈(230)의 사용량을 기초로 계산할 수 있다. 또한, 가상 머신(300)의 자원 이용률은 가상 머신(300)에 포함된 가상화된 프로세서(310)의 사용량, 가상화된 메모리(320)의 사용량 및 가상화된 네트워크 모듈(330)의 사용량을 기초로 계산될 수 있다.
이렇게 계산된 물리 머신(200) 및 가상 머신(300)의 자원 이용률은 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택하기 위하여 활용될 수 있다.
목적지 물리 머신(200)을 선택하기 위하여 서버(100)는 물리 머신(200)에 포함된 프로세서(210), 메모리(220) 및 네트워크 모듈(230)의 사용량을 각각 측정하고, 측정된 사용량에 따라 프로세서(210), 메모리(220) 및 네트워크 모듈(230)의 순위를 설정할 수 있다. 또한, 가상 머신(300)에 포함된 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 사용량을 각각 측정하고, 측정된 사용량에 따라 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 순위를 설정할 수 있다. 이때, 복수 개의 물리 머신(200) 중 순위가 동일한 물리 머신(200)을 동일한 그룹으로 분류할 수 있다.
예를 들어, 복수 개의 물리 머신 중 제 1 물리 머신에 포함된 자원의 사용량이 프로세서, 네트워크 모듈, 메모리 순으로 높고, 제 2 물리 머신에 포함된 자원의 사용량이 네트워크 모듈, 프로세서, 메모리 순으로 높고, 제 3 물리 머신에 포함된 자원의 사용량이 프로세서, 네트워크 모듈, 메모리 순으로 높다면, 동일한 자원의 사용량을 가지는 제 1 물리 머신과 제 2 물리 머신을 동일한 그룹으로 분류할 수 있다.
이와 같이 그룹이 분류되면, 프로세서를 "C" 메모리를 "M", 네트워크 모듈을 "I"로 표기하여 그룹의 이름을 정할 수 있다. 예를 들어, 자원 사용량 순위에 따라 제 1 물리 머신과 제 3 물리 머신이 포함하는 그룹의 이름은 "CIM" 수 있으며, 제 2 물리 머신이 포함되는 그룹의 이름은 "ICM"이 될 수 있다.
이렇게 물리 머신(200)의 그룹을 분류한 다음 서버(100)는 가상 머신(300)의 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 순위에 기초하여 분류된 물리 머신(200)의 그룹을 선택하고, 선택된 물리 머신(200)의 그룹에 포함된 물리 머신(200) 중 목적지 물리 머신(200)을 선택할 수 있다.
이때, 가상 머신(300)은 클라우드 컴퓨팅 시스템(10)의 로드 밸런싱을 위하여 가상 머신의 자원 이용률을 보완할 수 있는 물리 머신(200)을 선택할 수 있다. 그래서, 본 발명의 일 실시예는 가상 머신과 보완적인 물리 머신의 그룹을 선택하고, 그 물리 머신의 그룹에 포함된 물리 머신(200) 중 자원 이용률 내적이 가장 작은 물리 머신(200)을 목적지 물리 머신(200)으로 선택할 수 있다. 이렇게 본 발명의 일 실시예는 물리 머신의 그룹을 이용하여 목적지 물리 머신(200)을 선택하여 로드 밸런싱을 고려한 클라우드 컴퓨팅 시스템(10)을 제공할 수 있다.
예를 들어, 복수의 가상 머신 중 제 1 가상 머신에 포함된 자원의 사용량이 메모리, 네트워크 모듈, 프로세서 순으로 높다면, 제 1 가상 머신의 목적지 물리 머신의 그룹은 자원의 사용량 순위가 반대로 분포한 "CIM" 그룹이 될 수 있다. 즉, 제 1 가상 머신은 "CIM" 그룹에 포함된 제 1 물리 머신 및 제 3 물리 머신과의 자원 이용률 내적을 통해 목적지 물리 머신(200)을 선택할 수 있다.
또한, 자원 사용량의 순위가 반대인 물리 머신의 그룹이 없는 경우 서버(100)는 우선순위에 따라 물리 머신의 그룹을 선택할 수 있다. 우선순위는 해당 자원에 대한 클라우드 컴퓨팅 시스템(10)의 부하가 높아져 심각한 클라우드 컴퓨팅 시스템(10)의 성능 저하가 발생하는 경우, 해당 자원의 부하를 줄이는 방향으로 마이그레이션을 수행하기 위하여 사용될 수 있다. 그러므로 우선순위는 클라우드 컴퓨팅 시스템(10)의 환경에 따라 달라질 수 있다.
예를 들어, 임의의 클라우드 컴퓨팅 시스템에서 네트워크 모듈의 사용량이 많거나, 네트워크 사용량에 따라 클라우드 컴퓨팅 시스템의 부하가 높아져 심각한 클라우드 컴퓨팅 시스템의 성능 저하가 발생할 수 있는 경우, 이 클라우드 컴퓨팅 시스템은 네트워크 모듈의 부하를 줄이는 방향으로 마이그레이션을 수행할 수 있다. 그러므로 즉, "CIM" 그룹에 포함된 물리 머신이 없는 경우에는 "MIC" 그룹에 포함된 물리 머신을 대상으로 목적지 물리 머신을 선정할 수 있다.
다음은 도 5 내지 도 9를 이용하여 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법을 설명한다.
도 5는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법을 설명하기 위한 순서도이다. 도 6은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법에서 마이그레이션 대상 가상 머신(300)을 선택하는 단계를 설명하기 위한 순서도이다. 도 7은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법에서 마이그레이션 대상 가상 머신(300)을 선택하는 알고리즘에 대한 의사코드(pseudo code)이다. 도 8은 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법에서 본 발명의 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택하는 단계를 설명하기 위한 순서도이다. 도 9는 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법에서 본 발명의 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택하는 알고리즘에 대한 의사코드이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법은 복수 개의 물리 머신(200)에 포함된 가상 머신(300) 간의 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신(300)을 선택하고(S500), 복수 개의 물리 머신(200)의 자원 이용률에 기초하여 선택된 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택한다(S510). 클라우드 컴퓨팅 시스템(10)은 이렇게 선택된 마이그레이션 대상 가상 머신(300)을 선택된 목적지 물리 머신(200)으로 마이그레이션 한다(S520). 여기에서 복수 개의 물리 머신(200) 중 하나 이상은 가상 머신(300)을 하나 이상 포함한다.
이때, 물리 머신(200)은 앞에서 설명한 것과 같이 프로세서(210), 메모리(220) 및 네트워크 모듈(230) 등을 포함하는 실제 하드웨어를 탑재한 컴퓨팅 장치이다.
또한, 가상 머신(300)은 앞에서 설명한 것과 같이 가상화된 프로세서(310), 가상화된 메모리(320) 및 가상화된 네트워크 모듈(330) 등을 포함하는 가상화된 컴퓨팅 장치이다. 가상 머신(300)은 물리 머신(200)에 포함되며, 물리 머신(200)에서 가상화된 컴퓨팅 환경을 소프트웨어로 구현한 것이다. 그러므로 가상 머신(300)은 물리 머신(200)의 자원을 이용하여 운영 체제(operating system)나 응용 프로그램을 설치하고 실행할 수 있다. 가상 머신(300)은 가상 머신(300)에 설치된 운영 체제를 이용하여 물리 머신(200)의 자원을 직접 접근하여 실행하거나, 물리 머신(200)에 설치된 호스트 운영체제를 이용하여 자원에 접근하여 실행할 수 있다.
그리고 네트워크 종속성은 앞에서 설명한 것과 같이 네트워크 종속성을 계산하는 가상 머신(300)이 다른 가상 머신(300)의 네트워크 전송량을 기초로 계산될 수 있다. 예를 들어 본 발명의 일 실시예는 같은 물리 머신(200)에 속한 가상 머신 간의 네트워크 전송량이 많은 경우 네트워크 종속성이 크다고 할 수 있다.
도 6을 참조하면 클라우드 컴퓨팅 시스템(10)의 마이그레이션 방법은 마이그레이션 대상 가상 머신(300)을 선택하기 위하여(S500) 복수 개의 물리 머신에 포함된 가상 머신 중 어느 하나의 가상 머신(300)과 어느 하나의 가상 머신(300)을 제외한 나머지 가상 머신 간의 각각의 네트워크 전송량에 기초하여 네트워크 종속성을 계산하고(S501), 복수 개의 물리 머신(200)에 포함된 가상 머신 중 네트워크 종속성이 가장 작은 가상 머신을 마이그레이션 대상 가상 머신으로 선택할 수 있다(S502).
예를 들어, 마이그레이션 대상 가상 머신은 도 7의 알고리즘을 이용할 수 있다. 마이그레이션 대상 가상 머신을 선택하는 알고리즘은 과부하 된 물리 머신(200)에 포함된 하나 이상의 가상 머신의 집합을 입력으로 한다. 그리고 마이그레이션 대상 가상 머신을 선택하는 알고리즘은 과부하 된 물리 머신(200)에 포함된 하나 이상의 가상 머신(300)에 대하여 네트워크 종속성을 계산하고, 네트워크 종속성이 없는 가상 머신 리스트와 네트워크 종속성이 있는 가상 머신 리스트를 생성하고 마이그레이션 대상 가상 머신(300)을 선정하여 출력한다.
이때, 마이그레이션 대상 가상 머신(300)은 네트워크 종속성이 없는 가상 머신 리스트가 존재하는 경우, 이 리스트에서 가장 네트워크 전송량이 적은 가상 머신(300)을 선정한다. 반대로 네트워크 종속성이 없는 가상 머신 리스트가 존재하지 않은 경우, 네트워크 종속성이 있는 가상 머신 리스트에서 네트워크 종속성이 가장 작은 가상 머신(300)을 마이그레이션 대상 가상 머신(300)으로 선정한다.
이렇게 마이그레이션 방법은 네트워크 종속성이 작은 가상 머신(300)을 마이그레이션 대상 가상 머신(300)으로 선정한 다음 마이그레이션 목적지 물리 머신(200)을 선정할 수 있다. 이때, 마이그레이션 방법은 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선정하기 위하여 마이그레이션 대상 가상 머신(300)의 자원 이용률 및 물리 머신(200)의 자원 이용률에 기초하여 목적지 물리 머신(200)을 선택할 수 있다.
또한, 자원 이용률은 물리 머신(200) 및 가상 머신(300)에 포함된 자원의 사용량을 기초로 계산될 수 있다. 이때, 자원은 물리 머신(200)에 포함된 하드웨어 장치(240) 및 가상 머신(300)에 포함된 가상화된 하드웨어 장치가 될 수 있다. 그리고 마이그레이션 방법은 벡터의 내적을 계산하기 위하여 물리 머신(200) 및 가상 머신(300)에 대한 자원의 사용량을 벡터로 표현할 수 있다.
한편, 물리 머신(200)은 프로세서(210), 메모리(220) 및 네트워크 모듈(230)을 포함하고, 가상 머신(300)은 물리 머신(200)에 대응하는 가상화된 프로세서(310), 가상화된 메모리(320) 및 가상화된 네트워크 모듈(330)을 포함할 수 있다.
이에 따라, 물리 머신(200)의 자원 이용률은 물리 머신(200)에 포함된 프로세서(210)의 사용량, 메모리(220)의 사용량 및 네트워크 모듈(230)의 사용량을 기초로 계산할 수 있다. 또한, 가상 머신(300)의 자원 이용률은 가상 머신(300)에 포함된 가상화된 프로세서(310)의 사용량, 가상화된 메모리(320)의 사용량 및 가상화된 네트워크 모듈(330)의 사용량을 기초로 계산될 수 있다.
도 8에서처럼 먼저 마이그레이션 대상 가상 머신(300)의 목적지 물리 머신(200)을 선택하기 위하여 마이그레이션 방법은 복수 개의 물리 머신(200)의 프로세서(210), 메모리(220) 및 네트워크 모듈(230)의 사용량을 각각 측정하고, 측정된 사용량에 따라 프로세서(210), 메모리(220) 및 네트워크 모듈(230)의 순위를 설정할 수 있다(S511). 다음으로 마이그레이션 방법은 가상 머신(300)에 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 사용량을 각각 측정하고, 측정된 사용량에 따라 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 순위를 설정할 수 있다(S512). 이렇게 가상 머신의 순위를 설정한 다음에는 마이그레이션 방법은 복수 개의 물리 머신(200) 중 순위가 동일한 물리 머신(200)을 동일한 그룹으로 분류하고(S513), 분류된 물리 머신의 그룹을 이용하여 목적지 물리 머신(200)을 선택할 수 있다(S515).
이때, 물리 머신의 그룹은 앞에서 설명한 것과 같이 동일한 자원 이용 순위를 가지는 물리 머신(200)을 동일한 그룹으로 분류한 것이다.
본 발명의 일 실시예에 따른 마이그레이션 방법은 물리 머신의 그룹을 이용하여 목적지 물리 머신(200)을 선택하기 위하여(S515) 가상 머신(300)의 가상화된 프로세서(310), 메모리(320) 및 네트워크 모듈(330)의 순위에 기초하여 분류된 물리 머신의 그룹을 선택하고(S514), 선택된 물리 머신의 그룹에 포함된 물리 머신(200) 중 목적지 물리 머신(200)을 선택할 수 있다(S515).
이때, 가상 머신(300)은 클라우드 컴퓨팅 시스템(10)의 로드 밸런싱을 위하여 자원 이용률의 분포가 상이한 물리 머신(200)을 선택할 수 있다. 그러기 위하여 앞에서 설명한 것과 같이 가상 머신(200)과 자원 이용률이 보완적인 물리 머신의 그룹을 선택하고, 그 물리 머신의 그룹에 포함된 물리 머신(200) 중 자원 이용률 내적이 가장 작은 물리 머신(200)을 목적지 물리 머신(200)으로 선택할 수 있다. 이렇게 본 발명의 일 실시예는 물리 머신의 그룹을 이용하여 목적지 물리 머신(200)을 선택하여 로드 밸런싱을 고려한 마이그레이션 방법을 제공할 수 있다.
예를 들어, 목적지 물리 머신(200)을 선택하는 것은 도 9의 알고리즘을 이용할 수 있다. 목적지 물리 머신(200)을 선택하는 알고리즘은 마이그레이션 대상 가상 머신(300) 및 물리 머신의 그룹을 입력으로 하고, 목적지 물리 머신(200)을 출력으로 한다. 먼저, 목적지 물리 머신(200)을 선택하는 알고리즘은 부하를 줄이는 방향으로 마이그레이션을 수행하기 위하여 마이그레이션 대상 가상 머신(300)의 자원 이용률 순위의 분포와 반대인 물리 머신의 그룹이 먼저 선택된다. 만약, 순위의 분포가 반대인 물리 머신의 그룹이 없는 경우에는 미리 정해진 우선순위에 따라, 물리 머신의 그룹을 선택하게 된다.
그리고 목적지 물리 머신(200)을 선택하는 알고리즘은 선택된 물리 머신의 그룹에 포함된 물리 머신(200)을 대상으로 마이그레이션 대상 가상 머신(300)과의 내적을 구하고, 내적이 가장 작은 값을 가지는 물리 머신(200)을 목적지 물리 머신(200)으로 선택하게 된다.
이렇게, 본 발명의 일 실시예에 따른 마이그레이션 방법 및 시스템은 자원의 이용률을 고려하여 마이그레이션을 수행하므로 로드 밸런싱을 고려한 클라우드 컴퓨팅 시스템을 제공할 수 있다.
또한, 본 발명의 일 실시예에 따른 마이그레이션 방법 및 시스템은 클라우드 컴퓨팅 시스템의 성능 저하를 방지할 수 있으며, 서비스 품질 및 서비스의 균등성을 보장할 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스 될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍처를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 클라우드 컴퓨팅 시스템 100: 서버
200: 물리 머신 300: 가상 머신

Claims (12)

  1. 클라우드 컴퓨팅 시스템에 있어서,
    복수 개의 물리 머신을 포함하는 하나 이상의 물리 머신 그룹 및
    가상 머신 및 상기 물리 머신의 마이그레이션을 위한 서버를 포함하되,
    상기 복수 개의 물리 머신 중 하나 이상은 상기 가상 머신을 하나 이상 포함하고,
    상기 서버는 상기 물리 머신에 포함된 가상 머신 간의 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신을 선택하고,
    상기 선택된 마이그레이션 대상 가상 머신의 자원 이용률을 산출하며, 상기 하나 이상의 물리 머신 그룹 중 상기 산출된 가상 머신의 자원 이용률과 상이한 물리 머신 그룹을 선택하고,
    상기 선택된 물리 머신 그룹에 포함된 하나 이상의 물리 머신 중 어느 하나에 상기 마이그레이션 대상 가상 머신을 마이그레이션 하되,
    상기 물리 머신 그룹은 물리 머신에 대한 자원 이용률에 기초하여 분류된 것이고,
    상기 물리 머신의 자원 이용률은 상기 물리 머신에 포함된 하나 이상의 자원에 대한 사용량에 기초하여 산출된 것이며,
    상기 가상 머신의 자원 이용률은 상기 가상 머신에 포함된 하나 이상의 가상화된 자원에 대한 사용량에 기초하여 산출된 것인, 클라우드 컴퓨팅 시스템.
  2. 제 1 항에 있어서,
    상기 서버는 상기 복수 개의 물리 머신에 포함된 가상 머신 중 어느 하나의 가상 머신과 상기 어느 하나의 가상 머신을 제외한 나머지 가상 머신 간의 각각의 네트워크 전송량에 기초하여 상기 가상 머신에 대한 네트워크 종속성을 계산하고,
    상기 복수 개의 물리 머신에 포함된 가상 머신 중 상기 네트워크 종속성이 가장 작은 가상 머신을 마이그레이션 대상 가상 머신으로 선택하는, 클라우드 컴퓨팅 시스템.
  3. 삭제
  4. 제 1 항에 있어서,
    상기 물리 머신에 포함된 자원은 프로세서, 메모리 및 네트워크 모듈이고,
    상기 가상 머신에 포함된 자원은 상기 물리 머신의 프로세서에 대응하여 가상화된 프로세서, 상기 물리 머신의 메모리에 대응하여 가상화된 메모리 및 상기 물리 머신의 네트워크 모듈에 대응하여 가상화된 네트워크 모듈인, 클라우드 컴퓨팅 시스템.
  5. 제 4 항에 있어서
    상기 서버는 상기 복수 개의 물리 머신에 포함된 프로세서, 메모리 및 네트워크 모듈에 대한 사용량을 각각 측정하고, 상기 각각 측정된 사용량에 따라 상기 물리 머신에 포함된 프로세서, 메모리 및 네트워크 모듈에 대한 순위를 설정하여 상기 물리 머신의 자원 이용률을 산출하고, 상기 산출된 물리 머신의 자원 이용률에 포함된 순위가 동일한 하나 이상의 물리 머신을 동일한 그룹으로 분류하며,
    상기 가상 머신에 포함된 가상화된 프로세서, 가상화된 메모리 및 가상화된 네트워크 모듈에 대한의 사용량을 각각 측정하고, 상기 각각 측정된 사용량에 따라 상기 가상 머신의 가상화된 프로세서, 가상화된 메모리 및 가상화된 네트워크 모듈의 순위를 설정하여 상기 가상 머신의 자원 이용률을 산출하는, 클라우드 컴퓨팅 시스템.
  6. 제 5 항에 있어서,
    상기 서버는 상기 가상 머신에 포함된 자원에 대한 순위와 하나 이상의 물리 머신 그룹에 포함된 자원에 대한 순위를 비교하고,
    상기 하나 이상의 물리 머신 그룹 중 상기 가상 머신에 포함된 자원의 순위와 반대인 물리 머신 그룹을 상기 가상 머신과 자원 이용률이 상이한 물리 머신으로 선택하는, 클라우드 컴퓨팅 시스템.
  7. 클라우드 컴퓨팅 서버의 마이그레이션 방법에 있어서,
    복수 개의 물리 머신에 포함된 가상 머신 간의 네트워크 종속성에 기초하여 마이그레이션 대상 가상 머신을 선택하는 단계;
    상기 마이그레이션 대상 가상 머신을 선택하는 단계 이후, 상기 선택된 마이그레이션 대상 가상 머신의 자원 이용률을 산출하는 단계;
    상기 가상 머신의 자원 이용률을 산출하는 단계 이후, 하나 이상의 물리 머신 그룹 중 상기 산출된 가상 머신의 자원 이용률과 상이한 물리 머신 그룹을 선택하는 단계; 및
    상기 물리 머신 그룹을 선택하는 단계로부터 선택된 물리 머신 그룹에 포함된 하나 이상의 물리 머신 중 어느 하나에 상기 마이그레이션 대상 가상 머신을 선택하는 단계로부터 선택된 상기 마이그레이션 대상 가상 머신을 마이그레이션 하는 단계를 포함하되,
    상기 복수 개의 물리 머신 중 하나 이상은 상기 가상 머신을 하나 이상 포함하고,
    상기 물리 머신 그룹은 물리 머신에 대한 자원 이용률에 기초하여 분류되고, 하나 이상의 물리 머신을 포함하고,
    상기 물리 머신의 자원 이용률은 상기 물리 머신에 포함된 하나 이상의 자원에 대한 사용량에 기초하여 산출된 것이며,
    상기 가상 머신의 자원 이용률은 상기 가상 머신에 포함된 하나 이상의 가상화된 자원에 대한 사용량에 기초하여 산출된 것인, 마이그레이션 방법.
  8. 제 7 항에 있어서,
    상기 마이그레이션 대상 가상 머신을 선택하는 단계는,
    상기 복수 개의 물리 머신에 포함된 가상 머신 중 어느 하나의 가상 머신과 상기 어느 하나의 가상 머신을 제외한 나머지 가상 머신 간의 각각의 네트워크 전송량에 기초하여 상기 네트워크 종속성을 계산하는 단계; 및
    상기 네트워크 종속성을 계산하는 단계 이후에, 상기 복수 개의 물리 머신에 포함된 가상 머신 중 상기 네트워크 종속성이 가장 작은 가상 머신을 마이그레이션 대상 가상 머신으로 선택하는 단계를 포함하는, 마이그레이션 방법.
  9. 삭제
  10. 제 7 항에 있어서,
    상기 물리 머신에 포함된 자원은 프로세서, 메모리 및 네트워크 모듈이고,
    상기 가상 머신에 포함된 자원은 상기 물리 머신의 프로세서에 대응하여 가상화된 프로세서, 상기 물리 머신의 메모리에 대응하여 가상화된 메모리 및 상기 물리 머신의 네트워크 모듈에 대응하여 가상화된 네트워크 모듈인, 마이그레이션 방법.
  11. 제 10 항에 있어서,
    상기 물리 머신을 선택하는 단계는,
    상기 복수 개의 물리 머신에 포함된 프로세서, 메모리 및 네트워크 모듈에 대한 사용량을 각각 측정하고, 상기 각각 측정된 사용량에 따라 상기 물리 머신에 포함된 프로세서, 메모리 및 네트워크 모듈에 대한 순위를 설정하여 상기 물리 머신의 자원 이용률을 산출하는 단계;
    상기 물리 머신의 자원 이용률을 산출하는 단계 이후, 상기 산출된 물리 머신의 자원 이용률에 포함된 순위가 동일한 하나 이상의 물리 머신을 동일한 그룹으로 분류하는 단계; 및
    상기 가상 머신에 가상화된 프로세서, 가상화된 메모리 및 가상화된 네트워크 모듈에 대한의 사용량을 각각 측정하고, 상기 각각 측정된 사용량에 따라 상기 가상화된 프로세서, 가상화된 메모리 및 가상화된 네트워크 모듈에 대한 순위를 설정하여 상기 가상 머신의 자원 이용률을 산출하는 단계를 포함하는, 마이그레이션 방법.
  12. 제 11 항에 있어서,
    상기 마이그레이션 대상 가상 머신을 마이그레이션 하는 단계는,
    상기 가상 머신의 자원에 대한 순위와 상기 하나 이상의 물리 머신 그룹의 자원에 대한 순위를 비교하여, 상기 가상 머신의 자원의 순위와 반대인 물리 머신 그룹을 상기 가상 머신과 자원 이용률이 상이한 물리 머신 그룹으로 선택하는 단계; 및
    상기 상이한 물리 머신을 선택하는 단계 이후, 상기 선택된 물리 머신 그룹에 포함된 물리 머신 중 상기 마이그레이션 대상 가상 머신이 마이그레이션 할 목적지 물리 머신을 선택하는 단계를 포함하는, 마이그레이션 방법.
KR1020140121159A 2014-09-12 2014-09-12 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템 KR101578177B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140121159A KR101578177B1 (ko) 2014-09-12 2014-09-12 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140121159A KR101578177B1 (ko) 2014-09-12 2014-09-12 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101578177B1 true KR101578177B1 (ko) 2015-12-16

Family

ID=55080806

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140121159A KR101578177B1 (ko) 2014-09-12 2014-09-12 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101578177B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101820269B1 (ko) * 2017-07-21 2018-01-18 건국대학교 산학협력단 마이그레이션 방법 및 시스템
KR101959055B1 (ko) * 2017-10-02 2019-07-04 광주과학기술원 멀티 가상 머신의 클라우드간 마이그레이션
KR20200013129A (ko) * 2018-07-12 2020-02-06 광주과학기술원 클라우드 컴퓨팅 시스템에서 가상 머신 재배치 방법
CN112269632A (zh) * 2020-09-25 2021-01-26 北京航空航天大学杭州创新研究院 一种优化云数据中心的调度方法和系统
KR20210046251A (ko) * 2019-10-18 2021-04-28 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
KR102262645B1 (ko) * 2020-12-31 2021-06-09 박용정 클라우드 컴퓨팅 환경에서의 리소스관리를 위한 모니터링 시스템 및 방법
KR102542149B1 (ko) * 2022-12-27 2023-06-13 오케스트로 주식회사 우선순위 기반의 장애 모니터링을 통한 가상머신 통합관리 방법 및 이를 구현하는 가상머신 통합관리 시스템
KR102613655B1 (ko) * 2023-03-31 2023-12-14 오케스트로 주식회사 이상징후 선별대응에 기반한 클라우드서버 관리 방법 및 이를 구현하는 클라우드서버 관리 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060069761A1 (en) * 2004-09-14 2006-03-30 Dell Products L.P. System and method for load balancing virtual machines in a computer network
KR20100073959A (ko) * 2008-12-22 2010-07-01 한국전자통신연구원 가상화 기반 자원 관리 장치 및 방법과 가상화 기반 자원 관리가 가능한 컴퓨팅 시스템
US20130212578A1 (en) * 2012-02-14 2013-08-15 Vipin Garg Optimizing traffic load in a communications network
US20130311988A1 (en) * 2012-05-17 2013-11-21 International Business Machines Corporation Migrating virtual machines between networked computing environments based on resource utilization

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060069761A1 (en) * 2004-09-14 2006-03-30 Dell Products L.P. System and method for load balancing virtual machines in a computer network
KR20100073959A (ko) * 2008-12-22 2010-07-01 한국전자통신연구원 가상화 기반 자원 관리 장치 및 방법과 가상화 기반 자원 관리가 가능한 컴퓨팅 시스템
US20130212578A1 (en) * 2012-02-14 2013-08-15 Vipin Garg Optimizing traffic load in a communications network
US20130311988A1 (en) * 2012-05-17 2013-11-21 International Business Machines Corporation Migrating virtual machines between networked computing environments based on resource utilization

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101820269B1 (ko) * 2017-07-21 2018-01-18 건국대학교 산학협력단 마이그레이션 방법 및 시스템
KR101959055B1 (ko) * 2017-10-02 2019-07-04 광주과학기술원 멀티 가상 머신의 클라우드간 마이그레이션
KR20200013129A (ko) * 2018-07-12 2020-02-06 광주과학기술원 클라우드 컴퓨팅 시스템에서 가상 머신 재배치 방법
KR102076626B1 (ko) * 2018-07-12 2020-05-18 광주과학기술원 클라우드 컴퓨팅 시스템에서 가상 머신 재배치 방법
KR20210046251A (ko) * 2019-10-18 2021-04-28 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
KR102248443B1 (ko) 2019-10-18 2021-05-04 건국대학교 산학협력단 서비스 이동 지원을 위한 방법 및 시스템
CN112269632A (zh) * 2020-09-25 2021-01-26 北京航空航天大学杭州创新研究院 一种优化云数据中心的调度方法和系统
CN112269632B (zh) * 2020-09-25 2024-02-23 北京航空航天大学杭州创新研究院 一种优化云数据中心的调度方法和系统
KR102262645B1 (ko) * 2020-12-31 2021-06-09 박용정 클라우드 컴퓨팅 환경에서의 리소스관리를 위한 모니터링 시스템 및 방법
KR102542149B1 (ko) * 2022-12-27 2023-06-13 오케스트로 주식회사 우선순위 기반의 장애 모니터링을 통한 가상머신 통합관리 방법 및 이를 구현하는 가상머신 통합관리 시스템
KR102613655B1 (ko) * 2023-03-31 2023-12-14 오케스트로 주식회사 이상징후 선별대응에 기반한 클라우드서버 관리 방법 및 이를 구현하는 클라우드서버 관리 시스템

Similar Documents

Publication Publication Date Title
KR101578177B1 (ko) 클라우드 컴퓨팅 환경에서의 자원 이용률에 기초한 마이그레이션 방법 및 시스템
US10891168B2 (en) Automatically scaling up physical resources in a computing infrastructure
Agarwal et al. An efficient architecture and algorithm for resource provisioning in fog computing
Ge et al. GA-based task scheduler for the cloud computing systems
Krishnamurthy et al. Pratyaastha: an efficient elastic distributed sdn control plane
US10558483B2 (en) Optimal dynamic placement of virtual machines in geographically distributed cloud data centers
US8972983B2 (en) Efficient execution of jobs in a shared pool of resources
CN102567080B (zh) 一种云计算环境中的面向负载均衡的虚拟机择位系统
Nawrocki et al. Resource usage optimization in mobile cloud computing
US20160094413A1 (en) Network Resource Governance in Multi-Tenant Datacenters
Ullah et al. Task classification and scheduling based on K-means clustering for edge computing
Taherizadeh et al. Auto-scaling applications in edge computing: Taxonomy and challenges
Mousicou et al. Performance evaluation of dynamic cloud resource migration based on temporal and capacity-aware policy for efficient resource sharing
Liao et al. AI-based software-defined virtual network function scheduling with delay optimization
Doan et al. SAP: Subchain-aware NFV service placement in mobile edge cloud
Chien et al. An efficient virtual machine migration algorithm based on minimization of migration in cloud computing
Babu et al. Interference aware prediction mechanism for auto scaling in cloud
US9471389B2 (en) Dynamically tuning server placement
Kang et al. Scheduling multiple divisible loads in a multi-cloud system
CN104683480A (zh) 一种基于应用的分布式计算方法
Ghebleh et al. A multi-criteria method for resource discovery in distributed systems using deductive fuzzy system
Ru et al. An efficient deadline constrained and data locality aware dynamic scheduling framework for multitenancy clouds
Whaiduzzaman et al. Towards enhancing resource scarce cloudlet performance in mobile cloud computing
Sonkar et al. Load prediction analysis based on virtual machine execution time using optimal sequencing algorithm in cloud federated environment
Mavromoustakis et al. Dynamic cloud resource migration for efficient 3D video processing in mobile computing environments

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180917

Year of fee payment: 4