KR101820269B1 - Method and system for migration - Google Patents
Method and system for migration Download PDFInfo
- Publication number
- KR101820269B1 KR101820269B1 KR1020170092750A KR20170092750A KR101820269B1 KR 101820269 B1 KR101820269 B1 KR 101820269B1 KR 1020170092750 A KR1020170092750 A KR 1020170092750A KR 20170092750 A KR20170092750 A KR 20170092750A KR 101820269 B1 KR101820269 B1 KR 101820269B1
- Authority
- KR
- South Korea
- Prior art keywords
- end time
- resource usage
- physical machine
- migration
- physical
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
아래 실시예들은 마이그레이션 방법 및 시스템에 관한 것이다.The following embodiments relate to a migration method and system.
클라우드 컴퓨팅(cloud computing)은 대규모의 IT 자원을 가상화 기술과 분산처리 기술을 활용하여 인터넷으로 컴퓨팅 자원(메모리, CPU, 스토리지 등)을 서비스하여 사용한 만큼의 요금을 지급하는 컴퓨팅 서비스이다. 즉, 클라우드 컴퓨팅은 서로 다른 물리적인 위치에 존재하는 컴퓨팅 자원을 가상화 기술을 통해 하나로 통합하여 제공하는 인터넷 기반 사용자 중심의 아웃소싱 서비스 기술이다.Cloud computing is a computing service that pays a large amount of IT resources for computing resources (memory, CPU, storage, etc.) by using virtualization technology and distributed processing technology. In other words, cloud computing is an Internet-based user-centered outsourcing service technology that integrates computing resources existing in different physical locations into one through virtualization technology.
이때, 클라우드 컴퓨팅을 사용하는 클라우드 컴퓨팅 시스템(cloud computing system)은 하나의 물리 머신(physical machine(PM))에 복수 개의 가상 머신(virtual machine(VM))을 포함하여 자원(resource)의 효율성을 높일 수 있다. 그러나 클라우드 컴퓨팅 시스템은 물리 머신에 포함된 가상 머신에 과중한 부하(load)가 발생하면 병목 현상 등의 문제를 일으키게 되며 이로 인하여 전체 클라우드 컴퓨팅 시스템의 성능 및 서비스의 품질(quality of service(QoS))이 저하될 수 있다. 그러므로 다양한 가상 머신이 활용하는 자원의 이용률을 고려하여 자원을 효율적으로 분산하는 것이 클라우드 컴퓨팅 시스템에서 중요한 이슈이다.In this case, a cloud computing system using cloud computing includes a plurality of virtual machines (VM) in one physical machine (PM) to increase the efficiency of resources . However, a cloud computing system causes a bottleneck problem when a load of a virtual machine included in a physical machine is overloaded, thereby causing the performance and quality of service (QoS) of the entire cloud computing system Can be degraded. Therefore, it is an important issue in a cloud computing system to distribute resources efficiently considering the utilization rate of resources utilized by various virtual machines.
특히, 클라우드 컴퓨팅 시스템에서는 시스템 및 자원의 이용률을 고려하여 자원의 로드 밸런싱(load balancing)에 최적화된 마이그레이션(migration) 방법이 필요하다. 클라우드 컴퓨팅 시스템에서 마이그레이션은 실행중인 가상 머신이 한 물리 머신에서 다른 물리 머신으로 서비스의 중단 없이 이전하는 것을 의미할 수 있다.In particular, in a cloud computing system, there is a need for a migration method that is optimized for resource load balancing in consideration of system and resource utilization. In a cloud computing system, migration can mean that a running virtual machine migrates from one physical machine to another without interruption of service.
실시예들은 마이그레이션을 통해 물리 머신의 종료 시간을 앞당겨 전체 서버 클러스터에서 최소의 활성 물리 머신 대수를 줄일 수 있는 기술을 제공할 수 있다.Embodiments can provide a technique that can shorten the end time of the physical machine through migration and reduce the minimum number of active physical machines in the entire server cluster.
또한, 실시예들은 물리 머신울 포함하고 있는 클러스터의 자원 사용률을 높이고, 전력 소모를 줄이는 기술을 제공할 수 있다.Embodiments can also provide techniques for increasing resource utilization and reducing power consumption of clusters containing physical machine wool.
일 실시예에 따른 마이그레이션 방법은 복수의 물리 머신(physical machine)의 제1 종료 시간과 제1 자원 사용량을 획득하는 단계와, 상기 물리 머신에 포함된 복수의 가상 머신(virtual machine)의 제2 종료 시간과 제2 자원 사용량을 획득하는 단계와, 상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 마이그레이션을 수행하는 단계를 포함한다.A migration method according to an embodiment includes: acquiring a first end time and a first resource usage of a plurality of physical machines; acquiring a second end of a plurality of virtual machines included in the physical machine Obtaining a time and a second resource usage; and performing migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage .
상기 마이그레이션을 수행하는 단계는, 상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신을 대상으로 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.The performing of the migration may include performing the migration on a physical machine having the longest first end time among the plurality of physical machines.
상기 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.The performing the migration may include performing the migration from a physical machine having the longest first end time to a physical machine having the shortest first end time.
상기 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하는 단계와, 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.Wherein performing the migration comprises comparing a first resource usage of the physical machine with the first end time to a first resource usage of the physical machine having the shortest first end time, And performing the migration.
상기 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 단계를 포함할 수 있다.Wherein the step of performing the migration based on the comparison result comprises the steps of: when the first resource usage of the physical machine having the first end time is longer than the first resource usage of the physical machine having the shortest first end time, And comparing the first end time with a first resource usage of the second shortest physical machine.
상기 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.And performing the migration based on the comparison result if the first resource usage of the physical machine in which the first end time is the longest is smaller than the first resource usage in the physical machine having the shortest first end time, And performing the migration from a physical machine having a first end time to a physical machine having the shortest first end time.
상기 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하는 단계와, 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.The performing the migration may include comparing a second resource usage of a virtual machine included in a physical machine having the longest first end time and a first resource usage of a physical machine having the shortest first end time, And performing the migration based on the comparison result.
상기 비교 결과에 기초하여 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 단계를 포함할 수 있다.Wherein the step of performing the migration based on the comparison result includes the step of comparing the second resource usage of the virtual machine included in the physical machine having the longest first end time with the first resource usage of the physical machine having the shortest first end time And comparing the first end time with a first resource usage of the second shortest physical machine.
상기 비교 결과에 기초하여 마이그레이션을 수행하는 단계는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계를 포함할 수 있다.Wherein the step of performing the migration based on the comparison result includes the step of comparing the second resource usage of the virtual machine included in the physical machine having the longest first end time with the first resource usage of the physical machine having the shortest first end time And performing the migration from a virtual machine included in the physical machine having the longest first end time to a physical machine having the shortest first end time when the physical end time is small.
일 실시예에 따른 마이그레이션 시스템은 복수의 물리 머신(physical machine)의 제1 종료 시간과 제1 자원 사용량을 획득하고, 상기 물리 머신에 포함된 복수의 가상 머신(virtual machine)의 제2 종료 시간과 제2 자원 사용량을 획득하고, 상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 마이그레이션을 결정하는 컨트롤러(controller)와, 상기 컨트롤러의 명령에 응답하여, 상기 복수의 물리 머신에 상기 마이그레이션을 수행하는 마이그레이션 장치를 포함할 수 있다.A migration system according to an embodiment may acquire a first end time and a first resource usage of a plurality of physical machines, and determine a second end time of a plurality of virtual machines included in the physical machine, A controller for obtaining a second resource usage and determining a migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage; And a migration device for performing the migration to the plurality of physical machines in response to the instruction of the migration device.
상기 컨트롤러는, 상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신을 대상으로 상기 마이그레이션을 결정할 수 있다.The controller can determine the migration among physical machines having the longest first end time among the plurality of physical machines.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정할 수 있다.The controller may determine the migration from a physical machine with the longest first end time to a physical machine with the shortest first end time.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하고, 비교 결과에 기초하여 상기 마이그레이션을 결정할 수 있다.The controller may compare the first resource usage of the physical machine with the first end time to the first resource usage of the physical machine having the shortest first end time and determine the migration based on the comparison result .
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교할 수 있다.Wherein when the first resource usage of the physical machine having the longest first end time is greater than the first resource usage of the physical machine having the shortest first end time, Can be compared with the first resource usage of the machine.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정할 수 있다.Wherein when the first resource usage of the physical machine with the longest first end time is smaller than the first resource usage of the physical machine with the shortest first end time, The migration can be determined to the physical machine having the shortest first end time.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하고, 비교 결과에 기초하여 상기 마이그레이션을 결정할 수 있다.Wherein the controller compares the second resource usage of the virtual machine included in the physical machine having the longest first end time and the first resource usage of the physical machine having the shortest first end time, You can decide to migrate.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교할 수 있다.When the second resource usage of the virtual machine included in the physical machine having the longest first end time is larger than the first resource usage of the physical machine having the shortest first end time, Second, it can be compared with the first resource usage of the short physical machine.
상기 컨트롤러는, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정할 수 있다.Wherein when the second resource usage of the virtual machine included in the physical machine having the longest first end time is smaller than the first resource usage of the physical machine having the shortest first end time, The migration can be determined from a virtual machine included in the longest physical machine to a physical machine having the shortest first end time.
도 1은 일 실시예에 따른 클라우드 컴퓨팅 시스템의 블록도를 나타낸다.
도 2는 도 1에 도시된 복수의 물리 머신의 블록도의 일 예를 나타낸다.
도 3은 도 1에 도시된 클라우드 컴퓨팅 시스템의 데이터 흐름의 일 예를 나타낸다.
도 4는 일 실시예에 따른 마이그레이션 방법의 순서도를 나타낸다.1 illustrates a block diagram of a cloud computing system in accordance with one embodiment.
Fig. 2 shows an example of a block diagram of a plurality of physical machines shown in Fig.
FIG. 3 shows an example of a data flow of the cloud computing system shown in FIG.
4 shows a flowchart of a migration method according to one embodiment.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.It is to be understood that the specific structural or functional descriptions of embodiments of the present invention disclosed herein are presented for the purpose of describing embodiments only in accordance with the concepts of the present invention, May be embodied in various forms and are not limited to the embodiments described herein.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Embodiments in accordance with the concepts of the present invention are capable of various modifications and may take various forms, so that the embodiments are illustrated in the drawings and described in detail herein. However, it is not intended to limit the embodiments according to the concepts of the present invention to the specific disclosure forms, but includes changes, equivalents, or alternatives falling within the spirit and scope of the present invention.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.The terms first, second, or the like may be used to describe various elements, but the elements should not be limited by the terms. The terms may be named for the purpose of distinguishing one element from another, for example without departing from the scope of the right according to the concept of the present invention, the first element being referred to as the second element, Similarly, the second component may also be referred to as the first component.
어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 “~사이에”와 “바로~사이에” 또는 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Expressions that describe the relationship between components, for example, "between" and "immediately" or "directly adjacent to" should be interpreted as well.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, “포함하다” 또는 “가지다” 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, the terms " comprises ", or " having ", and the like, are used to specify one or more of the features, numbers, steps, operations, elements, But do not preclude the presence or addition of steps, operations, elements, parts, or combinations thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the meaning of the context in the relevant art and, unless explicitly defined herein, are to be interpreted as ideal or overly formal Do not.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. Like reference symbols in the drawings denote like elements.
도 1은 일 실시예에 따른 클라우드 컴퓨팅 시스템의 블록도를 나타내고, 도 2는 도 1에 도시된 복수의 물리 머신의 블록도의 일 예를 나타내고, 도 3은 도 1에 도시된 클라우드 컴퓨팅 시스템의 데이터 흐름의 일 예를 나타낸다.FIG. 1 shows a block diagram of a cloud computing system according to an embodiment, FIG. 2 shows an example of a block diagram of a plurality of physical machines shown in FIG. 1, and FIG. 3 shows an example of a cloud computing system An example of a data flow is shown.
도 1 내지 도 3을 참조하면, 클라우드 컴퓨팅 시스템(cloud computing system; 10)은 관리 장치(100), 마이그레이션 장치(200), 및 물리 머신 클러스터(300)를 포함한다.1 to 3, a
이때, 물리 머신 클러스터(300)는 복수의 물리 머신(physical machine(PM); 300-1~300-n)을 포함할 수 있다. 복수의 물리 머신(300-1~300-n) 각각은 하이퍼바이저(hypervisor; 310) 및 복수의 가상 머신(virtual machine(VM); 320-1~320-m)을 포함할 수 있다.At this time, the
관리 장치(100)는 클라우드 컴퓨팅 시스템(10)의 전반적인 동작을 제어할 수 있다. 관리 장치(100)는 컨트롤러(controller)일 수 있다. 예를 들어, 관리 장치(100)는 마이그레이션 장치(200) 및 물리 머신 클러스터(300)의 동작을 제어할 수 있다. 즉, 관리 장치(100)는 마이그레이션 장치(200) 및 복수의 물리 머신(300-1~300-n)의 동작을 제어할 수 있다.The
관리 장치(100)는 물리 머신 클러스터(300)에 종료 시간을 결정할 수 있다(S310). 예를 들어, 관리 장치(100)는 복수의 물리 머신(300-1~300-n)의 종료 시간과 복수의 물리 머신(300-1~300-n)에 포함된 복수의 가상 머신(320-1~320-m)의 종료 시간을 결정할 수 있다. 이때, 복수의 물리 머신(300-1~300-n)의 종료 시간을 제1 종료 시간으로, 복수의 가상 머신(320-1~320-m)의 종료 시간을 제2 종료 시간으로 명명할 수 있다.The
관리 장치(100)는 복수의 가상 머신(320-1~320-m)에 대하여 제2 종료 시간을 지정할 수 있다. 예를 들어, 복수의 가상 머신(320-1~320-m)이 스포츠 중계 방송을 재생하는 경우, 관리 장치(100)는 스포츠 중계 방송의 시작 시간 및 종료 시간을 지정할 수 있다. 하이퍼바이저(310)는 관리 장치(100)가 지정한 제2 종료 시간을 복수의 가상 머신(320-1~320-m)의 시작 시간 및 종료 시간을 제어할 수 있다. 즉, 하이퍼바이저(310)는 복수의 물리 머신(300-1~300-n)에 대하여 가상화를 수행할 수 있다. 하이퍼바이저(310)는 가상화 머신 모니터(virtual machine monitor(VMM))일 수 있다.The
복수의 물리 머신(300-1~300-n)의 제1 종료 시간은 복수의 물리 머신(300-1~300-n) 각각에 포함된 복수의 가상 머신(320-1~320-m)의 제2 종료 시간에 기초하여 결정될 수 있다. 예를 들어, 제1 물리 머신(300-1)에 포함된 복수의 가상 머신(320-1~320-m) 중에서 제2 가상 머신(320-2)의 제2 종료 시간이 가장 긴(늦는) 경우, 제1 물리 머신(300-1)의 제1 종료 시간은 제2 가상 머신(320-2)의 제2 종료 시간과 동일할 수 있다.The first end time of the plurality of physical machines 300-1 to 300-n is the same as that of the plurality of virtual machines 320-1 to 320-m included in each of the plurality of physical machines 300-1 to 300- And may be determined based on a second end time. For example, if the second end time of the second virtual machine 320-2 among the plurality of virtual machines 320-1 to 320-m included in the first physical machine 300-1 is the longest (late) The first end time of the first physical machine 300-1 may be the same as the second end time of the second virtual machine 320-2.
물리 머신 클러스터(300)는 관리 장치(100)에 종료 시간(제1 종료 시간 및/또는 제2 종료 시간)을 확인할 수 있다(S320). 예를 들어, 물리 머신 클러스터(300)는 제1 종료 시간 및/또는 제2 종료 시간을 관리 장치(100)로 전송할 수 있다.The
마이그레이션 장치(200)는 관리 장치(100)에 마이그레이션을 요청할 수 있다(S330). 마이그레이션 장치(200)는 적어도 하나의 가상 머신(320-1~320-m)을 재배치 하기 위하여 마이그레이션을 요청할 수 있다. 마이그레이션 장치(200)는 관리 장치(100)의 명령에 응답하여, 적어도 하나의 가상 머신(320-1~320-m)을 다른 물리 머신(300-1~300-n 중에서 하나)으로 재배치할 수 있다.The
관리 장치(100)는 물리 머신 클러스터(300)에 자원 사용량을 결정할 수 있다(S340). 예를 들어, 관리 장치(100)는 복수의 물리 머신(300-1~300-n)의 자원 사용량과 복수의 물리 머신(300-1~300-n)에 포함된 복수의 가상 머신(320-1~320-m)의 자원 사용량을 결정할 수 있다. 이때, 복수의 물리 머신(300-1~300-n)의 자원 사용량을 제1 자원 사용량으로, 복수의 가상 머신(320-1~320-m)의 자원 사용량을 제2 자원 사용량으로 명명할 수 있다.The
물리 머신 클러스터(300)는 관리 장치(100)에 자원 사용량(제1 자원 사용량 및/또는 제2 자원 사용량)을 확인할 수 있다(S350). 예를 들어, 물리 머신 클러스터(300)는 제1 자원 사용량 및/또는 제2 자원 사용량을 관리 장치(100)로 전송할 수 있다.The
관리 장치(100)는 종료 시간 및 자원 사용량에 기초하여 마이그레이션을 결정할 수 있다(S360). 예를 들어, 관리 장치(100)는 복수의 물리 머신(300-1~300-n)의 제1 종료 시간, 제1 자원 사용량, 복수의 가상 머신(320-1~320-m)의 제2 종료 시간, 및 제2 자원 사용량 중에서 적어도 하나에 기초하여 마이그레이션을 결정할 수 있다.The
예를 들어, 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)을 대상으로 마이그레이션을 결정할 수 있다. 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)은 마이그레이션의 대상일 수 있다. 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)은 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)을 포함할 수 있다. 즉, 가장 긴(늦는) 제1 종료 시간과 가장 긴(늦는) 제2 종료 시간은 동일하고, 관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)을 대상으로 마이그레이션을 결정할 수 있다.For example, the
관리 장치(100)는 제1 종료 시간이 긴(늦는) 순서로(내림차순으로) 물리 머신(300-1~300-n)의 마이그레이션을 결정할 수 있다. 예를 들어, 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)을 대상으로 마이그레이션을 결정한 후, 제1 종료 시간이 두 번째로 긴(늦는) 물리 머신(300-1~300-n)을 대상으로 마이그레이션을 결정할 수 있다.The
관리 장치(100)는 마이그레이션의 대상이 되는 물리 머신(300-1~300-n)을 제외한 물리 머신(300-1~300-n) 중에서 하나를 목적지 물리 머신으로 결정할 수 있다. 목적지 물리 머신은 마이그레이션의 대상이 되는 물리 머신(300-1~300-n)의 가상 머신(320-1~320-m)이 재배치되는 물리 머신(300-1~300-n)을 의미할 수 있다.The
관리 장치(100)는 목적지 물리 머신을 제1 종료 시간이 짧은(빠른) 순서로(오름차순으로) 검토할 수 있다. 예를 들어, 관리 장치(100)는 마이그레이션의 대상이 되는 가상 머신(320-1~320-m)을 제1 종료 시간이 가장 짧은(빠른) 물리 머신(300-1~300-n)으로 마이그레이션을 결정할 수 있다.The
관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 제1 자원 사용량과, 제1 종료 시간이 가장 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량을 비교할 수 있다.The
제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 제1 자원 사용량이 제1 종료 시간이 가장 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량보다 큰 경우, 관리 장치(100)는 다른 물리 머신(300-1~300-n)으로 마이그레이션을 결정할 수 있다. 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 제1 자원 사용량보다 제1 자원 사용량이 더 큰 다른 물리 머신(300-1~300-n)을 확인할 때까지 검토를 수행할 수 있다.The first resource usage of the physical machines 300-1 to 300-n having the longest first end time (late) is the same as that of the physical machines 300-1 to 300-n having the shortest (first) 1 resource usage, the
관리 장치(100)는 제1 종료 시간이 짧은(빠른) 순서로(오름차순으로) 다른 물리 머신(300-1~300-n)을 검토할 수 있다. 예를 들어, 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 제1 자원 사용량과, 제1 종료 시간이 두 번째로 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량을 비교할 수 있다.The
제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 제1 자원 사용량이 다른 물리 머신(300-1~300-n)의 제1 자원 사용량보다 작은 경우, 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)에서 다른 물리 머신(300-1~300-n)으로 마이그레이션을 결정할 수 있다.When the first resource usage amount of the physical machines 300-1 to 300-n having the longest first end time (later) is smaller than the first resource usage amount of the other physical machines 300-1 to 300-n, The
또한, 관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)의 제2 자원 사용량과 제1 종료 시간이 가장 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량을 비교하여 마이그레이션을 결정할 수 있다.In addition, the
관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)의 제2 자원 사용량이 제1 종료 시간이 가장 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량보다 큰 경우, 다른 물리 머신(300-1~300-n)으로 마이그레이션을 결정할 수 있다. 관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)의 제2 자원 사용량보다 제1 자원 사용량이 더 큰 다른 물리 머신(300-1~300-n)을 확인할 때까지 검토를 수행할 수 있다.The
관리 장치(100)는 제1 종료 시간이 짧은(빠른) 순서로(오름차순으로) 다른 물리 머신(300-1~300-n)을 검토할 수 있다. 예를 들어, 관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)의 제2 자원 사용량과, 제1 종료 시간이 두 번째로 짧은(빠른) 물리 머신(300-1~300-n)의 제1 자원 사용량을 비교할 수 있다.The
제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)의 제2 자원 사용량이 다른 물리 머신(300-1~300-n)의 제1 자원 사용량보다 작은 경우, 관리 장치(100)는 제2 종료 시간이 가장 긴(늦는) 가상 머신(320-1~320-m)으로부터 다른 물리 머신(300-1~300-n)으로 마이그레이션을 결정할 수 있다. 이때, 다른 물리 머신(300-1~300-n)의 제1 자원 사용량이 아직 충분한 경우, 관리 장치(100)는 다른 가상 머신(320-1~320-m)의 마이그레이션 또한 해당 물리 머신(300-1~300-n)의 으로 결정할 수 있다.When the second resource usage of the virtual machines 320-1 to 320-m having the longest (last) second end time is smaller than the first resource usage of the other physical machines 300-1 to 300-n, The
관리 장치(100)는 같은 방식으로 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 모든 가상 머신(320-1~320-m)의 마이그레이션을 결정할 수 있다. 관리 장치(100)는 제2 종료 시간이 긴(늦는) 순서로(내림차순으로) 가상 머신(320-1~320-m)의 마이그레이션을 결정할 수 있다.The
관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)의 마이그레이션 결정이 끝난 경우, 두 번째로 제1 종료 시간이 긴(늦는) 물리 머신(300-1~300-n)의 마이그레이션을 결정할 수 있다. 마찬가지로, 관리 장치(100)는 두 번째로 제1 종료 시간이 긴(늦는) 물리 머신(300-1~300-n)의 가상 머신(320-1~320-m)의 마이그레이션을 결정할 수 있다. 즉, 관리 장치(100)는 제1 종료 시간이 긴(늦는) 순서로(내림차순으로) 모든 물리 머신(300-1~300-n)의 마이그레이션을 결정할 수 있다.When the migration decision of the physical machines 300-1 to 300-n having the longest first end time is completed, the
관리 장치(100)는 마이그레이션 장치(200)로 결정된 마이그레이션에 기초하여 마이그레이션을 수행할 것을 명령할 수 있다(S370).The
마이그레이션 장치(200)는 관리 장치(100)의 명령에 응답하여, 물리 머신 클러스터(300)에 마이그레이션을 수행할 수 있다(S380). 예를 들어, 관리 장치(100)는 제1 물리 머신(300-1)의 제2 가상 머신(320-2)을 제2 물리 머신(300-2)으로 마이그레이션 할 것을 마이그레이션 장치(200)에게 명령할 수 있다. 이에, 마이그레이션 장치(200)는 제1 물리 머신(300-1)의 제2 가상 머신(320-2)을 제2 물리 머신(300-2)으로 마이그레이션 할 수 있다.The
이에, 마이그레이션의 대상이 된 물리 머신(300-1~300-n)의 제1 종료 시간은 단축되고, 목적지 물리 머신의 제1 종료 시간은 그대로일 수 있다. 따라서, 복수의 물리 머신(300-1~300-n)의 종료 시간을 앞당겨, 물리 머신 클러스터(300)에서 활성 물리 머신(300-1~300-n)의 대수를 최소로 유지할 수 있다. 이에, 클라우드 컴퓨팅 시스템(10)의 자원 사용률을 높이고 전력 소모를 줄일 수 있다.Thus, the first end time of the physical machines 300-1 to 300-n that are the targets of the migration is shortened, and the first end time of the destination physical machine can be intact. Therefore, the end times of the plurality of physical machines 300-1 to 300-n can be advanced, and the number of active physical machines 300-1 to 300-n in the
도 1에서는 설명의 편의를 위해, 마이그레이션 장치(200)가 물리 머신 클러스터(300)의 외부에 구현되는 것으로 도시하고 있지만, 반드시 이에 한정되는 것은 아니고, 물리 머신 클러스터(300)의 내부, 복수의 물리 머신(300-1~300-n)의 내부, 또는 관리 장치(100)의 내부에 구현될 수 있다.1, the
도 4는 일 실시예에 따른 마이그레이션 방법의 순서도를 나타낸다.4 shows a flowchart of a migration method according to one embodiment.
도 4를 참조하면, 관리 장치(100)는 물리 머신(300-1~300-n)의 제1 종료 시간과 제1 자원 사용량을 획득할 수 있다(S410). 관리 장치(100)는 제1 종료 시간이 긴(늦는) 순서대로(내림차순으로) 물리 머신(300-1~300-n)의 마이그레이션을 결정할 수 있다.Referring to FIG. 4, the
관리 장치(100)는 물리 머신(300-1~300-n)에 포함된 가상 머신(320-1~320-m)의 제2 종료 시간과 제2 자원 사용량을 획득할 수 있다(S420). 관리 장치(100)는 제2 종료 시간이 긴(늦는) 순서대로(내림차순으로) 가상 머신(320-1~320-m)의 마이그레이션을 결정할 수 있다.The
관리 장치(100)는 제1 종료 시간, 제1 자원 사용량, 제2 종료 시간, 및 제2 자원 사용량 중에서 적어도 하나에 기초하여 마이그레이션을 수행할 수 있다(S430). 예를 들어, 관리 장치(100)는 제1 종료 시간이 가장 긴(늦는) 물리 머신(300-1~300-n)에 포함된 가상 머신(320-1~320-m)을 대상으로 마이그레이션을 결정할 수 있다. 관리 장치(100)는 가상 머신(320-1~320-m)의 제2 자원 사용량과 목적지 물리 머신의 제1 자원 사용량을 비교하여 마이그레이션을 결정할 수 있다. 마이그레이션 장치(200)는 관리 장치(100)의 명령에 응답하여, 마이그레이션을 수행할 수 있다.The
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.
Claims (18)
상기 물리 머신에 포함된 복수의 가상 머신(virtual machine)의 제2 종료 시간과 제2 자원 사용량을 획득하는 단계; 및
상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 마이그레이션을 수행하는 단계
를 포함하고,
상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 상기 마이그레이션을 수행하는 단계는,
상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하여 제1 비교 결과를 생성하는 단계; 및
상기 제1 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계
를 포함하는 마이그레이션 방법.
Obtaining a first end time and a first resource usage of a plurality of physical machines;
Obtaining a second end time and a second resource usage of a plurality of virtual machines included in the physical machine; And
Performing a migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage
Lt; / RTI >
The step of performing the migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage,
Comparing a first resource usage of the physical machine with the first end time of the plurality of physical machines to a first resource usage of the physical machine having the shortest first end time to generate a first comparison result; And
Performing the migration based on the first comparison result
/ RTI >
상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 상기 마이그레이션을 수행하는 단계는,
상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신을 대상으로 상기 마이그레이션을 수행하는 단계
를 포함하는 마이그레이션 방법.
The method according to claim 1,
The step of performing the migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage,
Performing the migration on a physical machine having the longest first end time among the plurality of physical machines
/ RTI >
상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신을 대상으로 상기 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계
를 포함하는 마이그레이션 방법.
3. The method of claim 2,
Performing the migration on a physical machine having the longest first end time among the plurality of physical machines,
Performing the migration from a physical machine with the longest first end time to a physical machine with the shortest first end time
/ RTI >
상기 제1 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 단계
를 포함하는 마이그레이션 방법.
The method according to claim 1,
Wherein the step of performing the migration based on the first comparison result comprises:
If the first resource usage of the physical machine with the longest first end time is greater than the first resource usage of the physical machine with the shortest first end time, Steps to compare with resource usage
/ RTI >
상기 제1 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계
를 포함하는 마이그레이션 방법.
The method according to claim 1,
Wherein the step of performing the migration based on the first comparison result comprises:
If the first resource usage of the physical machine with the longest first end time is less than the first resource usage of the physical machine with the shortest first end time, Performing the migration to the physical machine having the shortest time
/ RTI >
상기 제1 종료 시간, 상기 제1 자원 사용량, 상기 제2 종료 시간, 및 상기 제2 자원 사용량 중에서 적어도 하나에 기초하여 상기 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하여 제2 비교 결과를 생성하는 단계; 및
상기 제2 비교 결과에 기초하여 상기 마이그레이션을 수행하는 단계
를 더 포함하는 마이그레이션 방법.
The method according to claim 1,
The step of performing the migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage,
Generating a second comparison result by comparing a second resource usage of a virtual machine included in the physical machine having the longest first end time and a first resource usage of the physical machine having the shortest first end time; And
Performing the migration based on the second comparison result
The migration method further comprising:
상기 제2 비교 결과에 기초하여 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 단계
를 포함하는 마이그레이션 방법.
8. The method of claim 7,
Wherein the step of performing the migration based on the second comparison result comprises:
If the second resource usage of the virtual machine included in the physical machine having the longest first end time is larger than the first resource usage of the physical machine having the shortest first end time, Comparing the first resource usage of the physical machine
/ RTI >
상기 제2 비교 결과에 기초하여 마이그레이션을 수행하는 단계는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 수행하는 단계
를 포함하는 마이그레이션 방법.
8. The method of claim 7,
Wherein the step of performing the migration based on the second comparison result comprises:
When the second resource usage of the virtual machine included in the physical machine having the longest first end time is smaller than the first resource usage of the physical machine having the shortest first end time, Performing the migration from a virtual machine included in the physical machine to the physical machine having the shortest first end time
/ RTI >
상기 컨트롤러의 명령에 응답하여, 상기 복수의 물리 머신에 상기 마이그레이션을 수행하는 마이그레이션 장치
를 포함하고,
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하여 제1 비교 결과를 생성하고, 상기 제1 비교 결과에 기초하여 상기 마이그레이션을 결정하는 마이그레이션 시스템.
Acquiring a first end time and a first resource usage of a plurality of physical machines, acquiring a second end time and a second resource usage of a plurality of virtual machines included in the physical machine, A controller for determining a migration based on at least one of the first end time, the first resource usage, the second end time, and the second resource usage; And
In response to a command from the controller, to a migration device that performs the migration to the plurality of physical machines
Lt; / RTI >
The controller comprising:
Generating a first comparison result by comparing a first resource usage amount of the physical machine with the first closest end time and a first resource usage amount of the physical machine having the shortest first end time to generate a first comparison result, The migration system determining the migration.
상기 컨트롤러는,
상기 복수의 물리 머신 중에서, 상기 제1 종료 시간이 가장 긴 물리 머신을 대상으로 상기 마이그레이션을 결정하는 마이그레이션 시스템.
11. The method of claim 10,
The controller comprising:
Wherein the migration is determined for a physical machine having the longest first end time among the plurality of physical machines.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정하는 마이그레이션 시스템.
12. The method of claim 11,
The controller comprising:
Wherein the migration is determined from a physical machine having the longest first end time to a physical machine having the shortest first end time.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 마이그레이션 시스템.
11. The method of claim 10,
The controller comprising:
If the first resource usage of the physical machine with the longest first end time is greater than the first resource usage of the physical machine with the shortest first end time, A migration system that compares resource usage.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신의 제1 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정하는 마이그레이션 시스템.
11. The method of claim 10,
The controller comprising:
If the first resource usage of the physical machine with the longest first end time is less than the first resource usage of the physical machine with the shortest first end time, The migration system determining the migration to the physical machine having the shortest time.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량과 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량을 비교하여 제2 비교 결과를 생성하고, 상기 제2 비교 결과에 기초하여 상기 마이그레이션을 결정하는 마이그레이션 시스템.
11. The method of claim 10,
The controller comprising:
A second comparison result is generated by comparing a second resource use amount of a virtual machine included in the physical machine having the longest first end time and a first resource use amount of the physical machine having the shortest first end time, And determine the migration based on the comparison result.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 큰 경우, 상기 제1 종료 시간이 두 번째로 짧은 물리 머신의 제1 자원 사용량과 비교하는 마이그레이션 시스템.
17. The method of claim 16,
The controller comprising:
If the second resource usage of the virtual machine included in the physical machine having the longest first end time is larger than the first resource usage of the physical machine having the shortest first end time, The migration system compares the first resource usage of the physical machine.
상기 컨트롤러는,
상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신의 제2 자원 사용량이 상기 제1 종료 시간이 가장 짧은 물리 머신의 제1 자원 사용량보다 작은 경우, 상기 제1 종료 시간이 가장 긴 물리 머신에 포함된 가상 머신으로부터 상기 제1 종료 시간이 가장 짧은 물리 머신으로 상기 마이그레이션을 결정하는 마이그레이션 시스템.17. The method of claim 16,
The controller comprising:
When the second resource usage of the virtual machine included in the physical machine having the longest first end time is smaller than the first resource usage of the physical machine having the shortest first end time, To the physical machine having the shortest first end time from the virtual machine included in the migration system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170092750A KR101820269B1 (en) | 2017-07-21 | 2017-07-21 | Method and system for migration |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170092750A KR101820269B1 (en) | 2017-07-21 | 2017-07-21 | Method and system for migration |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101820269B1 true KR101820269B1 (en) | 2018-01-18 |
Family
ID=61028921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170092750A KR101820269B1 (en) | 2017-07-21 | 2017-07-21 | Method and system for migration |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101820269B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230020641A (en) * | 2021-08-04 | 2023-02-13 | 주식회사 이노그리드 | Timeline-based cloud data migration method and system |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008210001A (en) | 2007-02-23 | 2008-09-11 | Nec Corp | Server transfer planning system and server transfer planning method |
US20130346973A1 (en) | 2012-06-25 | 2013-12-26 | Fujitsu Limited | Management server, and virtual machine move control method |
KR101578177B1 (en) * | 2014-09-12 | 2015-12-16 | 성균관대학교산학협력단 | Method and system for migration based on resource utilization rate in cloud computing |
JP2016099972A (en) | 2014-11-26 | 2016-05-30 | 日本電信電話株式会社 | Process migration method and cluster system |
US20160378532A1 (en) | 2010-12-28 | 2016-12-29 | Amazon Technologies, Inc. | Managing virtual machine migration |
-
2017
- 2017-07-21 KR KR1020170092750A patent/KR101820269B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008210001A (en) | 2007-02-23 | 2008-09-11 | Nec Corp | Server transfer planning system and server transfer planning method |
US20160378532A1 (en) | 2010-12-28 | 2016-12-29 | Amazon Technologies, Inc. | Managing virtual machine migration |
US20130346973A1 (en) | 2012-06-25 | 2013-12-26 | Fujitsu Limited | Management server, and virtual machine move control method |
KR101578177B1 (en) * | 2014-09-12 | 2015-12-16 | 성균관대학교산학협력단 | Method and system for migration based on resource utilization rate in cloud computing |
JP2016099972A (en) | 2014-11-26 | 2016-05-30 | 日本電信電話株式会社 | Process migration method and cluster system |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230020641A (en) * | 2021-08-04 | 2023-02-13 | 주식회사 이노그리드 | Timeline-based cloud data migration method and system |
KR102627515B1 (en) * | 2021-08-04 | 2024-01-23 | 주식회사 이노그리드 | Timeline-based cloud data migration method and system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11809913B2 (en) | Load balancing of cloned virtual machines | |
US20200153751A1 (en) | Monitoring data streams and scaling computing resources based on the data streams | |
US8489744B2 (en) | Selecting a host from a host cluster for live migration of a virtual machine | |
US11714668B2 (en) | Supporting quality-of-service for virtual machines based on operational events | |
US8935698B2 (en) | Management of migrating threads within a computing environment to transform multiple threading mode processors to single thread mode processors | |
US9253058B2 (en) | Deploying an executable with historical performance data | |
US9483375B2 (en) | Streaming operator with trigger | |
US20150193244A1 (en) | Autonomously managed virtual machine anti-affinity rules in cloud computing environments | |
US9501137B2 (en) | Virtual machine switching based on processor power states | |
US9591094B2 (en) | Caching of machine images | |
US9417927B2 (en) | Runtime capacity planning in a simultaneous multithreading (SMT) environment | |
US10853128B2 (en) | Virtual machine management device and virtual machine management method | |
KR20170139872A (en) | Multi-tenant based system and method for providing services | |
US9104455B2 (en) | Virtual machine-to-image affinity on a physical server | |
AU2015330266B2 (en) | Efficient interruption routing for a multithreaded processor | |
US9971971B2 (en) | Computing instance placement using estimated launch times | |
CN104750538B (en) | Method and system for providing virtual storage pool for target application | |
US10649670B2 (en) | Data block processing | |
US10248466B2 (en) | Managing workload distribution among processing systems based on field programmable devices | |
KR101820269B1 (en) | Method and system for migration | |
KR20110109608A (en) | Apparatus and method of dynamically distributing load in multi-core | |
US20150373071A1 (en) | On-demand helper operator for a streaming application | |
US20180081724A1 (en) | Resource sharing management of a field programmable device | |
US20180083846A1 (en) | Service level management of a workload defined environment | |
JP2014206805A (en) | Control device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |