KR20120118271A - Method for selecting virtual machine migration target - Google Patents
Method for selecting virtual machine migration target Download PDFInfo
- Publication number
- KR20120118271A KR20120118271A KR1020110035745A KR20110035745A KR20120118271A KR 20120118271 A KR20120118271 A KR 20120118271A KR 1020110035745 A KR1020110035745 A KR 1020110035745A KR 20110035745 A KR20110035745 A KR 20110035745A KR 20120118271 A KR20120118271 A KR 20120118271A
- Authority
- KR
- South Korea
- Prior art keywords
- candidate group
- physical machines
- physical
- selecting
- virtual machine
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/301—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- 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/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
본 발명은, 가상머신 이동 대상 선택 방법에 관한 것으로서, 보다 상세하게는, 복수의 물리머신들 중에서 가상머신을 이동시킬 대상 물리머신을 선택하는 가상머신 이동 대상 선택 방법에 관한 것이다.The present invention relates to a virtual machine moving object selection method, and more particularly, to a virtual machine moving object selection method for selecting a target physical machine to which the virtual machine is to be moved among a plurality of physical machines.
컴퓨터 네트워크의 기술 발전에 따라, 각 단말의 독립적인 하드웨어 성능에 의존하던 기존의 컴퓨팅 환경은, 네트워크 상의 모든 컴퓨팅 자원을 활용하여 단말의 요청에 따라 해당 서비스를 제공하는 클라우드 컴퓨팅(Cloud Computing) 형태로 진화하고 있다.The existing computing environment, which relies on the independent hardware performance of each terminal according to the technological development of the computer network, is a form of cloud computing in which the service is provided according to the request of the terminal utilizing all the computing resources on the network It is evolving.
클라우드 컴퓨팅 서비스란, 인터넷과 같은 정보통신망을 통한 '컴퓨팅 자원의 온 디맨드 아웃소싱 서비스'라고 정의할 수 있다. 클라우드 컴퓨팅 환경에서는, 서비스 제공자는 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자들이 필요로 하는 서비스를 제공하게 된다. 서비스 사용자는 어플리케이션(Application), 스토리지(Storage), 운영체제(Operation System, OS), 보안(Security)등의 필요한 컴퓨팅 자원을 각 사용자 소유의 단말에 설치하여 사용하는 것이 아니라, 가상화 기술을 통해 생성된 가상공간상의 서비스를 원하는 시점에 원하는 만큼 골라서 사용하게 된다. 사용자는 각 컴퓨팅 자원의 구입비용을 지불하는 것이 아니라 사용량에 기반하여 대가를 지불하게 된다.A cloud computing service may be defined as an on demand outsourcing service of a computing resource through an information communication network such as the Internet. In a cloud computing environment, service providers will integrate data centers that are distributed in multiple locations into virtualization technologies to provide the services users need. The service user does not install and use necessary computing resources such as application, storage, operating system (OS), and security in each user's own terminal, but is created through virtualization technology. You can use as many services as you want at the time you want. The user pays based on usage rather than paying for each computing resource.
이러한 클라우드 컴퓨팅 서비스를 제공하는 클라우드 컴퓨팅 시스템에서는 가상머신 기반으로 서비스를 제공하고 있으므로, 클라우드 컴퓨팅 시스템을 구성하는 복수의 물리머신들 사이에서 가상머신을 이동시키는 이른바 VM 마이그레이션(migration) 기술이 중요하다. 특히, 복수의 물리머신들 중에서 어떤 물리머신을 선택하여 가상머신을 이동시키느냐에 따라 시스템 전체 성능이 좌지우지될 수 있어 이에 관한 기술 개발이 요구된다.Since a cloud computing system providing a cloud computing service provides a service based on a virtual machine, a so-called VM migration technology that moves a virtual machine among a plurality of physical machines constituting the cloud computing system is important. In particular, the overall system performance may depend on which physical machine is selected from among a plurality of physical machines to move the virtual machine.
그러나 종래에는, 이러한 가상머신 이동 대상과 관련하여, 단순히 가용 자원량이 많은 물리머신을 선택하는 기술이 대부분으로, 복수의 물리머신들 사이의 로드밸런싱(부하 분산)을 전혀 고려하지 못하고 있어, 시스템 성능을 극대화시키는 점에 있어서 한계가 있다.However, in the related art, most of the techniques for simply selecting a physical machine with a large amount of available resources in relation to a target of moving such a virtual machine do not consider load balancing (load distribution) among a plurality of physical machines at all, and thus system performance. There is a limit in maximizing
본 발명이 이루고자 하는 기술적 과제는, 복수의 물리머신들 간에 로드 밸런싱 및 스페이스 밸런싱을 고려하여 전체 시스템의 성능을 극대화시킬 수 있는 가상머신을 이동시킬 대상인 물리머신을 선택하는 가상머신 이동 대상 선택 방법을 제공하는 데에 있다.An object of the present invention is to select a virtual machine moving object selection method for selecting a physical machine to move the virtual machine that can maximize the performance of the entire system in consideration of load balancing and space balancing between a plurality of physical machines To provide.
상기의 기술적 과제를 이루기 위한, 본 발명에 의한, 복수의 물리머신들 중에서 가상머신을 이동시킬 대상 물리머신을 선택하는 가상머신 이동 대상 선택 방법은, 가상머신의 생성에 필요한 자원의 필요용량과 복수의 물리머신들 각각의 자원의 잔여용량을 비교하여, 복수의 물리머신들 중에서 가상머신의 생성에 필요한 자원을 구비한 적어도 하나 이상의 물리머신들을 제1후보집단에 선정하는 제1후보집단선정단계; 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 로드밸런싱 기준인 제1임계값보다 적은 물리머신을 제2후보집단에 선정하는 제2후보집단선정단계; 및 제2후보집단에 속하는 물리머신들의 자원의 가용률을 기초로 대상 물리머신을 선택하는 대상선택단계를 포함한다.According to the present invention, a virtual machine moving target selection method for selecting a target physical machine to move a virtual machine from among a plurality of physical machines to achieve the above technical problem, the required capacity and a plurality of resources required for the creation of the virtual machine A first candidate group selection step of selecting at least one physical machine having resources necessary for generating a virtual machine among a plurality of physical machines as a first candidate group by comparing the remaining capacity of each resource of the physical machines of the first candidate group; Selecting a second candidate group from among physical machines belonging to the first candidate group, selecting physical machines having a mean number of processors waiting to be executed for a unit time less than the first threshold value, the load balancing criterion to the second candidate group; And a target selection step of selecting a target physical machine based on an availability rate of resources of the physical machines belonging to the second candidate group.
보다 바람직하게는, 제2후보집단선정단계는 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 제1임계값보다 적은 물리머신이 없는 경우에, 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 제2후보집단에 선정하는 단계를 더 포함할 수 있다.More preferably, in the second candidate group selection step, if there is no physical machine among the physical machines belonging to the first candidate group during the unit time, the average number of processors waiting to be executed is less than the first threshold value. The method may further include selecting a predetermined number of physical machines having a smallest average number of processors waiting to be executed in the second candidate group.
보다 바람직하게는, 제2후보집단선정단계는 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 제1임계값보다 적은 물리머신이 없는 경우에, 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 제1임계값보다 큰 값인 제2임계값보다 적은 물리머신을 제2후보집단에 선정하는 단계를 더 포함할 수 있다.More preferably, in the second candidate group selection step, when there is no physical machine among the physical machines belonging to the first candidate group for which the average number of processors waiting to run for a unit time is less than the first threshold value, the first candidate may be selected. The method may further include selecting physical machines in the second candidate group less than the second threshold value in which the average number of processors waiting to be executed for a unit time is greater than the first threshold value among the physical machines belonging to the group.
상기의 기술적 과제를 이루기 위한, 본 발명에 의한, 복수의 물리머신들 중에서 가상머신을 이동시킬 대상 물리머신을 선택하는 기능을 포함하는 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체는 가상머신의 생성에 필요한 자원의 필요용량과 복수의 물리머신들 각각의 자원의 잔여용량을 비교하여, 복수의 물리머신들 중에서 가상머신의 생성에 필요한 자원을 구비한 적어도 하나 이상의 물리머신들을 제1후보집단에 선정하는 기능; 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 로드밸런싱 기준인 제1임계값보다 적은 물리머신을 제2후보집단에 선정하는 기능; 및 제2후보집단에 속하는 물리머신들의 자원의 가용률을 기초로 대상 물리머신을 선택하는 기능을 포함하는 것을 특징으로 하는 프로그램을 수록한다.In order to achieve the above technical problem, a computer-readable recording medium containing a program including a function of selecting a target physical machine to which a virtual machine is to be moved among a plurality of physical machines, according to the present invention, generates a virtual machine. Selecting at least one physical machine having the necessary resources for the creation of the virtual machine among the plurality of physical machines to the first candidate group by comparing the required capacity of the resources required for the resource with the remaining capacity of each of the plurality of physical machines. Function; Selecting, from the physical machines belonging to the first candidate group, a physical machine whose average number of processors waiting to be executed for a unit time is less than the first threshold value, the load balancing criterion, to the second candidate group; And selecting a target physical machine based on the availability rate of resources of the physical machines belonging to the second candidate group.
본 발명에 의하면, 복수의 물리머신들 사이에서 가상머신을 이동시킴에 있어서, 복수의 물리머신들 간에 로드 밸런싱 및 스페이스 밸런싱을 고려하여 전체 시스템의 성능을 극대화시킬 수 있는 물리머신을 선택할 수 있다.According to the present invention, in moving a virtual machine among a plurality of physical machines, it is possible to select a physical machine that can maximize the performance of the entire system in consideration of load balancing and space balancing among the plurality of physical machines.
도 1은 본 발명의 바람직한 일 실시예에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법의 흐름을 도시한 도면이다.
도 2a 내지 도 2b는 각각 본 발명의 바람직한 다른 일 실시예에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법의 흐름을 예시한 도면이다.
도 3은 본 발명에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법에서 제2후보집단으로부터 대상 물리머신을 선택하는 과정을 예시한 도면이다.1 is a flowchart illustrating a method of selecting a target physical machine to which a virtual machine is moved according to an exemplary embodiment of the present invention.
2A to 2B are diagrams illustrating a flow of a method of selecting a target physical machine to which a virtual machine is moved according to another preferred embodiment of the present invention.
3 is a diagram illustrating a process of selecting a target physical machine from a second candidate group in a method of selecting a target physical machine to which a virtual machine is moved according to the present invention.
이하의 내용은 단지 본 발명의 원리를 예시한다. 그러므로 당업자는 비록 본 명세서에 명확히 설명되거나 도시되지 않았지만 본 발명의 원리를 구현하고 본 발명의 개념과 범위에 포함된 다양한 장치를 발명할 수 있는 것이다. 또한, 본 명세서에 열거된 모든 조건부 용어 및 실시예들은 원칙적으로, 본 발명의 개념이 이해되도록 하기 위한 목적으로만 명백히 의도되고, 이와 같이 특별히 열거된 실시예들 및 상태들에 제한적이지 않는 것으로 이해되어야 한다. 또한, 본 발명의 원리, 관점 및 실시예들 뿐만 아니라 특정 실시예를 열거하는 모든 상세한 설명은 이러한 사항의 구조적 및 기능적 균등물을 포함하도록 의도되는 것으로 이해되어야 한다. 또한, 이러한 균등물들은 현재 공지된 균등물뿐만 아니라 장래에 개발될 균등물 즉 구조와 무관하게 동일한 기능을 수행하도록 발명된 모든 소자를 포함하는 것으로 이해되어야 한다. The following merely illustrates the principles of the invention. Thus, those skilled in the art will be able to devise various apparatuses which, although not explicitly described or shown herein, embody the principles of the invention and are included in the concept and scope of the invention. Furthermore, all of the conditional terms and embodiments listed herein are, in principle, intended only for the purpose of enabling understanding of the concepts of the present invention, and are not intended to be limiting in any way to the specifically listed embodiments and conditions . It is also to be understood that the detailed description, as well as the principles, aspects and embodiments of the invention, as well as specific embodiments thereof, are intended to cover structural and functional equivalents thereof. In addition, these equivalents should be understood to include not only equivalents now known, but also equivalents to be developed in the future, that is, all devices invented to perform the same function regardless of structure.
따라서, 프로세서 또는 이와 유사한 개념으로 표시된 기능 블럭을 포함하는 도면에 도시된 다양한 소자의 기능은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 관련하여 소프트웨어를 실행할 능력을 가진 하드웨어의 사용으로 제공될 수 있다. 프로세서에 의해 제공될 때, 기능은 단일 전용 프로세서, 단일 공유 프로세서 또는 복수의 개별적 프로세서에 의해 제공될 수 있고, 이들 중 일부는 공유될 수 있다. 또한, 프로세서, 제어 또는 이와 유사한 개념으로 제시되는 용어의 사용은 소프트웨어를 실행할 능력을 가진 하드웨어를 배타적으로 인용하여 해석되어서는 아니 되고, 제한 없이 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 롬(ROM), 램(RAM) 및 비휘발성 메모리를 암시적으로 포함하는 것으로 이해되어야 한다. 주지 관용의 다른 하드웨어도 포함될 수 있다. Thus, the functionality of the various elements shown in the figures, including functional blocks represented by a processor or similar concept, can be provided by the use of dedicated hardware as well as hardware capable of executing software in conjunction with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, a single shared processor, or a plurality of individual processors, some of which may be shared. Also, the use of terms such as processor, control, or similar concepts should not be construed as exclusive reference to hardware capable of executing software, but may include, without limitation, digital signal processor (DSP) hardware, (ROM), random access memory (RAM), and non-volatile memory. Other hardware may also be included.
상술한 목적, 특징 및 장점들은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 더욱 분명해 질 것이다. 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략하거나 간략하게 설명하는 것으로 한다. The above objects, features and advantages will become more apparent from the following detailed description in conjunction with the accompanying drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
한편 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다.On the other hand, when an element is referred to as "including " an element, it does not exclude other elements unless specifically stated to the contrary.
이하, 첨부된 도면을 참조하여 바람직한 실시예에 따른 본 발명을 상세히 설명하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 바람직한 일 실시예에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법의 흐름을 도시한 도면이다.1 is a flowchart illustrating a method of selecting a target physical machine to which a virtual machine is moved according to an exemplary embodiment of the present invention.
도 1을 참조하면, 먼저, 이동할 가상머신의 생성에 필요한 자원의 필요용량과 복수의 물리머신들 각각의 자원의 잔여용량을 비교하고, 비교 결과에 따라, 이동할 가상머신의 생성에 필요한 자원을 구비한 적어도 하나 이상의 물리머신들을 추출하여 이들을 제1후보집단에 선정한다(S110).Referring to FIG. 1, first, a required capacity of a resource required for generation of a virtual machine to be moved and a remaining capacity of each resource of a plurality of physical machines are compared, and according to a comparison result, the resource required for generation of a virtual machine to be moved is provided. One or more physical machines are extracted and selected as the first candidate group (S110).
여기에서, 자원은 컴퓨팅 환경을 가상화한 가상머신을 생성함에 있어서, 가상화할 컴퓨팅 자원을 의미하는 것으로, 본 실시예에서는, CPU, 메모리, 스토리지, 및 입출력자원을 포함하여 구성하나, 이는 하나의 실시예에 불과하며, 본 발명이 이에 한정되지는 않는다고 할 것이다.Here, the resource refers to a computing resource to be virtualized in creating a virtual machine virtualizing the computing environment. In this embodiment, the resource includes a CPU, a memory, a storage, and an input / output resource, but this is one implementation. It is only an example, and the present invention is not limited thereto.
여기에서 가상머신의 생성에 필요한 자원의 필요용량은 가상머신에 따라 기정의된 값으로, 이동할 가상머신이 현재 위치한 물리머신으로부터 획득할 수 있다.Here, the required capacity of the resources required to create the virtual machine is a value defined according to the virtual machine, and can be obtained from the physical machine in which the virtual machine to be moved is currently located.
여기에서, 물리머신 각각의 자원의 잔여용량은 물리머신 상에서 구동 중인 운영체제, 하이퍼바이저(hypervisor) 및 기타 가상머신 모니터(virtual machine monitor, VMM) 모듈 등으로부터 획득할 수 있다.Here, the remaining capacity of each resource of the physical machine may be obtained from an operating system running on the physical machine, a hypervisor, another virtual machine monitor (VMM) module, or the like.
본 실시예에 따라, 가상머신을 생성하는 데에 필요한 컴퓨팅 자원으로 CPU, 메모리, 스토리지 및 입출력자원을 포함하는 경우에는 먼저, 이동할 가상머신의 생성에 충분한 CPU 잔여용량을 갖는 물리머신 즉, 가상머신의 CPU 필요용량 이상의 CPU 잔여용량을 갖는 물리머신을 제1후보집단으로 선정한다(S101).According to the present embodiment, in the case of including CPU, memory, storage, and I / O resources as computing resources required to create a virtual machine, first, a physical machine having sufficient CPU remaining capacity to generate a virtual machine to be moved, that is, a virtual machine In step S101, a physical machine having a CPU remaining capacity equal to or greater than the required CPU capacity is selected as the first candidate group.
S101 단계에서 선정된 제1후보집단에 속하는 물리머신들 중에서, 이동할 가상머신의 생성에 충분한 메모리 잔여용량을 갖지 않는 물리머신, 즉, 가상머신의 메모리 필요용량보다 적은 메모리 잔여용량을 갖는 물리머신을 제1후보집단에서 제거(필터링)한다(S102).Among the physical machines belonging to the first candidate group selected in step S101, a physical machine that does not have sufficient memory remaining capacity to generate a virtual machine to be moved, that is, a physical machine having a memory remaining capacity smaller than the memory required capacity of the virtual machine is selected. In operation S102, the first candidate group is removed (filtered).
S102 단계에서 필터링된 제1후보집단에 속하는 물리머신들 중에서, 이동할 가상머신의 생성에 충분한 스토리지 잔여용량을 갖지 않는 물리머신, 즉, 가상머신의 스토리지 필요용량보다 적은 스토리지 잔여용량을 갖는 물리머신을 제1후보집단에서 제거(필터링)한다.Of the physical machines belonging to the first candidate group filtered in step S102, a physical machine that does not have sufficient storage remaining capacity to create a moving virtual machine, that is, a physical machine having a storage capacity smaller than the storage capacity of the virtual machine Remove from the first candidate group (filter).
S103 단계에서 필터링된 제1후보집단에 속하는 물리모신들 중에서, 이동할 가상머신의 생성에 필요한 입출력자원 잔여용량을 갖지 않는 물리머신, 즉, 가상머신의 입출력자원 필요용량보다 적은 입출력자원 잔여용량을 갖는 물리머신을 제1후보집단에서 제거(필터링)한다(S104).Of the physical mothers belonging to the first candidate group filtered in step S103, the physical machine does not have the I / O resource remaining capacity required for the creation of the virtual machine to be moved, that is, has the I / O resource remaining capacity less than the I / O resource required capacity of the virtual machine The physical machine is removed (filtered) from the first candidate group (S104).
본 실시예에서, 가상머신의 생성에 충분한 자원의 잔여용량을 갖는 가상머신을 추출함에 있어서 CPU, 메모리, 스토리지 및 입출력자원의 순서로 진행하고 있으나, 이들의 순서는 하나의 실시예에 불과하며, 본 발명은 이에 국한되지 않는다. 특히, 본 실시예에서, S102 내지 S104 단계들의 순서는 서로 변경되어도 무방하며, 동시에 병렬적으로 수행되어 무방하다.In the present embodiment, in extracting a virtual machine having a remaining capacity of sufficient resources for the creation of the virtual machine proceeds in the order of CPU, memory, storage and I / O resources, but the order thereof is only one embodiment, The present invention is not limited thereto. In particular, in this embodiment, the order of the steps S102 to S104 may be changed from each other, and may be performed in parallel at the same time.
그리고, S110 (S101 내지 S104) 단계를 거쳐 선정된 제1후보집단에 물리머신의 평균 부하가 제1임계값보다 적은 물리머신이 있는지를 확인한다(S105).Then, it is checked whether the average load of the physical machine is less than the first threshold value in the first candidate group selected through the steps S110 (S101 to S104) (S105).
여기에서, 물리머신의 평균 부하(Load average)란, 물리머신에서 단위 시간(예컨대, 1분, 5분, 15분) 동안의 실행 대기 중인 프로세서의 평균 개수를 의미한다. 여기에서 실행 대기 중인 프로세서의 개수는 물리머신에서 구동 중인 운영체제 내의 실행 대기 큐의 길이(length)를 통해 측정가능하다. 이러한 평균 로드는 운영체제 상의 시스템 명령어를 통해 획득 가능하다. 예컨대, UNIX나 LINUX 환경에서는 uptime, w 및 top 등의 명령어로 이러한 평균 부하를 확인할 수 있다. Here, the load average of the physical machine refers to the average number of processors waiting to execute for a unit time (eg, 1 minute, 5 minutes, 15 minutes) in the physical machine. Herein, the number of processors waiting to be executed may be measured through the length of the execution waiting queue in the operating system running in the physical machine. This average load can be obtained through system instructions on the operating system. For example, in UNIX or LINUX environments, these average loads can be determined with the commands uptime, w, and top.
S105 단계에서의 확인 결과, 제1후보집단에 평균 부하가 제1임계값보다 적은 물리머신이 있는 경우에는, 이들을 제2후보집단으로 선정한다(S106).As a result of the check in step S105, when there is a physical machine in which the average load is less than the first threshold value in the first candidate group, these are selected as the second candidate group (S106).
S105 단계에서의 확인 결과, 제1후보집단에 평균 부하가 제1임계값보다 적은 물리머신이 없는 경우에는, 평균 부하가 최소인 기정의된 개수의 물리머신들 즉, 단위 시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 제2후보집단으로 선정한다(S107).As a result of the checking in step S105, when there is no physical machine in which the average load is less than the first threshold value in the first candidate group, the predetermined number of physical machines having the minimum average load, that is, waiting to be executed for a unit time The predetermined number of physical machines having the smallest average number of processors is selected as the second candidate group (S107).
S106 내지 S107 단계를 거쳐 선정된 제2후보집단에 속한 물리머신들의 자원가용률을 기초로, 자원 가용률(usage)이 높은 물리머신을 대상 물리머신으로 선택한다.Based on the resource availability rate of the physical machines belonging to the second candidate group selected through the steps S106 to S107, a physical machine having a high resource availability is selected as the target physical machine.
여기에서 자원 가용률은 물리머신 상에서 구동 중인 운영체제, 하이퍼바이저(hypervisor) 및 기타 가상머신 모니터(virtual machine monitor, VMM) 모듈 등으로부터 획득할 수 있다.The resource availability may be obtained from an operating system running on a physical machine, a hypervisor, and other virtual machine monitor (VMM) modules.
이처럼, 본 실시예에서는 가상머신의 생성에 필요한 자원을 충분히 갖춘 물리머신을 제1후보집단으로 선정하고, 이들 중에 물리머신들 간의 로드 밸런싱(부하 분산)을 고려하여 평균부하가 소정의 제1임계값 이상인 경우를 제2후보집단으로 선정하여, 이들 중에서 자원의 효율적 이용을 고려하여, 자원가용률이 높은 물리머신을 대상 물리머신으로 선택함으로써, 시스템의 물리머신들 간의 부하 분산 및 자원의 효율적 이용을 극대화할 수 있도록 물리머신을 선택할 수 있게 된다.As described above, in the present embodiment, a physical machine having sufficient resources for creating a virtual machine is selected as the first candidate group, and among them, the average load is a predetermined first threshold in consideration of load balancing (load distribution) among the physical machines. If the value is greater than or equal to the second candidate group, and considering the efficient use of resources among them, the physical machine having the high resource availability is selected as the target physical machine, so that the load balancing between the physical machines of the system and the efficient use of resources can be achieved. You will be able to choose a physical machine to maximize it.
도 2a 내지 도 2b는 각각 본 발명의 바람직한 다른 일 실시예에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법의 흐름을 예시한 도면이다.2A to 2B are diagrams illustrating a flow of a method of selecting a target physical machine to which a virtual machine is moved according to another preferred embodiment of the present invention.
도 2a를 참조하면, 본 실시예에 따른 가상머신 이동 대상 선택 방법의 구성요소인 S210, S211, S212, S230 및 S240 단계들은 도 1에 도시된 가상머신 이동 대상 선택 방법의 구성요소인 S110, S105, S106, S107, S108 단계들에 각각 대응된다.Referring to FIG. 2A, steps S210, S211, S212, S230, and S240 which are components of the virtual machine moving object selection method according to the present embodiment are S110 and S105 which are components of the virtual machine moving object selection method shown in FIG. 1. , S106, S107, and S108 steps respectively.
도 2a에 도시된 실시예에서는, 도 1에 도시된 실시예와 달리, S211 단계에서의 확인결과, 제1후보집단에 평균 부하가 제1임계값보다 적은 물리머신이 없는 경우에는, 평균 부하를 제1임계값 대신에, 제1임계값보다 큰 제2임계값과 비교하는 단계(S221)를 갖는다.In the embodiment shown in FIG. 2A, unlike the embodiment shown in FIG. 1, when the check result in step S211 shows that the first candidate group does not have a physical machine whose average load is less than the first threshold value, the average load is reduced. Instead of the first threshold value, a step S221 of comparing with a second threshold value greater than the first threshold value is provided.
S221 단계에서의 비교 결과, 제1후보집단에 평균 부하가 제2임계값보다 적은 물리머신이 있는 경우에는, 이들을 제2후보집단으로 선정하고(S222), 제1후보집단에 평균 부하가 제2임계값보다 적은 물리머신이 없는 경우에는, 평균 부하가 최소인 기정의된 개수의 물리머신들 즉, 단위 시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 제2후보집단으로 선정한다(S230).As a result of the comparison in step S221, when there is a physical machine in which the average load is less than the second threshold value in the first candidate group, these are selected as the second candidate group (S222), and the average load in the first candidate group is second. If there are no physical machines less than the threshold value, the predetermined number of physical machines having a minimum average load, that is, the predetermined number of physical machines having the smallest average number of processors waiting to run for a unit of time, is selected. Selected as a candidate group (S230).
도 2b에 도시된 실시예에서는, 도 2a에 도시된 실시예와 달리, S221 단계에서의 확인결과, 제1후보집단에 평균 부하가 제1임계값보다 적은 물리머신이 없는 경우에는, 평균 부하를 제2임계값 대신에, 제2임계값보다 큰 제3임계값과 비교하는 단계(S231)를 갖는다.In the embodiment shown in FIG. 2B, unlike the embodiment shown in FIG. 2A, when the verification result in step S221 shows that the first candidate group has no physical machine whose average load is less than the first threshold value, the average load is obtained. Instead of the second threshold value, a step S231 is compared with a third threshold value greater than the second threshold value.
S231 단계에서의 비교 결과, 제1후보집단에 평균 부하가 제3임계값보다 적은 물리머신이 있는 경우에는, 이들을 제2후보집단으로 선정하고(S232), 제1후보집단에 평균 부하가 제3임계값보다 적은 물리머신이 없는 경우에는, 평균 부하가 최소인 기정의된 개수의 물리머신들 즉, 단위 시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 제2후보집단으로 선정한다(S233).As a result of the comparison in step S231, if there is a physical machine in which the average load is less than the third threshold value in the first candidate group, these are selected as the second candidate group (S232), and the average load in the first candidate group is third. If there are no physical machines less than the threshold value, the predetermined number of physical machines having a minimum average load, that is, the predetermined number of physical machines having the smallest average number of processors waiting to run for a unit of time, is selected. The candidate is selected (S233).
즉, 도 2a 내지 도 2b에서 도시된 실시예에서는 제1후보집단에 속한 물리머신들이 로드밸런싱 기준인 제1임계값 이하의 평균 부하의 조건을 만족하지 않는 경우를 대비한, 제2임계값 및 제3임계값을 추가로 정의한 경우로써, 보다 로드밸런싱 정책을 보다 정교하게 정의하고, 보다 자원의 효율적인 이용을 극대화하기 위한 실시예를 제시한 것이다.That is, in the exemplary embodiment illustrated in FIGS. 2A to 2B, the second threshold value in case the physical machines belonging to the first candidate group do not satisfy the condition of the average load below the first threshold value, which is the load balancing criterion, and As the third threshold value is further defined, an embodiment for more precisely defining the load balancing policy and maximizing the efficient use of resources is presented.
도 3은 본 발명에 따라 가상머신을 이동시킬 대상 물리머신을 선택하는 방법에서 제2후보집단으로부터 대상 물리머신을 선택하는 과정을 예시한 도면이다.3 is a diagram illustrating a process of selecting a target physical machine from a second candidate group in a method of selecting a target physical machine to which a virtual machine is moved according to the present invention.
도 3을 참조하면, 도 3은 먼저, 제2후보집단에 속하는 물리머신들 중 CPU의 가용률이 최대인 물리머신을 추출하여, 추출된 물리머신이 적어도 둘 이상인지를 확인하여(S341), 추출된 물리머신이 하나인 경우에는 추출된 하나의 물리머신을 대상 물리머신으로 선택한다(S342).Referring to FIG. 3, FIG. 3 first extracts a physical machine having a maximum CPU availability among physical machines belonging to a second candidate group, and checks whether at least two physical machines are extracted (S341). If there is only one physical machine, the extracted one physical machine is selected as the target physical machine (S342).
S341 단계에서의 확인 결과 CPU의 가용률이 최대인 물리머신이 둘 이상인 경우에는 이들 중에서, 입출력자원 가용률이 최대인 물리머신을 추출하여 추출된 물리머신이 적어도 둘 이상인지를 다시 확인하여(S343), 추출된 물리머신이 하나인 경우에는 추출된 하나의 물리머신을 대상 물리머신으로 선택한다(S344).If the check result in step S341 has two or more physical machines having the maximum available CPU rate, among them, the physical machine having the maximum input / output resource availability rate is extracted to check whether the extracted physical machines are at least two (S343), If there is only one extracted physical machine, the extracted one physical machine is selected as the target physical machine (S344).
S343 단계에서의 확인 결과 입출력자원의 가용률이 최대인 물리머신이 둘 이상인 경우에는 이들 중에서, 메모리자원 가용률이 최대인 물리머신을 추출하여 추출된 물리머신이 적어도 둘 이상인지를 다시 확인하여(S345), 추출된 물리머신이 하나인 경우에는 추출된 하나의 물리머신을 대상 물리머신으로 선택한다(S346).If there is more than one physical machine having the maximum availability rate of the input / output resource in step S343, among them, the physical machine having the maximum memory resource availability rate is extracted to check whether the extracted physical machine is at least two (S345). If the extracted physical machine is one, the extracted one physical machine is selected as the target physical machine (S346).
S345 단계에서의 확인 결과 메모리자원의 가용률이 최대인 물리머신이 둘 이상인 경우에는 이들 중에서, 스토리지자원 가용률이 최대인 물리머신을 추출하여 추출된 물리머신이 적어도 둘 이상인지를 다시 확인하여(S347), 추출된 물리머신이 하나인 경우에는 추출된 하나의 물리머신을 대상 물리머신으로 선택한다(S348).If there is more than one physical machine having the maximum availability rate of the memory resource as a result of checking in step S345, the physical machine having the maximum storage resource availability rate is extracted from these and again checks whether the extracted physical machine is at least two (S347). If there is only one extracted physical machine, the extracted one physical machine is selected as the target physical machine (S348).
S347 단계에서의 확인 결과 스토리지자원의 가용률이 최대인 물리머신이 둘 이상인 경우에는 이들 중에서, 임의로 하나의 물리머신을 대상 물리머신으로 선택한다(S349).If there is more than one physical machine having the maximum availability rate of the storage resource, as a result of checking in step S347, one physical machine is arbitrarily selected as the target physical machine (S349).
본 실시예에서는 CPU, 입출력자원, 메모리 및 스토리지의 순으로 자원의 종류에 우선순위를 두어 자원의 가용률이 최대인지를 평가하고 있으며, 메모리 및 스토리지의 우선순위는 서로 동일하나, 기재의 편의를 위해 메모리, 스토리지 순으로 예시한 것에 불과하며, 따라서, 양자의 평가 순서(S345~S346, S347~S348)는 서로 뒤바뀌어도 무방하다.In this embodiment, the types of resources are prioritized in order of CPU, I / O resources, memory, and storage to evaluate whether the resource availability is maximum. The priority of memory and storage is the same, but for convenience of description. It is only illustrated in the order of memory and storage. Therefore, the evaluation order (S345 to S346, S347 to S348) of the two may be reversed.
아울러, 본 실시예서의 자원의 가용률 평가 시의 우선순위 즉, CPU->입출력자원->메모리/스토리지의 우선순위는 시스템의 정책에 따라 변경될 수 있으므로, 본 발명은 이에 국한되지 아니한다.In addition, the priority in evaluating the availability of resources in this embodiment, that is, the priority of CPU-> I / O resources-> memory / storage may be changed according to the system policy, and thus the present invention is not limited thereto.
본 실시예에 따라 가상머신을 이동시킬 대상인 물리머신을 선택하는 경우에는, 복수의 물리머신들 사이에서 가상머신을 이동시킴에 있어서, 복수의 물리머신들 간에 로드 밸런싱 및 스페이스 밸런싱을 고려하여 전체 시스템의 성능을 극대화시킬 수 있는 물리머신을 선택할 수 있게 된다.In the case of selecting a physical machine to which the virtual machine is to be moved according to the present embodiment, in moving the virtual machine among a plurality of physical machines, the entire system is considered in consideration of load balancing and space balancing among the plurality of physical machines. You will be able to choose a physical machine to maximize your performance.
본 발명에 따른 가상머신 이동 대상 선택 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The virtual machine moving object selection method according to the present invention can also be embodied as computer readable codes on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission over the Internet) . In addition, the computer-readable recording medium may be distributed over network-connected computer systems so that computer readable codes can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers of the technical field to which the present invention belongs.
본 발명은 첨부된 도면에 도시된 일 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 수 있을 것이다. 따라서, 본 발명의 진정한 보호 범위는 첨부된 청구 범위에 의해서만 정해져야 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of limitation, You will understand. Accordingly, the true scope of protection of the present invention should be determined only by the appended claims.
Claims (11)
상기 가상머신의 생성에 필요한 자원의 필요용량과 상기 복수의 물리머신들 각각의 자원의 잔여용량을 비교하여, 상기 복수의 물리머신들 중에서 상기 가상머신의 생성에 필요한 자원을 구비한 적어도 하나 이상의 물리머신들을 제1후보집단에 선정하는 제1후보집단선정단계;
상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 로드밸런싱 기준인 제1임계값보다 적은 물리머신을 제2후보집단에 선정하는 제2후보집단선정단계; 및
상기 제2후보집단에 속하는 물리머신들의 상기 자원의 가용률을 기초로 상기 대상 물리머신을 선택하는 대상선택단계를 포함하는 것을 특징으로 하는 이동 대상 선택 방법.In the virtual machine moving object selection method for selecting a target physical machine to move the virtual machine among a plurality of physical machines,
Comparing the required capacity of the resources required for the creation of the virtual machine and the remaining capacity of the resources of each of the plurality of physical machines, at least one physical machine having the resources required for the creation of the virtual machine among the plurality of physical machines A first candidate group selection step of selecting machines to the first candidate group;
Selecting a second candidate group from among physical machines belonging to the first candidate group, selecting a physical machine having a mean number of processors waiting to be executed for a unit time less than a first threshold value based on load balancing as a second candidate group; And
And a target selection step of selecting the target physical machine based on the availability rate of the resources of the physical machines belonging to the second candidate group.
상기 자원은 CPU, 메모리, 스토리지 및 입출력자원을 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 1,
And the resource includes a CPU, a memory, storage, and an input / output resource.
상기 제1후보집단선정단계는,
상기 복수의 물리머신 중에서, 상기 가상머신의 생성에 필요한 CPU 필요용량 이상의 CPU 잔여용량을 갖는 적어도 하나 이상의 물리머신들을 제1후보집단에 선정하는 단계;
상기 제1후보집단에 속하는 물리머신들 중에서, 상기 가상머신의 생성에 필요한 메모리 필요용량보다 적은 메모리 잔여용량을 갖는 물리머신을 상기 제1후보집단에서 제거하는 단계;
상기 제1후보집단에 속하는 물리머신들 중에서, 상기 가상머신의 생성에 필요한 스토리지 필요용량보다 적은 스토리지 잔여용량을 갖는 물리머신을 상기 제1후보집단에서 제거하는 단계; 및
상기 제1후보집단에 속하는 물리머신들 중에서, 상기 가상머신의 생성에 필요한 입출력자원 필요용량보다 적은 입출력자원 잔여용량을 갖는 물리머신을 상기 제1후보집단에서 제거하는 단계를 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 1,
The first candidate group selection step,
Selecting at least one physical machine from among the plurality of physical machines having at least one CPU remaining capacity necessary for generating the virtual machine to a first candidate group;
Removing, from among the physical machines belonging to the first candidate group, a physical machine having a memory remaining capacity less than the memory required capacity for generating the virtual machine from the first candidate group;
Removing, from among the physical machines belonging to the first candidate group, a physical machine having less storage remaining capacity than the storage required capacity for generating the virtual machine from the first candidate group; And
And removing, from among the physical machines belonging to the first candidate group, the physical machine having the remaining input / output resource capacity smaller than the required input / output resource capacity required for generating the virtual machine from the first candidate group. How to select a virtual machine move target.
상기 제2후보집단선정단계는, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제1임계값보다 적은 물리머신이 없는 경우에, 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 상기 제2후보집단에 선정하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 1,
In the second candidate group selection step, when there is no physical machine among the physical machines belonging to the first candidate group during the unit time, the average number of processors waiting to be executed is less than the first threshold value. And selecting a predetermined number of physical machines having a smallest average number of processors waiting to be executed in the second candidate group.
상기 제2후보집단선정단계는, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제1임계값보다 적은 물리머신이 없는 경우에, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제1임계값보다 큰 값인 제2임계값보다 적은 물리머신을 상기 제2후보집단에 선정하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 1,
In the selecting of the second candidate group, when there is no physical machine among the physical machines belonging to the first candidate group, the average number of processors waiting to be executed for a unit time is less than the first threshold value, the first candidate Selecting the second candidate group for the physical machines belonging to the group, wherein the average number of processors waiting to be executed for a unit time is less than the second threshold value, which is greater than the first threshold value. A virtual machine moving target selection method.
상기 제2후보집단선정단계는, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제2임계값보다 적은 물리머신이 없는 경우에, 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 상기 제2후보집단에 선정하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 5,
In the second candidate group selection step, when there is no physical machine among the physical machines belonging to the first candidate group during the unit time, the average number of processors waiting to be executed is less than the second threshold, And selecting a predetermined number of physical machines having a smallest average number of processors waiting to be executed in the second candidate group.
상기 제2후보집단선정단계는, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제2임계값보다 적은 물리머신이 없는 경우에, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제2임계값보다 큰 값인 제3임계값보다 적은 물리머신을 상기 제2후보집단에 선정하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 5,
The second candidate group selection step may include: when the average number of processors waiting to be executed for a unit of time among physical machines belonging to the first candidate group is smaller than the second threshold value, the first candidate Selecting the second candidate group for the physical machines belonging to the group, wherein the average number of processors waiting to be executed for a unit time is less than the third threshold value, which is greater than the second threshold value. A virtual machine moving target selection method.
상기 제2후보집단선정단계는, 상기 제1후보집단에 속하는 물리머신들 중에서 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 상기 제3임계값보다 적은 물리머신이 없는 경우에, 단위시간 동안의 실행 대기 중인 프로세서의 평균 개수가 가장 적은 기정의된 개수의 물리머신들을 상기 제2후보집단에 선정하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 7, wherein
In the second candidate group selection step, when there is no physical machine among the physical machines belonging to the first candidate group during the unit time, the average number of processors waiting for execution for a unit time is less than the third threshold value. And selecting a predetermined number of physical machines having a smallest average number of processors waiting to be executed in the second candidate group.
상기 대상선택단계는, 상기 제2후보집단에 속하는 물리머신들 중 상기 자원 중 CPU의 가용률이 최대인 물리머신을 선택하는 단계를 포함하는 것을 특징으로 하는 이동 대상 선택 방법The method of claim 1,
The object selecting step includes selecting a physical machine having the maximum available rate of the CPU among the resources among the physical machines belonging to the second candidate group.
상기 대상선택단계는, 상기 제2후보집단에 속하는 물리머신들 중 상기 자원 중 CPU의 가용률이 최대인 물리머신이 적어도 둘 이상인 경우에는 상기 CPU의 가용률이 최대인 둘 이상의 물리머신들 중에서 상기 자원 중 입출력 자원의 가용률이 최소인 물리머신을 선택하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.10. The method of claim 9,
The target selection step may include: when at least two physical machines having a maximum CPU availability among the resources among the physical machines belonging to the second candidate group are among the resources among two or more physical machines having the maximum availability among the CPUs; And selecting a physical machine having a minimum availability of input / output resources.
상기 대상선택단계는, 상기 CPU의 가용률이 최대인 둘 이상의 물리머신들 중에서 상기 입출력 자원의 가용률이 최대인 물리머신이 적어도 둘 이상인 경우에는 상기 입출력 자원의 가용률이 최대인 둘 이상의 물리머신들 중에서 상기 자원 중 메모리 또는 스토리지의 가용률이 최대인 물리머신을 선택하는 단계를 더 포함하는 것을 특징으로 하는 가상머신 이동 대상 선택 방법.The method of claim 10,
The target selection step may include: when at least two physical machines having the maximum available rate of the input / output resource are at least two among the at least two physical machines having the maximum available rate of the CPU, the at least two physical machines having the maximum available rate of the input / output resource are the same. And selecting a physical machine having a maximum availability of memory or storage among the resources.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110035745A KR20120118271A (en) | 2011-04-18 | 2011-04-18 | Method for selecting virtual machine migration target |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110035745A KR20120118271A (en) | 2011-04-18 | 2011-04-18 | Method for selecting virtual machine migration target |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20120118271A true KR20120118271A (en) | 2012-10-26 |
Family
ID=47285792
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110035745A KR20120118271A (en) | 2011-04-18 | 2011-04-18 | Method for selecting virtual machine migration target |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20120118271A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105607947A (en) * | 2015-12-11 | 2016-05-25 | 西北工业大学 | Novel cloud environment virtual machine scheduling method |
KR20170014804A (en) * | 2015-07-31 | 2017-02-08 | 주식회사 케이티 | Virtual machine provisioning system and method for cloud service |
-
2011
- 2011-04-18 KR KR1020110035745A patent/KR20120118271A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170014804A (en) * | 2015-07-31 | 2017-02-08 | 주식회사 케이티 | Virtual machine provisioning system and method for cloud service |
CN105607947A (en) * | 2015-12-11 | 2016-05-25 | 西北工业大学 | Novel cloud environment virtual machine scheduling method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10514960B2 (en) | Iterative rebalancing of virtual resources among VMs to allocate a second resource capacity by migrating to servers based on resource allocations and priorities of VMs | |
US11032380B2 (en) | System and method for intent-based service deployment | |
US10977086B2 (en) | Workload placement and balancing within a containerized infrastructure | |
US20200153751A1 (en) | Monitoring data streams and scaling computing resources based on the data streams | |
US9098337B2 (en) | Scheduling virtual central processing units of virtual machines among physical processing units | |
US10719366B1 (en) | Dynamic and selective hardware acceleration | |
US20150193244A1 (en) | Autonomously managed virtual machine anti-affinity rules in cloud computing environments | |
Kim et al. | Constraint-aware VM placement in heterogeneous computing clusters | |
Malakar et al. | Optimal execution of co-analysis for large-scale molecular dynamics simulations | |
US11372871B1 (en) | Programmable framework for distributed computation of statistical functions over time-based data | |
US11188364B1 (en) | Compilation strategy for a sharable application snapshot | |
KR20120066189A (en) | Apparatus for dynamically self-adapting of software framework on many-core systems and method of the same | |
KR20120036209A (en) | Method for optimization of snapshot boot image construction based on process class and library dependency | |
US11886898B2 (en) | GPU-remoting latency aware virtual machine migration | |
Gandhi et al. | Model-driven optimal resource scaling in cloud | |
Sharma et al. | An optimistic approach for task scheduling in cloud computing | |
CN114546587A (en) | Capacity expansion and reduction method of online image recognition service and related device | |
Klusáček et al. | Analysis of mixed workloads from shared cloud infrastructure | |
US11182145B2 (en) | Optimizing updates to distributed data processing applications | |
Gottschlag et al. | Fair Scheduling for {AVX2} and {AVX-512} Workloads | |
KR20120118271A (en) | Method for selecting virtual machine migration target | |
US11656888B2 (en) | Performing an application snapshot using process virtual machine resources | |
US20220417257A1 (en) | Protecting accelerators from malicious network functions | |
US11182183B2 (en) | Workload placement using conflict cost | |
Khiat et al. | MFHS: A modular scheduling framework for heterogeneous system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |