KR20170014804A - Virtual machine provisioning system and method for cloud service - Google Patents
Virtual machine provisioning system and method for cloud service Download PDFInfo
- Publication number
- KR20170014804A KR20170014804A KR1020150108707A KR20150108707A KR20170014804A KR 20170014804 A KR20170014804 A KR 20170014804A KR 1020150108707 A KR1020150108707 A KR 1020150108707A KR 20150108707 A KR20150108707 A KR 20150108707A KR 20170014804 A KR20170014804 A KR 20170014804A
- Authority
- KR
- South Korea
- Prior art keywords
- physical machine
- virtual machine
- resource
- rate information
- machine
- 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/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
- 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
-
- 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
- G06F9/45558—Hypervisor-specific management and integration aspects
Abstract
Description
본 발명은 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템 및 방법에 관한 것으로서, 더욱 상세하게는, 물리 머신의 리소스 단편화를 최소화하여 리소스 이용의 효율성을 개선함은 물론, 물리 머신의 과부하를 방지하여 클라우드 서비스의 서비스 품질을 보장하는 가상 머신 프로비저닝 시스템 및 방법에 관한 것이다.The present invention relates to a virtual machine provisioning system and method for a cloud service, and more particularly, it relates to a virtual machine provisioning system and method for minimizing resource fragmentation of a physical machine to improve resource utilization efficiency, And more particularly, to a virtual machine provisioning system and method for ensuring quality of service.
일반적으로, 클라우드 서비스(cloud service)는, 인터넷 기반의 컴퓨팅 서비스로서, 서비스 사용자로 하여금 각종 콘텐츠와 프로그램 등을 사용자의 개인용 PC나 모바일 단말 등이 아닌 인터넷을 통해 접속되는 서비스 제공자 서버에 저장하여 사용하도록 하는 서비스를 말한다.In general, a cloud service is an Internet-based computing service that allows a service user to store various contents and programs in a service provider server connected via the Internet rather than a personal PC or mobile terminal of the user, .
이러한 클라우드 서비스에서는, 서비스 사용자들의 요청에 따라 실제 서버에 해당하는 물리 머신(physical machine)의 한정된 리소스들을 할당하여 복수의 가상 머신(virtual machine)을 생성하고, 이러한 가상 머신들을 각각 사용자들에게 제공하는 가상 머신의 프로비저닝(provisioning)이 수행된다. 따라서, 서비스 제공자는 가상 머신 프로비저닝 시에 물리 머신의 리소스들을 효율적으로 할당하고 관리하여야만 모든 서비스 사용자들에 대하여 클라우드 서비스의 SLA(Service Level Agreement)와 QoS(Quality of Service) 등을 보장할 수 있다.In such a cloud service, a plurality of virtual machines are created by allocating limited resources of a physical machine corresponding to a real server at the request of service users, and these virtual machines are provided to users respectively Provisioning of the virtual machine is performed. Accordingly, the service provider can efficiently allocate and manage the resources of the physical machine at the time of provisioning of the virtual machine, so that SLA (Service Level Agreement) and QoS (Quality of Service) of the cloud service can be ensured for all service users.
그러나, 한국 공개특허공보 제10-2012-0053850호 등에 개시된 바와 같이, 기존 기술들은, 물리 머신에 이미 배치된 가상 머신들의 리소스 점유율을 고려하지 않고 신규 가상 머신을 배치하기 때문에, 가상 머신들의 배치 및 제거 과정이 반복됨에 따라 리소스의 단편화(fragmentation)를 심화시키고, 리소스 이용의 비효율을 초래하는 문제가 있다.However, as disclosed in Korean Patent Laid-Open Publication No. 10-2012-0053850 and the like, since existing technologies place a new virtual machine without considering the resource occupancy rate of virtual machines already arranged in the physical machine, As the removal process is repeated, fragmentation of resources is intensified and resource utilization becomes inefficient.
또한, 한국 공개특허공보 제10-2012-0103308호 등에 개시된 바와 같이, 기존 기술들은, 물리 머신의 리소스를 점유하고 있는 가상 머신들의 실제 리소스 사용률을 고려하지 않고 신규 가상 머신을 배치하기 때문에, 특정 물리 머신에 리소스 사용률이 높은 가상 머신들이 집중되어 과부하를 발생시키고 클라우드 서비스의 서비스 품질을 악화시키는 문제가 있다.Also, as disclosed in Korean Patent Laid-Open Publication No. 10-2012-0103308 and the like, since existing technologies arrange a new virtual machine without considering the actual resource utilization rate of the virtual machines occupying resources of the physical machine, There is a problem in that virtual machines having high resource usage rates are concentrated on the machine, causing overload and deteriorating the service quality of the cloud service.
본 발명이 해결하고자 하는 기술적 과제는, 물리 머신의 리소스 단편화를 최소화하여 리소스 이용의 효율성을 개선하고 서비스 시스템 구축 비용을 절감함은 물론, 물리 머신의 과부하를 방지하여 클라우드 서비스의 서비스 품질을 보장하는 가상 머신 프로비저닝 시스템 및 방법을 제공하는 것이다. SUMMARY OF THE INVENTION It is an object of the present invention to provide a system and method for minimizing resource fragmentation of a physical machine to improve resource utilization efficiency and reduce the cost of constructing a service system, And to provide a virtual machine provisioning system and method.
상기와 같은 기술적 과제를 해결하기 위하여 본 발명에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템은,클라우드 서버를 구성하는 물리 머신에 기 배치된 가상 머신의 리소스 점유율 정보를 수집하는 점유율 정보 수집부; 상기 기 배치된 가상 머신의 리소스 사용률 정보를 수집하는 사용률 정보 수집부; 상기 리소스 점유율 정보 및 상기 리소스 사용률 정보를 이용하여 사용자에 의해 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 물리 머신 선정부; 및 상기 물리 머신 선정부에 의해 선정된 물리 머신의 리소스를 할당하여 상기 선정된 물리 머신에 상기 생성 요청된 가상 머신을 생성 및 배치하는 가상 머신 배치부를 포함한다.According to an aspect of the present invention, there is provided a virtual machine provisioning system for a cloud service, the system including: a share information collecting unit for collecting resource occupancy information of a virtual machine disposed in a physical machine constituting a cloud server; A utilization information collection unit for collecting resource utilization information of the previously disposed virtual machines; A physical machine selecting unit for selecting a physical machine in which a virtual machine requested to be created by a user is placed using the resource occupancy rate information and the resource utilization rate information; And a virtual machine arrangement unit for allocating resources of the physical machine selected by the physical machine selection unit and creating and arranging the generated virtual machines in the selected physical machine.
일 실시예에 있어서, 상기 점유율 정보 수집부는, 상기 물리 머신의 CPU 코어, 메모리, 및 디스크 중 1 이상에 관한 리소스 점유율 정보를 수집할 수 있다.In one embodiment, the occupancy rate information collecting unit may collect resource occupancy rate information regarding at least one of the CPU core, the memory, and the disk of the physical machine.
일 실시예에 있어서, 상기 사용률 정보 수집부는, 상기 기 배치된 가상 머신의 CPU 사용률, 메모리 사용률, 디스크 사용률, 및 통신 트래픽 사용률 중 1 이상에 관한 리소스 사용률 정보를 수집할 수 있다.In one embodiment, the utilization rate information collector may collect resource utilization rate information regarding at least one of a CPU utilization rate, a memory utilization rate, a disk utilization rate, and a communication traffic utilization rate of the previously disposed virtual machines.
일 실시예에 있어서, 상기 물리 머신 선정부는, 상기 리소스 점유율 정보를 이용하여 후보 물리 머신을 결정하고, 상기 리소스 사용율 정보를 이용하여 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정할 수 있다.In one embodiment, the physical machine selection unit may determine the candidate physical machine using the resource occupancy rate information, and use the resource utilization rate information to select the candidate physical machine as a physical machine in which the generation requested virtual machine is disposed Can be selected.
일 실시예에 있어서, 상기 물리 머신 선정부는, 상기 리소스 점유율 정보를 이용하여 상기 생성 요청된 가상 머신이 배치될 수 있는 물리 머신들 중 최소 리소스를 가진 물리 머신을 상기 후보 물리 머신으로 결정하고, 상기 리소스 사용률 정보를 이용하여 상기 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치 이하인 경우 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정할 수 있다.In one embodiment, the physical machine selection unit determines the physical machine having the minimum resource among the physical machines in which the generation-requested virtual machine can be placed, using the resource occupancy rate information as the candidate physical machine, When the resource utilization rate of the virtual machine currently deployed in the candidate physical machine is lower than a predetermined threshold value by using the resource utilization rate information, the candidate physical machine can be selected as the physical machine in which the generation-requested virtual machine is disposed.
일 실시예에 있어서, 상기 시스템은, 상기 클라우드 서버를 구성하는 물리 머신의 리소스 정보, 상기 점유율 정보 수집부에 의해 수집된 리소스 점유율 정보, 및 상기 사용률 정보 수집부에 의해 수집된 리소스 사용률 정보를 저장 및 관리하는 리소스 정보 관리부를 더 포함할 수 있다.In one embodiment, the system stores resource information of a physical machine constituting the cloud server, resource occupancy rate information collected by the occupancy rate information collection unit, and resource utilization rate information collected by the utilization rate information collection unit And a resource information management unit for managing the resource information.
일 실시예에 있어서, 상기 시스템은, 가상 머신 생성 요청 사용자에게 적용되는 가상 머신 배치 정책을 저장 및 관리하는 배치 정책 관리부를 더 포함할 수 있다.In one embodiment, the system may further include a deployment policy manager for storing and managing a virtual machine deployment policy applied to the virtual machine creation request user.
일 실시예에 있어서, 상기 물리 머신 선정부는, 상기 배치 정책 관리부의 가상 머신 배치 정책에 따라 상기 리소스 정보 관리부의 물리 머신 리소스 정보, 리소스 점유율 정보, 및 리소스 사용률 정보를 이용하여 상기 생성 요청된 가상 머신이 배치되는 물리 머신을 선정할 수 있다.In one embodiment, the physical machine selection unit selects the virtual machine to be created based on the physical machine resource information, the resource occupancy rate information, and the resource utilization rate information of the resource information management unit in accordance with the virtual machine placement policy of the placement policy management unit. Can be selected.
일 실시예에 있어서, 상기 시스템은, 사용자의 가상 머신 생성 요청을 수신하고, 상기 가상 머신 생성 요청에 대응하는 가상 머신 생성 결과를 상기 사용자의 클라이언트로 전송하는 사용자 요청 처리부를 더 포함할 수 있다.In one embodiment, the system may further include a user request processing unit for receiving a user's virtual machine creation request and transmitting a virtual machine creation result corresponding to the virtual machine creation request to the user's client.
상기와 같은 기술적 과제를 해결하기 위하여 본 발명에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 방법은, 클라우드 서버와 연동하는 소정 시스템을 이용하는 방법으로서, 상기 시스템이, 클라우드 서버를 구성하는 물리 머신에 기 배치된 가상 머신의 리소스 점유율 정보를 수집하는 점유율 정보 수집 단계; 상기 시스템이, 상기 기 배치된 가상 머신의 리소스 사용률 정보를 수집하는 사용률 정보 수집 단계; 상기 시스템이, 상기 리소스 점유율 정보 및 상기 리소스 사용률 정보를 이용하여 사용자에 의해 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 물리 머신 선정 단계; 및 상기 시스템이, 상기 물리 머신 선정 단계에 의해 선정된 물리 머신의 리소스를 할당하여 상기 선정된 물리 머신에 상기 생성 요청된 가상 머신을 생성 및 배치하는 가상 머신 배치 단계를 포함한다.According to another aspect of the present invention, there is provided a method for provisioning a virtual machine for a cloud service, the method including using a predetermined system interlocked with a cloud server, the system comprising: A share information collection step of collecting resource share information of a virtual machine; The system comprising: a utilization rate information collection step of collecting resource utilization rate information of the previously disposed virtual machines; A physical machine selecting step of the system selecting a physical machine in which a virtual machine requested by a user is placed using the resource occupancy rate information and the resource utilization rate information; And a virtual machine placement step in which the system allocates resources of the physical machine selected by the physical machine selection step to create and place the virtual machine requested to be created in the selected physical machine.
일 실시예에 있어서, 상기 점유율 정보 수집 단계는, 상기 물리 머신의 CPU 코어, 메모리, 및 디스크 중 1 이상에 관한 리소스 점유율 정보를 수집하는 단계일 수 있다.In one embodiment, the occupancy rate information collection step may be a step of collecting resource occupancy rate information regarding at least one of the CPU core, the memory, and the disk of the physical machine.
일 실시예에 있어서, 상기 사용률 정보 수집 단계는, 상기 기 배치된 가상 머신의 CPU 사용률, 메모리 사용률, 디스크 사용률, 및 통신 트래픽 사용률 중 1 이상에 관한 리소스 사용률 정보를 수집하는 단계일 수 있다.In one embodiment, the utilization rate information collection step may be a step of collecting resource utilization rate information regarding at least one of a CPU utilization rate, a memory utilization rate, a disk utilization rate, and a communication traffic utilization rate of the previously disposed virtual machine.
일 실시예에 있어서, 상기 물리 머신 선정 단계는, 상기 리소스 점유율 정보를 이용하여 후보 물리 머신을 결정하는 단계; 및 상기 리소스 사용율 정보를 이용하여 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 단계를 포함할 수 있다.In one embodiment, the physical machine selecting step includes the steps of: determining a candidate physical machine using the resource occupancy information; And selecting the candidate physical machine as a physical machine in which the generation-requested virtual machine is disposed, using the resource utilization rate information.
일 실시예에 있어서, 상기 물리 머신 선정 단계는, 상기 리소스 점유율 정보를 이용하여 상기 생성 요청된 가상 머신이 배치될 수 있는 물리 머신들 중 최소 리소스를 가진 물리 머신을 상기 후보 물리 머신으로 결정하는 단계; 및 상기 리소스 사용률 정보를 이용하여 상기 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치 이하인 경우 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 단계를 포함할 수 있다.In one embodiment, the physical machine selecting step includes the step of determining, as the candidate physical machine, a physical machine having a minimum resource among the physical machines in which the generation requested virtual machine can be placed using the resource occupancy information ; And selecting the candidate physical machine as a physical machine in which the generation-requested virtual machine is disposed, when the resource utilization rate of the virtual machine disposed in the candidate physical machine is lower than a predetermined threshold value by using the resource utilization rate information have.
일 실시예에 있어서, 상기 방법은, 상기 클라우드 서버를 구성하는 물리 머신의 리소스 정보, 상기 점유율 정보 수집부에 의해 수집된 리소스 점유율 정보, 및 상기 사용률 정보 수집부에 의해 수집된 리소스 사용률 정보를 저장 및 관리하는 리소스 정보 관리 단계를 더 포함할 수 있다.In one embodiment, the method includes storing resource information of a physical machine constituting the cloud server, resource occupancy rate information collected by the occupancy rate information collecting unit, and resource utilization rate information collected by the utilization rate information collecting unit And a resource information management step of managing the resource information.
일 실시예에 있어서, 상기 방법은, 가상 머신 생성 요청 사용자에게 적용되는 가상 머신 배치 정책을 저장 및 관리하는 배치 정책 관리 단계를 더 포함할 수 있다.In one embodiment, the method may further comprise a deployment policy management step of storing and managing a virtual machine deployment policy applied to the virtual machine creation requesting user.
일 실시예에 있어서, 상기 물리 머신 선정 단계는, 상기 배치 정책 관리 단계의 가상 머신 배치 정책에 따라 상기 리소스 정보 관리 단계의 물리 머신 리소스 정보, 리소스 점유율 정보, 및 리소스 사용률 정보를 이용하여 상기 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 단계일 수 있다.In one embodiment, the physical machine selecting step may include a physical machine resource management step of managing the physical machine resource information, the resource occupancy rate information, and the resource utilization ratio information of the resource information management step in accordance with the virtual machine placement policy of the deployment policy management step, Lt; RTI ID = 0.0 > virtual machine < / RTI >
일 실시예에 있어서, 상기 방법은, 상기 물리 머신 선정 단계 전에, 상기 시스템이 사용자의 가상 머신 생성 요청을 수신하는 단계; 및 상기 가상 머신 배치 단계 후에, 상기 시스템이 상기 가상 머신 생성 요청에 대응하는 가상 머신 생성 결과를 상기 사용자의 클라이언트로 전송하는 단계를 더 포함할 수 있다.In one embodiment, the method further comprises: prior to the physical machine selection step, the system receiving a user virtual machine creation request; And after the virtual machine placement step, the system transmits a virtual machine creation result corresponding to the virtual machine creation request to the client of the user.
본 발명에 따르면, 물리 머신에 기 배치된 가상 머신들의 리소스 점유율을 고려하여 최적합 방식으로 가상 머신을 배치함으로써, 물리 머신의 리소스 단편화를 최소화하고 리소스 이용 효율을 개선함은 물론, 서비스 시스템 구축 비용을 절감할 수 있다.According to the present invention, by allocating virtual machines in a most suitable manner in consideration of the resource occupancy rate of virtual machines disposed in the physical machine, resource fragmentation of the physical machine is minimized and resource utilization efficiency is improved, Can be saved.
또한, 물리 머신에 기 배치된 가상 머신들의 실제 리소스 사용률을 고려하여 물리 머신의 부하가 분산되도록 가상 머신을 배치함으로써, 특정 물리 머신에서의 과부하 발생을 방지하고 모든 서비스 사용자에 대하여 클라우드 서비스의 SLA와 QoS를 보장할 수 있다.In addition, by arranging the virtual machine to distribute the load of the physical machine in consideration of the actual resource utilization rate of the virtual machines placed in the physical machine, it is possible to prevent the occurrence of an overload in a specific physical machine, QoS can be guaranteed.
나아가, 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자라면, 본 발명에 따른 다양한 실시예들이 상기 언급되지 않은 여러 기술적 과제들을 해결할 수 있음을 이하의 설명으로부터 자명하게 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various embodiments of the present invention can be accomplished without departing from the spirit and scope of the present invention.
도 1은 본 발명이 적용되는 클라우드 서비스 환경의 일례를 나타낸 도면.
도 2는 본 발명의 일 실시예에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템을 나타낸 블록도.
도 3은 본 발명의 일 실시예에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 방법을 나타낸 흐름도.
도 4는 리소스 정보 관리부에 의해 관리되는 데이터베이스 구조의 일례를 나타낸 도면.
도 5는 배치 정책 관리부에 의해 관리되는 데이터베이스 구조의 일례를 나타낸 도면.
도 6은 본 발명의 일 실시예에 따라 가상 머신을 배치하는 과정을 나타낸 도면.1 is a diagram illustrating an example of a cloud service environment to which the present invention is applied.
2 is a block diagram illustrating a virtual machine provisioning system for a cloud service according to an embodiment of the present invention.
3 is a flowchart illustrating a virtual machine provisioning method for a cloud service according to an embodiment of the present invention.
4 is a diagram showing an example of a database structure managed by a resource information management unit;
5 is a diagram showing an example of a database structure managed by a placement policy management unit;
FIG. 6 illustrates a process of arranging a virtual machine according to an embodiment of the present invention. FIG.
이하, 본 발명의 기술적 과제에 관한 해결 방안을 명확화하기 위해 첨부도면을 참조하여 본 발명의 바람직한 실시예들을 상세하게 설명한다. 다만, 본 발명을 설명함에 있어서 관련 공지기술에 관한 설명이 오히려 본 발명의 요지를 불명료하게 하는 경우 그에 관한 설명은 생략하기로 한다. 또한, 후술하는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 설계자, 제조자 등의 의도 또는 관례 등에 따라 달라질 수 있을 것이다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings in order to clarify the solution to the technical problem of the present invention. In the following description of the present invention, however, the description of related arts will be omitted if the gist of the present invention becomes obscure. In addition, the terms described below are defined in consideration of the functions of the present invention, and may be changed depending on the intention or custom of the designer, the manufacturer, and the like. Therefore, the definition should be based on the contents throughout this specification.
도 1에는 본 발명이 적용되는 클라우드 서비스 환경의 일례가 도시되어 있다.FIG. 1 shows an example of a cloud service environment to which the present invention is applied.
도 1에 도시된 바와 같이, 클라우드 서비스 환경은 클라우드 서버(10), 인터넷(20)을 통해 클라우드 서버(10)에 접속하는 다수의 클라이언트(30)를 포함한다. 클라우드 서버(10)는 클라우드 서비스의 물리적 구조 단위에 해당하는 POD(Product on Demand)로 구성되며, 이러한 POD를 1 이상 포함할 수 있다. 또한, POD는 실제 물리적 리소스(resource)를 제공하는 컴퓨팅 서버인 1 이상의 물리 머신(physical machine)(12), 공유 저장부(14) 및 네트워크 통신부(16)를 포함할 수 있다. 물리 머신들(12)은 자체의 로컬 저장부를 리소스로 활용할 수 있음은 물론, 공유 저장부(14)를 리소스로 활용할 수도 있다. 네트워크 통신부(16)는 인터넷(20)을 통해 클라이언트(30) 등과의 통신을 수행할 수 있으며, 라우터나 L2, L3 스위치 등을 포함할 수 있다. 클라우드 서버(10)는, 클라이언트(30)로부터 수신되는 사용자의 서비스 요청에 따라 물리 머신(12)에 가상 머신(virtual machine)을 생성하여, 사용자로 하여금 가상 머신에 할당된 리소스를 사용하도록 한다. 한편, 클라우드 서버(10)는 리소스를 효율적으로 이용하기 위해 복수의 물리 머신(12)을 클러스터링하여 클러스터 단위로 관리할 수도 있다.As shown in FIG. 1, a cloud service environment includes a
본 발명에 따른 가상 머신 프로비저닝 시스템(100)은, 이러한 클라우드 서비스 환경에서 클라우드 서버(10)와 연동하여 클라우드 서비스를 위한 가상 머신 프로비저닝을 수행하며, 물리 머신(12)의 리소스 단편화를 최소화하여 리소스 이용의 효율성을 개선함은 물론, 물리 머신(12)의 과부하를 방지하여 클라우드 서비스의 서비스 품질을 보장한다.The virtual
도 2에는 본 발명의 일 실시예에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템이 블록도로 도시되어 있다.FIG. 2 is a block diagram of a virtual machine provisioning system for a cloud service according to an embodiment of the present invention.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 가상 머신 프로비저닝 시스템(100)은, 점유율 정보 수집부(110), 사용률 정보 수집부(120), 물리 머신 선정부(130), 및 가상 머신 배치부(140)를 포함하며, 리소스 정보 관리부(150), 배치 정책 관리부(160), 사용자 요청 처리부(102) 등을 더 포함할 수 있다.2, the virtual
도 3에는 본 발명의 일 실시예에 따른 클라우드 서비스를 위한 가상 머신 프로비저닝 방법이 흐름도로 도시되어 있다.FIG. 3 is a flowchart illustrating a virtual machine provisioning method for a cloud service according to an exemplary embodiment of the present invention.
도 2 및 도 3을 참조하여 가상 머신 프로비저닝 시스템(100)의 기능 및 동작을 더욱 구체적으로 설명한다.The functions and operation of the virtual
우선, 점유율 정보 수집부(110)는, 클라우드 서버(10)를 구성하는 물리 머신들(12)에 기 배치된 가상 머신들의 리소스 점유율 정보를 수집한다(S310). 이 경우, 점유율 정보 수집부(110)는, 물리 머신(12)의 CPU 코어, 메모리, 및 디스크 중 1 이상에 관한 리소스 점유율 정보를 수집할 수 있다.First, the occupancy rate
그 다음, 사용률 정보 수집부(120)는, 각각의 물리 머신(12)에 기 배치된 가상 머신의 실제 리소스 사용률 정보를 수집한다(S320). 이 경우, 사용률 정보 수집부(120)는, 기 배치된 가상 머신의 CPU 사용률, 메모리 사용률, 디스크 사용률, 및 통신 트래픽 사용률 중 1 이상에 관한 리소스 사용률 정보를 수집할 수 있다.Then, the utilization
점유율 정보 수집부(110)와 사용률 정보 수집부(120)는, 주기적으로 또는 특정 이벤트 발생 시에 해당 정보를 수집할 수 있으며, 수집된 리소스 관련 정보들은 리소스 정보 관리부(150)에 저장되어 관리될 수 있다. 즉, 리소스 정보 관리부(150)는, 클라우드 서버(10)를 구성하는 물리 머신(12)의 전체 리소스 정보, 점유율 정보 수집부(110)에 의해 수집된 리소스 점유율 정보, 및 사용률 정보 수집부(120)에 의해 수집된 리소스 사용률 정보를 데이터베이스(152)에 저장하고, 주기적 또는 특정 이벤트 발생 시 저장된 정보를 업데이트할 수 있다.The occupancy rate
도 4에는 리소스 정보 관리부(150)에 의해 관리되는 데이터베이스 구조의 일례가 도시되어 있다.FIG. 4 shows an example of a database structure managed by the resource
도 4에 도시된 바와 같이, 리소스 정보 관리부(150)는, 물리 머신(12)의 서비스 지역 정보(zone ID), 클라우드 서버 정보(POD ID), 클러스터 정보(cluster ID), 물리 머신 정보(PM ID)와 관련하여 해당 물리 머신(12)의 가상 머신의 수(VM 수), CPU 코어 수(CPU), 메모리 용량(memory), 디스크 용량(disk) 등의 리소스 관련 정보를 저장 및 관리할 수 있다.4, the resource
한편, 물리 머신 선정부(130)는, 사용자 요청 처리부(102)가 사용자의 클라이언트(30)로부터 가상 머신 생성 요청을 수신하는 경우(S330), 리소스 정보 관리부(150)에 저장된 리소스 점유율 정보 및 리소스 사용률 정보를 이용하여, 사용자에 의해 생성 요청된 가상 머신이 배치될 물리 머신을 선정한다(S340, S50). 가상 머신 생성을 위해 할당되는 물리 머신(12)의 리소스의 양은 사용자의 요청 내지 SLA(Service Level Agreement)에 따라 달라질 수 있다. 예컨대, 사용자 요청 처리부(102)가 수신하는 가상 머신 생성 요청에는, 사용자가 필요로 하는 코어 수, 메모리 용량, 및 디스크 용량 등의 정보가 포함될 수 있다. 또한, 물리 머신 선정부(130)는, 배치 정책 관리부(160)로부터 가상 머신 배치 정책을 전송받고, 그에 따라 리소스 정보 관리부(150)의 물리 머신 리소스 정보, 리소스 점유율 정보, 및 리소스 사용률 정보 등을 이용하여 가상 머신이 배치될 물리 머신을 선정할 수 있다. When the user
도 5에는 배치 정책 관리부(160)에 의해 관리되는 데이터베이스 구조의 일례가 도시되어 있다.FIG. 5 shows an example of a database structure managed by the deployment
도 5에 도시된 바와 같이, 배치 정책 관리부(160)는, 가상 머신 생성 요청 사용자에게 적용되는 가상 머신 배치 정책을 저장 및 관리한다. 즉, 배치 정책 관리부(160)는, 사용자 정보(사용자 ID)와 관련하여 해당 사용자에게 적용되는 가상 머신 배치 정책을 저장하고 적용 정책이 변경되는 경우 저장된 정책을 업데이트할 수 있다. 배치 정책 관리부(160)에 저장 및 관리되는 가상 머신 배치 정책에는 리소스 점유율에 따른 배치 정책(리소스 점유율 정책)과 리소스 사용률에 따른 배치 정책(리소스 사용률 정책)이 포함된다. 본 발명에 있어서, 리소스 점유율에 따른 배치 정책으로는 소위 최적합(best fit) 정책이 적용된다. 또한, 리소스 사용률에 따른 배치 정책으로는 물리 머신(12)의 특정 리소스를 기준 리소스로 하여 해당 물리 머신(12)에 배치된 가상 머신들의 기준 리소스 사용률들이 평균적으로 소정 임계치 이하인 경우에만 해당 물리 머신(12)에 신규 가상 머신을 배치하도록 하는 정책이 적용된다. 이때, 기준 리소스 사용률로는 CPU 사용률, disk 입출력 사용률, 또는 통신 트래픽 사용률 등이 사용될 수 있다. 또한, 기준 리소스 사용률은, 사용자의 요청 또는 가상 머신의 용도 등에 따라 사용자마다 다르게 결정될 수 있다.As shown in FIG. 5, the deployment
따라서, 물리 머신 선정부(130)는, 배치 정책 관리부(160)의 가상 머신 배치 정책에 따라 리소스 정보 관리부(150)의 리소스 점유율 정보를 이용하여 후보 물리 머신을 결정하고, 리소스 사용율 정보를 이용하여 후보 물리 머신을 신규 가상 머신이 배치될 물리 머신으로 선정할 수 있다(S340, S350).Therefore, the physical
예컨대, 물리 머신 선정부(130)는, 최적합 정책을 적용하여 후보 물리 머신을 결정할 수 있다. 즉, 물리 머신 선정부(130)는, 리소스 점유율 정보를 이용하여 생성 요청된 가상 머신이 배치될 수 있는 물리 머신들 중 최소 리소스를 가진 물리 머신을 후보 물리 머신으로 결정할 수 있다(S340). 그 다음, 물리 머신 선정부(130)는, 리소스 사용률에 따른 정책을 적용하여 후보 물리 머신을 신규 가상 머신이 배치될 물리 머신으로 최종 선정할 수 있다. 즉, 물리 머신 선정부(130)는, 리소스 사용률 정보를 이용하여 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치 이하인 경우 후보 물리 머신을 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정할 수 있다(S350). 반면, 물리 머신 선정부(130)는, 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치를 초과하는 경우, 해당 후보 물리 머신을 가상 머신 배치 대상에서 제외하고(S352), 두 번째로 적은 리소스를 가진 물리 머신을 후보 물리 머신으로 결정할 수 있다(S350).For example, the physical
그 다음, 가상 머신 배치부(140)는, 물리 머신 선정부(130)에 의해 선정된 물리 머신의 리소스를 할당하여 해당 물리 머신에 생성 요청된 가상 머신을 생성 및 배치한다(S360).Next, the virtual
도 6에는 본 발명의 일 실시예에 따라 가상 머신을 배치하는 과정이 도시되어 있다.FIG. 6 illustrates a process of arranging a virtual machine according to an embodiment of the present invention.
도 6에 도시된 바와 같이, 신규 가상 머신들(601 내지 605)이 배치될 수 있는 물리 머신들(610, 620, 630)이 3개인 경우, 4 코어가 필요한 제1 가상 머신(601)은 3개의 물리 머신 중 하나, 예컨대 제1 물리 머신(610)에 배치될 수 있다. 그 결과, 제1 물리 머신(610)은 12 코어가 남게 되고, 제2 물리 머신(620)과 제3 물리 머신(630)은 각각 16 코어가 남게 된다.6, when there are three
그 다음, 4 코어가 필요한 제2 가상 머신(602)은 최적합 정책에 따라 최소 리소스를 가진 제1 물리 머신(610)에 배치된다. 동일한 방식으로 제3 가상 머신(603)도 제1 물리 머신(610)에 배치될 수 있다.Then, the second
그 다음, 16 코어가 필요한 제4 가상 머신(604)은 4 코어만 남은 제1 물리 머신(610)에 배치될 수 없고, 제2 물리 머신(620) 또는 제3 물리 머신(630)에 배치될 수 있다. 제4 가상 머신(604)이 제2 물리 머신(620)에 배치되면 제2 물리 머신(620)의 잔여 코어는 존재하지 않게 된다.Then, the fourth
그 다음, 4 코어가 필요한 제5 가상 머신(605)은, 최적합 정책에 따라 제1 물리 머신(610)과 제3 물리 머신(630) 중에서 제1 물리 머신(610)에 배치될 수 있다. 그러나, 제1 물리 머신(610)에 기 배치된 제1, 제2, 제3 가상 머신(601, 602, 603)의 리소스 사용률이 소정 임계치를 초과하는 경우, 제5 가상 머신(605)은 과부하 발생을 방지하기 위해 제3 물리 머신(630)에 배치된다.The fifth
이와 같이, 사용자의 가상 머신 생성 요청에 대응하여 가상 머신의 생성 및 배치가 완료되면, 사용자 요청 처리부(102)는, 가상 머신 생성 결과를 사용자의 클라이언트로 전송한다(S370).When the virtual machine creation and placement are completed in response to the user's virtual machine creation request, the user
그리고, 클라우드 서비스에서는 가상 머신의 생성과 제거가 수시로 발생하기 때문에, 점유율 정보 수집부(110)와 사용률 정보 수집부(120)는, 리소스 정보 수집 주기가 도래하거나 소정 이벤트가 발생하면(S380), 각각 리소스 점유율 정보나 리소스 사용률 정보를 새롭게 수집하고, 리소스 정보 관리부(150)는 해당 정보를 업데이트한다.In the cloud service, since the creation and removal of virtual machines occur frequently, the occupancy rate
한편, 본 발명의 실시예들은 컴퓨터가 읽어들일 수 있는 컴퓨터 프로그램을 컴퓨터로 판독 가능한 기록매체에 기록하여 구현하는 것이 가능하다. 본 발명의 실시예들이 컴퓨터 프로그램을 이용하여 구현되는 경우, 본 발명의 구성 수단들은 필요한 작업을 실행하는 프로그램 코드 세그먼트들이다. 이러한, 컴퓨터 프로그램 내지 코드 세그먼트들은 컴퓨터로 판독 가능한 기록매체에 저장되거나 반송파와 결합하여 전송 매체 또는 통신망을 통해 데이터 신호 형태로 전송될 수 있다. 컴퓨터로 판독 가능한 기록매체에는 컴퓨터 시스템이 읽어들일 수 있는 데이터를 기록하는 모든 종류의 매체가 포함된다. 예컨대, 컴퓨터로 판독 가능한 기록매체에는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 포함될 수 있다. 또한, 이러한 기록매체를 다양한 네트워크로 연결된 컴퓨터 시스템에 분산 배치함으로써 프로그램 코드들이 분산 방식으로 저장되거나 실행되도록 할 수 있다.Meanwhile, embodiments of the present invention can be realized by recording a computer-readable computer program in a computer-readable recording medium. When embodiments of the present invention are implemented using a computer program, the constituent means of the present invention are program code segments that perform the necessary tasks. The computer program or code segments may be stored in a computer-readable recording medium or in combination with a carrier wave and transmitted in the form of a data signal via a transmission medium or a communication network. A computer-readable recording medium includes all kinds of media for recording data that can be read by a computer system. For example, the computer-readable recording medium may include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like. In addition, the program codes may be stored or executed in a distributed manner by distributing the recording medium to a computer system connected to various networks.
상술한 바와 같이, 본 발명에 따르면, 물리 머신에 기 배치된 가상 머신들의 리소스 점유율을 고려하여 최적합 방식으로 가상 머신을 배치함으로써, 물리 머신의 리소스 단편화를 최소화하고 리소스 이용 효율을 개선함은 물론, 서비스 시스템 구축 비용을 절감할 수 있다. 또한, 물리 머신에 기 배치된 가상 머신들의 실제 리소스 사용률을 고려하여 물리 머신의 부하가 분산되도록 가상 머신을 배치함으로써, 특정 물리 머신에서의 과부하 발생을 방지하고 모든 서비스 사용자에 대하여 클라우드 서비스의 SLA와 QoS를 보장할 수 있다. 나아가, 본 발명에 따른 다양한 실시예들은, 당해 기술 분야는 물론 관련 기술 분야에서 본 명세서에 언급된 내용 이외의 다른 여러 기술적 과제들을 해결할 수 있음은 물론이다.As described above, according to the present invention, by allocating a virtual machine in a most suitable manner in consideration of the resource occupancy rate of virtual machines placed in the physical machine, resource fragmentation of the physical machine can be minimized and resource utilization efficiency can be improved , The cost of constructing the service system can be reduced. In addition, by arranging the virtual machine to distribute the load of the physical machine in consideration of the actual resource utilization rate of the virtual machines placed in the physical machine, it is possible to prevent the occurrence of an overload in a specific physical machine, QoS can be guaranteed. Furthermore, it is to be understood that various embodiments in accordance with the present invention may solve many technical problems in the art, as well as those described in the related art.
지금까지 본 발명에 대해 구체적인 실시예들을 참고하여 설명하였다. 그러나 당업자라면 본 발명의 기술적 범위에서 다양한 변형 실시예들이 구현될 수 있음을 명확하게 이해할 수 있을 것이다. 그러므로 앞서 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 즉, 본 발명의 진정한 기술적 사상의 범위는 첨부된 특허청구범위에 나타나 있으며, 그와 균등범위 내에 있는 모든 차이점은 본 발명에 포함되는 것으로 해석되어야 할 것이다.The present invention has been described with reference to specific embodiments. It will be apparent, however, to one skilled in the art that various modifications may be practiced within the technical scope of the invention. Therefore, the above-described embodiments should be considered from an illustrative point of view, not from a limiting viewpoint. That is, the scope of the true technical idea of the present invention is set forth in the appended claims, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.
100 : 가상 머신 프로비저닝 시스템 102 : 사용자 요청 처리부
110 : 점유율 정보 수집부 120 : 사용률 정보 수집부
130 : 물리 머신 선정부 140 : 가상 머신 배치부
150 : 리소스 정보 관리부 160 : 배치 정책 관리부100: Virtual Machine Provisioning System 102: User Request Processor
110: Occupancy rate information collecting unit 120: Usage rate information collecting unit
130: physical machine selection unit 140: virtual machine arrangement unit
150: resource information management unit 160:
Claims (19)
상기 기 배치된 가상 머신의 리소스 사용률 정보를 수집하는 사용률 정보 수집부;
상기 리소스 점유율 정보 및 상기 리소스 사용률 정보를 이용하여 사용자에 의해 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 물리 머신 선정부; 및
상기 물리 머신 선정부에 의해 선정된 물리 머신의 리소스를 할당하여 상기 선정된 물리 머신에 상기 생성 요청된 가상 머신을 생성 및 배치하는 가상 머신 배치부를 포함하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.An occupancy rate information collecting unit for collecting resource occupancy rate information of a virtual machine that is placed in a physical machine constituting a cloud server;
A utilization information collection unit for collecting resource utilization information of the previously disposed virtual machines;
A physical machine selecting unit for selecting a physical machine in which a virtual machine requested to be created by a user is placed using the resource occupancy rate information and the resource utilization rate information; And
And a virtual machine arrangement unit for allocating resources of the physical machine selected by the physical machine selection unit and creating and arranging the virtual machines requested to be created in the selected physical machine.
상기 점유율 정보 수집부는, 상기 물리 머신의 CPU 코어, 메모리, 및 디스크 중 1 이상에 관한 리소스 점유율 정보를 수집하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
Wherein the occupancy rate information collecting unit collects resource occupancy rate information about at least one of a CPU core, a memory, and a disk of the physical machine.
상기 사용률 정보 수집부는, 상기 기 배치된 가상 머신의 CPU 사용률, 메모리 사용률, 디스크 사용률, 및 통신 트래픽 사용률 중 1 이상에 관한 리소스 사용률 정보를 수집하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
Wherein the utilization rate information collection unit collects resource utilization rate information related to at least one of a CPU utilization rate, a memory utilization rate, a disk utilization rate, and a communication traffic utilization rate of the previously disposed virtual machines.
상기 물리 머신 선정부는, 상기 리소스 점유율 정보를 이용하여 후보 물리 머신을 결정하고, 상기 리소스 사용율 정보를 이용하여 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
Wherein the physical machine selection unit determines the candidate physical machine by using the resource occupancy rate information and selects the candidate physical machine as the physical machine in which the generation requested virtual machine is placed by using the resource utilization rate information Virtual Machine Provisioning System for Cloud Services.
상기 물리 머신 선정부는, 상기 리소스 점유율 정보를 이용하여 상기 생성 요청된 가상 머신이 배치될 수 있는 물리 머신들 중 최소 리소스를 가진 물리 머신을 상기 후보 물리 머신으로 결정하고, 상기 리소스 사용률 정보를 이용하여 상기 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치 이하인 경우 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
Wherein the physical machine selecting unit determines the physical machine having the minimum resource among the physical machines to which the virtual machine requested to be created can be placed using the resource occupancy rate information as the candidate physical machine, Wherein the candidate physical machine selects a candidate physical machine as a physical machine in which the generated virtual machine is disposed if the resource utilization rate of the virtual machine currently deployed in the candidate physical machine is less than or equal to a predetermined threshold value.
상기 시스템은, 상기 클라우드 서버를 구성하는 물리 머신의 리소스 정보, 상기 점유율 정보 수집부에 의해 수집된 리소스 점유율 정보, 및 상기 사용률 정보 수집부에 의해 수집된 리소스 사용률 정보를 저장 및 관리하는 리소스 정보 관리부를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
The system includes a resource information manager for storing and managing resource utilization information of the physical machine constituting the cloud server, resource utilization rate information collected by the occupancy rate information collector, and resource utilization rate information collected by the utilization rate information collector, Wherein the virtual machine provisioning system further comprises a virtual machine provisioning system for the cloud service.
상기 시스템은, 가상 머신 생성 요청 사용자에게 적용되는 가상 머신 배치 정책을 저장 및 관리하는 배치 정책 관리부를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.In the sixth aspect,
Wherein the system further comprises a deployment policy manager for storing and managing a virtual machine deployment policy applied to a virtual machine creation requesting user.
상기 물리 머신 선정부는, 상기 배치 정책 관리부의 가상 머신 배치 정책에 따라 상기 리소스 정보 관리부의 물리 머신 리소스 정보, 리소스 점유율 정보, 및 리소스 사용률 정보를 이용하여 상기 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.8. The method of claim 7,
Wherein the physical machine selection unit selects a physical machine in which the virtual machine is requested to be created using the physical machine resource information, the resource occupancy rate information, and the resource utilization rate information of the resource information management unit according to the virtual machine placement policy of the placement policy management unit The virtual machine provisioning system for a cloud service.
상기 시스템은, 사용자의 가상 머신 생성 요청을 수신하고, 상기 가상 머신 생성 요청에 대응하는 가상 머신 생성 결과를 상기 사용자의 클라이언트로 전송하는 사용자 요청 처리부를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 시스템.The method according to claim 1,
Wherein the system further comprises a user request processing unit for receiving a virtual machine creation request of the user and transmitting a virtual machine creation result corresponding to the virtual machine creation request to the client of the user, Machine Provisioning System.
상기 시스템이, 클라우드 서버를 구성하는 물리 머신에 기 배치된 가상 머신의 리소스 점유율 정보를 수집하는 점유율 정보 수집 단계;
상기 시스템이, 상기 기 배치된 가상 머신의 리소스 사용률 정보를 수집하는 사용률 정보 수집 단계;
상기 시스템이, 상기 리소스 점유율 정보 및 상기 리소스 사용률 정보를 이용하여 사용자에 의해 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 물리 머신 선정 단계; 및
상기 시스템이, 상기 물리 머신 선정 단계에 의해 선정된 물리 머신의 리소스를 할당하여 상기 선정된 물리 머신에 상기 생성 요청된 가상 머신을 생성 및 배치하는 가상 머신 배치 단계를 포함하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.A method for performing virtual machine provisioning for a cloud service using a predetermined system interworking with a cloud server,
The system comprising: an occupancy rate information collecting step of collecting resource occupancy rate information of a virtual machine previously disposed in a physical machine constituting a cloud server;
The system comprising: a utilization rate information collection step of collecting resource utilization rate information of the previously disposed virtual machines;
A physical machine selecting step of the system selecting a physical machine in which a virtual machine requested by a user is placed using the resource occupancy rate information and the resource utilization rate information; And
Wherein the system comprises a virtual machine arrangement step of allocating resources of the physical machine selected by the physical machine selection step and creating and arranging the virtual machines requested to be created in the selected physical machine Provisioning method.
상기 점유율 정보 수집 단계는, 상기 물리 머신의 CPU 코어, 메모리, 및 디스크 중 1 이상에 관한 리소스 점유율 정보를 수집하는 단계인 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
Wherein the occupancy rate information collection step is a step of collecting resource occupancy rate information regarding at least one of a CPU core, a memory, and a disk of the physical machine.
상기 사용률 정보 수집 단계는, 상기 기 배치된 가상 머신의 CPU 사용률, 메모리 사용률, 디스크 사용률, 및 통신 트래픽 사용률 중 1 이상에 관한 리소스 사용률 정보를 수집하는 단계인 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
Wherein the utilization rate information collection step is a step of collecting resource utilization rate information related to at least one of a CPU utilization rate, a memory utilization rate, a disk utilization rate, and a communication traffic utilization rate of the previously deployed virtual machine. Provisioning method.
상기 물리 머신 선정 단계는,
상기 리소스 점유율 정보를 이용하여 후보 물리 머신을 결정하는 단계; 및
상기 리소스 사용율 정보를 이용하여 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 단계를 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
The physical machine selecting step includes:
Determining a candidate physical machine using the resource occupancy rate information; And
And selecting the candidate physical machine as a physical machine in which the generated virtual machine is placed using the resource utilization rate information.
상기 물리 머신 선정 단계는,
상기 리소스 점유율 정보를 이용하여 상기 생성 요청된 가상 머신이 배치될 수 있는 물리 머신들 중 최소 리소스를 가진 물리 머신을 상기 후보 물리 머신으로 결정하는 단계; 및
상기 리소스 사용률 정보를 이용하여 상기 후보 물리 머신에 기 배치된 가상 머신의 리소스 사용률이 소정 임계치 이하인 경우 상기 후보 물리 머신을 상기 생성 요청된 가상 머신이 배치되는 물리 머신으로 선정하는 단계를 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
The physical machine selecting step includes:
Determining a physical machine having the smallest resource among the physical machines to which the generation-requested virtual machine can be placed, using the resource occupancy information as the candidate physical machine; And
And selecting the candidate physical machine as the physical machine in which the generation-requested virtual machine is placed when the resource utilization rate of the virtual machine currently deployed in the candidate physical machine is lower than a predetermined threshold value by using the resource utilization rate information A virtual machine provisioning method for a cloud service.
상기 방법은, 상기 클라우드 서버를 구성하는 물리 머신의 리소스 정보, 상기 점유율 정보 수집부에 의해 수집된 리소스 점유율 정보, 및 상기 사용률 정보 수집부에 의해 수집된 리소스 사용률 정보를 저장 및 관리하는 리소스 정보 관리 단계를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
The method includes managing resource information for storing and managing resource utilization information of the physical machine constituting the cloud server, resource utilization rate information collected by the occupancy rate information collector, and resource utilization rate information collected by the utilization rate information collector, Further comprising the steps of: (a) providing a virtual machine provisioning service for the cloud service;
상기 방법은, 가상 머신 생성 요청 사용자에게 적용되는 가상 머신 배치 정책을 저장 및 관리하는 배치 정책 관리 단계를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.15. The method according to claim 15,
Wherein the method further comprises a deployment policy management step of storing and managing a virtual machine deployment policy applied to a virtual machine creation requesting user.
상기 물리 머신 선정 단계는, 상기 배치 정책 관리 단계의 가상 머신 배치 정책에 따라 상기 리소스 정보 관리 단계의 물리 머신 리소스 정보, 리소스 점유율 정보, 및 리소스 사용률 정보를 이용하여 상기 생성 요청된 가상 머신이 배치되는 물리 머신을 선정하는 단계인 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.17. The method of claim 16,
The physical machine selecting step may include a step of selecting a physical machine to which the generated virtual machine is allocated based on physical machine resource information, resource occupancy rate information, and resource utilization rate information of the resource information management step in accordance with the virtual machine placement policy of the batch policy management step And selecting a physical machine to be used in the virtual machine.
상기 방법은,
상기 물리 머신 선정 단계 전에, 상기 시스템이 사용자의 가상 머신 생성 요청을 수신하는 단계; 및
상기 가상 머신 배치 단계 후에, 상기 시스템이 상기 가상 머신 생성 요청에 대응하는 가상 머신 생성 결과를 상기 사용자의 클라이언트로 전송하는 단계를 더 포함하는 것을 특징으로 하는 클라우드 서비스를 위한 가상 머신 프로비저닝 방법.11. The method of claim 10,
The method comprises:
Before the physical machine selection step, the system receiving a user's virtual machine creation request; And
Further comprising, after the virtual machine placement step, the system transmitting a virtual machine creation result corresponding to the virtual machine creation request to the user's client.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150108707A KR102389334B1 (en) | 2015-07-31 | 2015-07-31 | Virtual machine provisioning system and method for cloud service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150108707A KR102389334B1 (en) | 2015-07-31 | 2015-07-31 | Virtual machine provisioning system and method for cloud service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170014804A true KR20170014804A (en) | 2017-02-08 |
KR102389334B1 KR102389334B1 (en) | 2022-04-20 |
Family
ID=58155536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150108707A KR102389334B1 (en) | 2015-07-31 | 2015-07-31 | Virtual machine provisioning system and method for cloud service |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102389334B1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102187382B1 (en) * | 2020-07-31 | 2020-12-07 | 나무기술 주식회사 | Container VirtualOS Integrated Monitoring Operating Methods Based on Cloud Infrastructure |
KR102262645B1 (en) * | 2020-12-31 | 2021-06-09 | 박용정 | Monitoring system and method for resource manegement in cloud computing |
KR20210101111A (en) * | 2020-02-07 | 2021-08-18 | 쿠팡 주식회사 | Systems and methods for centralization and diagnostics for live virtual server performance data |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102557385B1 (en) | 2022-11-29 | 2023-07-20 | 쿤텍 주식회사 | virtual machine system and vitual machine provisioning method using the same |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120053850A (en) * | 2010-11-18 | 2012-05-29 | 주식회사 와이즈토드코리아 | Apparatus and method for resource distribution in cloud computing |
KR20120063662A (en) * | 2010-12-08 | 2012-06-18 | 텔코웨어 주식회사 | Load balancer and method for managing load balancing using this |
KR20120118271A (en) * | 2011-04-18 | 2012-10-26 | 주식회사 케이티 | Method for selecting virtual machine migration target |
JP2015022385A (en) * | 2013-07-17 | 2015-02-02 | 日本電気株式会社 | Virtual system and method for controlling virtual system |
KR20150045669A (en) * | 2013-10-21 | 2015-04-29 | 한국전자통신연구원 | Appratus for a virtual desktop service and method thereof |
-
2015
- 2015-07-31 KR KR1020150108707A patent/KR102389334B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120053850A (en) * | 2010-11-18 | 2012-05-29 | 주식회사 와이즈토드코리아 | Apparatus and method for resource distribution in cloud computing |
KR20120063662A (en) * | 2010-12-08 | 2012-06-18 | 텔코웨어 주식회사 | Load balancer and method for managing load balancing using this |
KR20120118271A (en) * | 2011-04-18 | 2012-10-26 | 주식회사 케이티 | Method for selecting virtual machine migration target |
JP2015022385A (en) * | 2013-07-17 | 2015-02-02 | 日本電気株式会社 | Virtual system and method for controlling virtual system |
KR20150045669A (en) * | 2013-10-21 | 2015-04-29 | 한국전자통신연구원 | Appratus for a virtual desktop service and method thereof |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210101111A (en) * | 2020-02-07 | 2021-08-18 | 쿠팡 주식회사 | Systems and methods for centralization and diagnostics for live virtual server performance data |
US11544098B2 (en) | 2020-02-07 | 2023-01-03 | Coupang Corp. | Systems and methods for centralization and diagnostics for live virtual server performance data |
KR102187382B1 (en) * | 2020-07-31 | 2020-12-07 | 나무기술 주식회사 | Container VirtualOS Integrated Monitoring Operating Methods Based on Cloud Infrastructure |
KR102262645B1 (en) * | 2020-12-31 | 2021-06-09 | 박용정 | Monitoring system and method for resource manegement in cloud computing |
Also Published As
Publication number | Publication date |
---|---|
KR102389334B1 (en) | 2022-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110896355B (en) | Network slice selection method and device | |
EP3295630B1 (en) | System and methods for virtual infrastructure management between operator networks | |
KR102199278B1 (en) | Accelerated resource processing method and apparatus, and network function virtualization system | |
US8244874B1 (en) | Edge-based resource spin-up for cloud computing | |
CN108924268B (en) | Container cloud service system and pod creation method and device | |
EP3512233A1 (en) | Method for managing network slice and management unit | |
KR100956636B1 (en) | System and method for service level management in virtualized server environment | |
US10993127B2 (en) | Network slice instance management method, apparatus, and system | |
JP6881575B2 (en) | Resource allocation systems, management equipment, methods and programs | |
CN104052803A (en) | Decentralized distributed rendering method and system | |
CN105453485A (en) | System and method for service embedding and resource orchestration | |
WO2018201856A1 (en) | System and method for self organizing data center | |
KR102389334B1 (en) | Virtual machine provisioning system and method for cloud service | |
CN115499859B (en) | NWDAF-based method for managing and deciding computing resources | |
WO2016095524A1 (en) | Resource allocation method and apparatus | |
JP2017126238A (en) | System management device, information processing system, system management method, and program | |
US9654333B2 (en) | Application allocation in datacenters | |
JP2020028060A (en) | Communication system and communication method | |
CN109302302B (en) | Method, system and computer readable storage medium for scaling service network element | |
CN114073055B (en) | network controller | |
CN115168017B (en) | Task scheduling cloud platform and task scheduling method thereof | |
CN107534678B (en) | Method, device and system for establishing connection between VNFM and VIM | |
WO2012113446A1 (en) | Associating computing resources and communication resources with a service in a resource management architecture | |
KR20130028554A (en) | Large capacity distributed processing apparatus using a message bus and the method thereof | |
US10986036B1 (en) | Method and apparatus for orchestrating resources in multi-access edge computing (MEC) network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |