KR20120071979A - Resource management apparatus and method in cloud computing system - Google Patents

Resource management apparatus and method in cloud computing system Download PDF

Info

Publication number
KR20120071979A
KR20120071979A KR1020100133730A KR20100133730A KR20120071979A KR 20120071979 A KR20120071979 A KR 20120071979A KR 1020100133730 A KR1020100133730 A KR 1020100133730A KR 20100133730 A KR20100133730 A KR 20100133730A KR 20120071979 A KR20120071979 A KR 20120071979A
Authority
KR
South Korea
Prior art keywords
location
resource
virtual machine
user
usage
Prior art date
Application number
KR1020100133730A
Other languages
Korean (ko)
Inventor
허윤범
김동훈
안재석
전호현
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020100133730A priority Critical patent/KR20120071979A/en
Publication of KR20120071979A publication Critical patent/KR20120071979A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities

Abstract

PURPOSE: A resource management apparatus of a cloud computing system and a method thereof are provided to optimize allocation and management of the computing resource by considering personal scheduling information. CONSTITUTION: A scheduler inputting unit(221) receives personal scheduling information including usage point of computing resources. A location allotting unit(223) allots a location where a VM(Virtual Machine) is generated based on personal scheduling information. A VM providing unit(224) generates the VM in the arranged location. The location allotting unit allots a generation location of the VM.

Description

클라우드 컴퓨팅 시스템의 자원관리장치 및 방법{Resource management apparatus and method in cloud computing system}Resource management apparatus and method in cloud computing system

본 발명은, 클라우드 컴퓨팅 시스템의 자원관리장치 및 방법에 관한 것으로서, 보다 상세하게는, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템에서, 사용자로부터 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 입력받아, 이를 기초로 사용자가 사용할 가상머신을 생성하여 제공하는 자원관리장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for managing a resource of a cloud computing system. More particularly, in a cloud computing system that provides a plurality of users with virtual machines that virtualize computing resources on a network, computing is to be used for each time slot from a user. The present invention relates to a resource management apparatus and method for receiving a personal scheduling information about a resource and generating and providing a virtual machine to be used by a user based on the received personal scheduling information.

컴퓨팅 자원 풀(Resource Pooling)을 공유하고, 사용자의 요구(On-Demand Self Service)에 의해 신속하게 생성 및 해제(Rapid Elasticity)가 되어야 하는 클라우드 컴퓨팅 환경을 구현하는 기반 기술로는 가상화(Virtualization) 기술이 있다.Virtualization technology is a basic technology for implementing a cloud computing environment that must share computing resource pooling and be rapidly created and released by on-demand self service. There is this.

가상화 기술은 하나의 물리적인 장비를 마치 여러개의 장비처럼 사용하는 기술로, CPU, 메모리, 스토리지, 네트워크 등의 컴퓨팅 자원의 활용을 극대화하고, 대규모 데이터 센터의 관리를 위해 자원을 운영하고 관리하는 기술이다.Virtualization technology is a technology that uses a single physical device as if it is multiple devices, maximizes the utilization of computing resources such as CPU, memory, storage, and network, and operates and manages resources for managing large data centers. to be.

이처럼 가상화 기술을 통해 구현된 클라우드 컴퓨팅 시스템은 하나의 물리 머신을 이용하여 다수의 독립실행 환경인 가상머신들을 생성하고, 생성한 각각의 가상머신에 독립된 운영체제 내지 어플리케이션을 운영한다. As described above, the cloud computing system implemented through the virtualization technology creates virtual machines, which are a plurality of standalone execution environments, using one physical machine, and operates an independent operating system or application for each virtual machine.

여기에서 가상머신은 이처럼 물리 머신의 하드웨어 자원을 할당받아 만들어지는 가상의 컴퓨팅 실행 환경을 의미하고, 물리머신의 하드웨어 자원을 가상화화여 가상머신을 생성하고, 이에 실행되는 서로 다른 운영체제 내지 어플리케이션을 통제 관리하는 소프트웨어를 하이퍼바이져라 한다.Herein, a virtual machine refers to a virtual computing execution environment that is created by allocating hardware resources of a physical machine, virtualizes the hardware resources of the physical machine, creates a virtual machine, and controls and manages different operating systems or applications running thereon. This software is called a hypervisor.

이처럼 다수의 가상화된 컴퓨팅 자원을 관리함에 있어서, 종래 기술은 현재의 자원이용현황만을 고려하여 자원을 할당하고 관리하는 한계를 갖고 있다.As described above, in managing a plurality of virtualized computing resources, the prior art has limitations in allocating and managing resources in consideration of the current resource usage status.

클라우드 컴퓨팅 환경은 다수의 사용자에게 컴퓨팅 자원을 공유하게 하고, 사용자의 요구에 맞게 신속하게 이러한 컴퓨팅 자원을 제공해야 한다는 점에서, 사용자의 개인 스케줄링 정보를 고려하여 컴퓨팅 자원을 할당하고 관리하는 기술이 필요하다.The cloud computing environment requires a technology for allocating and managing computing resources in consideration of the user's personal scheduling information in that multiple computing users share computing resources and must provide such computing resources quickly to meet the needs of users. Do.

본 발명이 이루고자 하는 기술적 과제는, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템에서, 사용자로부터 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 입력받아, 이를 기초로 사용자가 사용할 가상머신을 생성하여 제공하는 자원관리장치 및 방법을 제공하는 데에 있다.The technical problem to be achieved in the present invention is a cloud computing system that provides virtual machines virtualized computing resources on a network to a plurality of users, the user receives the personal scheduling information about the computing resources to be used for each time zone, based on the The present invention provides a resource management apparatus and method for creating and providing a virtual machine for a user to use.

상기의 기술적 과제를 이루기 위한, 본 발명에 의한, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리장치에 있어서, 사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 스케줄러입력부; 입력받은 개인 스케줄링 정보를 기초로 사용자가 사용할 가상머신이 생성될 위치를 배정하는 위치배정부; 및 사용시점에 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 배정된 위치에 생성하여 사용자에게 제공하는 가상머신제공부를 포함한다.In order to achieve the above technical problem, according to the present invention, a resource management apparatus of a cloud computing system that provides a plurality of users with virtual machines virtualized computing resources on a network, the use time and resources of the computing resources to be used by the user A scheduler input unit for receiving personal scheduling information including usage; A location allocation unit for allocating a location where a virtual machine to be used by a user is generated based on the received personal scheduling information; And a virtual machine providing unit for generating a virtual machine that can use the computing resources as much as the resource consumption at the time of use at a predetermined location and providing the same to the user.

보다 바람직하게는, 위치배정부는 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 비교하여 비교결과에 따라 가상머신이 생성될 위치를 배정할 수 있다.More preferably, the location allocation compares the result of adding the resource usage to the resource allocation status by location regarding the details of resource allocation to other users by location at the time of use and at the same time, comparing the maximum resource usage by location. Based on the result, the location where the virtual machine is to be created can be assigned.

보다 바람직하게는, 사용자의 개인 스케줄링 정보는 사용자가 사용할 컴퓨팅 자원의 사용지역을 포함할 수 있다.More preferably, the user's personal scheduling information may include a region of use of computing resources for the user to use.

보다 바람직하게는, 위치배정부는 사용 지역 내의 위치 중에서 위치별 자원할당 현황 및 사용자의 자원사용량을 합산한 결과가 위치별 자원사용량 최대치를 넘지 않는 위치에 배정할 수 있다.More preferably, the location allocation unit may allocate the location of the resource allocation status of each location and the resource usage of the user from the locations within the usage area not to exceed the maximum resource usage location.

보다 바람직하게는, 위치배정부는 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 기초로 위치별 자원 점유율을 계산하여 자원점유율이 가장 낮은 위치에 배정할 수 있다.More preferably, the location allocation is based on the result of summing up resource usage by location and resource preset status regarding the details of resource allocation to other users by location at the same time and at the same time. Each resource share can be calculated and placed in the lowest resource share.

보다 바람직하게는, 가상머신제공부는 사용자가 현재 사용중인 가상머신이 이미 존재하는 경우에는 이미 존재하는 가상머신의 위치와 동일한 위치로 배정된 위치를 조정할 수 있다.More preferably, the virtual machine providing unit may adjust the position assigned to the same position as the position of the virtual machine already exists if the virtual machine currently being used by the user already exists.

보다 바람직하게는, 가상머신제공부는 모니터링된 위치별 자원사용현황 및 자원사용량을 기초로, 가상머신을 생성할 경우의 배정된 위치의 기대사용률을 계산하여 계산된 기대사용률이 기지정된 최대사용률보다 높은 경우에는 배정된 위치와 다른 위치로 배정된 위치를 조정할 수 있다.More preferably, the virtual machine providing unit calculates an expected utilization rate of the allocated location when creating a virtual machine based on the resource usage status and resource usage by location monitored, and the calculated expected utilization rate is higher than the predetermined maximum utilization rate. In this case, the assigned position may be adjusted to a position different from the assigned position.

상기의 기술적 과제를 이루기 위한, 본 발명에 의한, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리방법에 있어서, 사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 스케줄러입력단계; 입력받은 개인 스케줄링 정보를 기초로 사용자가 사용할 가상머신이 생성될 위치를 배정하는 위치배정단계; 및 사용시점에 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 배정된 위치에 생성하여 사용자에게 제공하는 가상머신제공단계를 포함한다.In order to achieve the above technical problem, according to the present invention, a resource management method of a cloud computing system for providing a plurality of users with virtual machines virtualized computing resources on the network, the use time and resources of the computing resources to be used by the user A scheduler input step of receiving personal scheduling information including usage; A location assignment step of allocating a location where a virtual machine to be used by a user is generated based on the received personal scheduling information; And a virtual machine providing step of generating a virtual machine that can use the computing resources as much as the resource usage point at the time of use and providing the virtual machine to the assigned location.

보다 바람직하게는, 위치배정단계는 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 비교하여 비교결과에 따라 가상머신이 생성될 위치를 배정할 수 있다.More preferably, the location assignment step is to compare the result of adding the resource usage to the resource allocation status for each location of the details of the resource allocation status to the different users at the time of use and the same time period by comparing the maximum resource usage by location Based on the comparison result, the location where the virtual machine is to be created can be assigned.

보다 바람직하게는, 사용자의 개인 스케줄링 정보는 사용자가 사용할 컴퓨팅 자원의 사용지역을 포함할 수 있다.More preferably, the user's personal scheduling information may include a region of use of computing resources for the user to use.

보다 바람직하게는, 위치배정단계는 사용 지역 내의 위치 중에서 위치별 자원할당 현황 및 사용자의 자원사용량을 합산한 결과가 위치별 자원사용량 최대치를 넘지 않는 위치에 배정할 수 있다.More preferably, the location assignment step may be assigned to a location in which the result of summing the resource allocation status of each location and the resource usage of the user among the locations in the use area does not exceed the maximum resource usage by location.

보다 바람직하게는, 위치배정단계는 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 기초로 위치별 자원 점유율을 계산하여 자원점유율이 가장 낮은 위치에 배정할 수 있다.More preferably, the location allocation step is based on the result of summing up resource usage by location and resource preset status regarding the details of resource allocation to other users for each location at the same time and at the same time, and the preset maximum resource usage by location. Resource share by location can be calculated and assigned to the lowest resource share.

보다 바람직하게는, 가상머신제공단계는 사용자가 현재 사용중인 가상머신이 이미 존재하는 경우에는 이미 존재하는 가상머신의 위치와 동일한 위치로 배정된 위치를 조정할 수 있다.More preferably, the virtual machine providing step may adjust the position assigned to the same position as the position of the virtual machine already exists if the virtual machine currently being used by the user already exists.

보다 바람직하게는, 가상머신제공단계는 모니터링된 위치별 자원사용현황 및 자원사용량을 기초로, 가상머신을 생성할 경우의 배정된 위치의 기대사용률을 계산하여 계산된 기대사용률이 기지정된 최대사용률보다 높은 경우에는 배정된 위치와 다른 위치로 배정된 위치를 조정할 수 있다.More preferably, the virtual machine providing step calculates an expected utilization rate of the allocated location when the virtual machine is created, based on the resource usage status and resource usage of each location to be monitored, than the predetermined maximum utilization rate. If it is high, you can adjust the position assigned to a position different from the assigned position.

상기의 기술적 과제를 이루기 위한, 본 발명에 의한, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리기능을 포함하는 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체는 사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 기능; 입력받은 개인 스케줄링 정보를 기초로 사용자가 사용할 가상머신이 생성될 위치를 배정하는 기능; 및 사용시점에 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 배정된 위치에 생성하여 사용자에게 제공하는 기능을 포함하는 프로그램을 수록한다.In order to achieve the above technical problem, a computer-readable recording of a program including a resource management function of a cloud computing system for providing a plurality of users with virtual machines virtualized computing resources on the network according to the present invention. The medium includes a function of receiving personal scheduling information including a point of use and resource usage of computing resources to be used by a user; Assigning a location where a virtual machine to be used by a user is generated based on the received personal scheduling information; And a program including a function of creating a virtual machine that can use the computing resources as much as the resource consumption at the time of use and providing the same to the user.

본 발명에 의하면, 클라우드 컴퓨팅 시스템은 사용자의 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 고려하여, 컴퓨팅 자원의 할당 및 관리를 최적화할 수 있고, 컴퓨팅 자원에 대한 비용 절감 및 사용자에 대한 최적의 서비스를 제공할 수 있게 된다. 이는 클라우드 컴퓨팅 시스템은 다수의 사용자에게 컴퓨팅 자원을 공유하게 하고, 사용자의 요구에 맞게 신속하게 이러한 컴퓨팅 자원을 제공해야 한다는 점에서 특히 중요하다.According to the present invention, the cloud computing system can optimize the allocation and management of computing resources in consideration of personal scheduling information regarding computing resources to be used for each user's time zone, and can reduce costs for computing resources and optimal services for users. Can be provided. This is particularly important in that a cloud computing system must allow multiple users to share computing resources and provide such computing resources quickly to meet the needs of the users.

더불어, 사용자는 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 미리 입력하여, 이에 맞게 가상머신 및 자원을 할당받음으로써, 클라우드 컴퓨팅 자원 사용을 원래의 사용 계획에 맞게 최적화함으로써, 클라우드 컴퓨팅 자원 사용에 따른 요금 등을 절감할 수 있게 된다.In addition, the user inputs personal scheduling information regarding computing resources to be used in each time zone, and allocates virtual machines and resources accordingly, thereby optimizing cloud computing resource usage according to the original usage plan, The cost can be reduced.

도 1은 본 발명의 바람직한 일실시예에 따른 클라우드 컴퓨팅 시스템의 구조를 도시한 블럭도이다.
도 2는 본 발명의 바람직한 일 실시예에 따른 자원관리장치의 세부 구조를 도시한 블록도이다.
도 3은 본 발명의 바람직한 일 실시예에 따른 자원관리방법의 흐름을 도시한 도면이다.
도 4는 본 발명에 따른 클라우드 컴퓨팅 시스템의 자원관리장치의 일 구성요소인 위치배정부에서 위치를 배정하는 과정의 일 예를 도시한 흐름도이다.
도 5는 본 발명에 따른 클라우드 컴퓨팅 시스템의 자원관리장치의 일 구성요소인 가상머신제공부에서 가상머신을 생성하여 사용자에게 제공하는 과정의 일 예를 도시한 흐름도이다.
1 is a block diagram illustrating a structure of a cloud computing system according to an exemplary embodiment of the present invention.
2 is a block diagram showing the detailed structure of a resource management apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating a resource management method according to an embodiment of the present invention.
4 is a flowchart illustrating an example of a process of allocating a location in a location allocation unit which is one component of a resource management apparatus of a cloud computing system according to the present invention.
FIG. 5 is a flowchart illustrating an example of a process of creating a virtual machine and providing the same to a user in a virtual machine providing unit which is a component of a resource management apparatus of a cloud computing system 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 block diagram illustrating a structure of a cloud computing system according to an exemplary embodiment of the present invention.

도 1을 참조하면, 본 실시예에 따른 클라우드 컴퓨팅 시스템은 사용자 단말(110), 자원관리장치(120), 데이터베이스(130) 및 데이터 센터(140)을 포함함으로써, 네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공한다.Referring to FIG. 1, the cloud computing system according to the present embodiment includes a user terminal 110, a resource management device 120, a database 130, and a data center 140 to virtualize computing resources on a network. Provide machines to multiple users.

사용자는 사용할 가상머신을 할당받기 위해 가상머신 사용 전에 사용자 단말(110)을 통해 미리 개인 스케줄링 정보를 자원관리장치(120)로 입력할 수 있다.The user may input personal scheduling information into the resource management apparatus 120 through the user terminal 110 before using the virtual machine in order to be allocated a virtual machine to be used.

사용자 단말(110)은 개인 스케줄링 정보를 입력받기 위한 사용자 인터페이스(User Interface)를 구비하여 구성될 수 있다.The user terminal 110 may be configured to include a user interface for receiving personal scheduling information.

여기에서 개인 스케줄링 정보는 사용자가 사용할 컴퓨팅 자원의 사용시점, 자원사용량 등을 포함할 수 있으며, 바람직하게는 컴퓨팅 자원의 사용지역을 더 포함함으로써, 사용지역과 인접한 위치에 가상머신을 배정받을 수 있도록 구현할 수 있다.Here, the personal scheduling information may include a point of use of the computing resource to be used by the user, resource usage, and the like, and preferably further include a region of use of the computing resource, so that the virtual machine can be allocated to a location adjacent to the region of use. Can be implemented.

여기에서 컴퓨팅 자원의 사용시점은 분단위에서 년단위에 이르기까지 설정될 수 있다.Here, the point of use of the computing resources can be set from minutes to years.

여기에서 컴퓨팅 자원의 사용지역은 데이터 센터(140)를 구성하는 존(Zone, 150)을 가리키도록 구성될 수 있다.Here, the region of use of the computing resources may be configured to point to the zones 150 constituting the data center 140.

여기에서 사용자가 사용할 컴퓨팅 자원이란, CPU, 메모리, 스토리지, 네트워크 등과 같은 하드웨어 자원을 포함하며, 바람직하게는, OS 및 어플리케이션 등과 같은 소프트웨어 자원을 포함할 수 있다.Here, the computing resource to be used by the user includes hardware resources such as CPU, memory, storage, network, and the like, and preferably may include software resources such as an OS and an application.

사용자 단말(110)은 사용자가 하드웨어 자원이 아닌 소프트웨어 자원에 대하여 입력할 경우에는, 해당 소프트웨어 자원을 정상적으로 구동하는 데에 요구되는 하드웨어 자원의 양을 자동적으로 계산하여 개인 스케줄링 정보의 자원사용량을 설정하도록 구성될 수도 있다.When the user inputs a software resource instead of a hardware resource, the user terminal 110 automatically calculates an amount of hardware resources required to normally drive the software resource to set resource usage of personal scheduling information. It may be configured.

자원 관리 장치(120)는 사용자 스케줄러 입력부(121) 및 자원관리부(122)를 포함하여 구성된다.The resource management apparatus 120 includes a user scheduler input unit 121 and a resource management unit 122.

사용자 스케줄러 입력부(121)는 사용자 단말로부터 개인 스케줄링 정보를 수신하여 데이터베이스(130)에 저장한다.The user scheduler input unit 121 receives personal scheduling information from the user terminal and stores the personal scheduling information in the database 130.

자원관리부(122)는 데이터센터(140) 내의 각 노드에 가상머신을 생성하고, 할당된 가상머신을 관리하는 기능을 수행하는 구성요소로, 본 실시예에서는, 데이터베이스(130)에 저장된 개인 스케줄링 정보를 기초로 사용자가 사용할 가상머신이 생성될 위치를 배정하여 데이터베이스(130)에 저장하고, 배정된 위치에 가상머신을 생성하고, 생성되어 사용자에게 제공된 가상머신의 자원사용현황을 모니터링한다.The resource manager 122 is a component that creates a virtual machine at each node in the data center 140 and manages the allocated virtual machine. In this embodiment, the personal scheduling information stored in the database 130 is stored. Based on the allocation of the location where the virtual machine to be used by the user will be generated and stored in the database 130, create the virtual machine at the assigned location, and monitor the resource usage status of the generated virtual machine provided to the user.

데이터베이스(130)는 사용자 스케줄러 입력부(121)를 통해 수신된 사용자 각각의 개인 스케줄링 정보, 자원관리부(122)를 통해 가상머신 각각에 배정된 위치, 위치 및 시간대별로 복수의 사용자들에게 자원이 할당된 내역에 관한 위치별 자원할당 현황, 기설정된 위치별 자원사용량 최대치, 자원관리부(122)를 통해 모니터링되는 가상머신의 자원사용현황을 저장한다.The database 130 may be configured to allocate resources to a plurality of users for each individual scheduling information received through the user scheduler input unit 121 and each location, location, and time zone assigned to each of the virtual machines through the resource manager 122. Resource allocation status for each location with respect to the details, the maximum resource usage by the preset location, the resource usage status of the virtual machine monitored through the resource management unit 122 is stored.

데이터센터(140)는 적어도 하나 이상의 존(Zone, 150)의 집합으로 구성될 수 있고, 각각의 존은 적어도 하나 이상의 팟(Pod, 160)의 집합으로 구성될 수 있고, 각각의 팟은 적어도 하나 이상의 클러스터(Cluster, 170)의 집합로 구성될 수 있고, 각각의 클러스터는 적어도 하나 이상의 노드(Node, 180)로 구성될 수 있고, 여기에서 노드는 가상화 기술을 통해 다수의 독립 실행 환경인 가상머신(190)에게 하드웨어 자원을 제공하는 단위 물리적 머신을 의미한다.Data center 140 may be composed of a set of at least one zone (Zone, 150), each zone may be composed of a set of at least one pod (Pod, 160), each pod is at least one It can be composed of a set of clusters (Cluster, 170), each cluster may be composed of at least one or more nodes (Node, 180), where the node is a virtual machine that is a plurality of independent execution environment through a virtualization technology A unit physical machine providing hardware resources to the device 190 is referred to.

여기에서 특히, 팟(Pod, 160)은 일반적으로 네트워크가 구분되는 기준이 되므로, 본 실시예에서 동일한 사용자가 생성하는 가상머신은 동일한 팟 내에 존재하는 것이 바람직하다.Here, in particular, since the pods (Pods) 160 generally serve as criteria for distinguishing networks, it is preferable that virtual machines generated by the same user exist in the same pods in this embodiment.

자원관리부(122)에서 가상머신의 위치를 배정함에 있어서, 개인 스케줄링 정보 상에서 사용자가 사용지역을 선택한 경우에는 사용자가 선택한 사용지역에 대응되는 존(Zone)을 배정하도록 구성할 수 있다.In allocating the location of the virtual machine in the resource manager 122, when the user selects a use area on the personal scheduling information, the resource manager 122 may allocate a zone corresponding to the use area selected by the user.

존(Zone)의 하위 구성요소 즉, 팟(Pod), 클러스터(Cluster), 노드(Node)는 자원관리부(122)에서 임의로 배정할 수 있으며, 이에 대한 배정방법으로 수직적 방법과 수평적 방법이 사용될 수 있다.Sub-components of zones, such as Pods, Clusters, and Nodes, can be arbitrarily assigned by the resource management unit 122. As the allocation method, vertical and horizontal methods are used. Can be.

수직적 방법은 하나의 노드에 가상머신을 수용가능한 범위까지 모두 생성한 후, 다른 노드에 가상머신을 생성하는 방법을 가리키고, 수평적 방법은 가용 노드 모두에 하나씩 가상머신을 생성하면서 수평적으로 쌓아가는 방법을 가리킨다.The vertical method refers to a method in which all virtual machines are created in one node to an acceptable range, and then a virtual machine is created in other nodes. The horizontal method is a horizontal method in which virtual machines are stacked one by one on all available nodes. Point out the way.

도 2는 본 발명의 바람직한 일 실시예에 따른 자원관리장치(220)의 세부 구조를 도시한 블록도이고 도 3은 도 2에 도시된 자원관리장치(220)에서 수행되는 자원관리방법(S300)의 흐름을 도시한 도면이다2 is a block diagram showing a detailed structure of the resource management apparatus 220 according to an embodiment of the present invention and Figure 3 is a resource management method (S300) performed in the resource management apparatus 220 shown in FIG. Is a diagram showing the flow of

도 2을 참조하면, 본 실시예에 따른 자원관리장치(220)는 도 1에 도시된 것과 마찬가지로, 스케줄러 입력부(221) 및 자원관리부(222)를 구비하여 구성되고, 자원관리부(222)는 위치배정부(223), 가상머신제공부(224) 및 가상머신모니터링부(225)를 포함하여 구성된다.Referring to FIG. 2, the resource management apparatus 220 according to the present exemplary embodiment includes a scheduler input unit 221 and a resource management unit 222, as shown in FIG. 1, and the resource management unit 222 is located. It is configured to include the rear panel 223, the virtual machine providing unit 224 and the virtual machine monitoring unit 225.

먼저, 스케줄러 입력부(221)은 사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는다(S301).First, the scheduler input unit 221 receives personal scheduling information including a point in time of use of a computing resource and resource usage from a user (S301).

위치배정부(223)은 스케줄링 입력부(221)에 입력받은 개인 스케줄링 정보를 기초로 사용자가 사용할 가상머신이 생성될 위치를 배정한다(S302).The location allocation unit 223 allocates a location where a virtual machine to be used by a user is generated based on the personal scheduling information input to the scheduling input unit 221 (S302).

좀더 구체적으로 살펴보면, 위치배정부(223)는 개인 스케줄링 정보 중 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 개인 스케줄링 정보 중 자원사용량을 합산한다More specifically, the location allocation unit 223 sums the resource usage of the personal scheduling information in the resource allocation status for each location regarding the details of resource allocation to other users for each location at the same time and time of use of the personal scheduling information.

그리고, 위치배정부(223)는 위치별 자원 할당현황과 자원사용량을 합산한 결과와 미리 설정되어 있는 위치별 자원사용량 최대치를 비교하여 합산결과가 위치별 자원사용량 최대치를 넘지 않는 위치에 배정하는 것이 바람직하다.The location allocation unit 223 compares the result of summing the resource allocation status and resource usage by location with a preset maximum resource usage by location, and allocates the sum to a location that does not exceed the maximum resource usage by location. desirable.

보다 바람직하게는, 위치배정부는 위치별 자원점유율을 계산하여 자원점유율이 가장 낮은 위치에 배정하도록 구현할 수 있다.More preferably, the location allocation unit may be implemented to calculate the resource occupancy rate for each location to allocate to the location with the lowest resource occupancy.

예컨대, 위치배정부는 개인 스케줄링 정보에 포함된 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 개인 스케줄링 정보에 포함된 자원사용량을 합산하고, 이렇게 합산한 결과와 기설정된 위치별 자원사용량 최대치의 비율을 위치별 자원점유율로 사용할 수 있다.For example, the location allocation unit adds the resource usage included in the personal scheduling information to the resource allocation status for each location regarding the details of resource allocations to other users for each location at the same time as the time of use included in the personal scheduling information. The ratio of the result and the predetermined maximum resource usage by location can be used as the resource share by location.

또한, 사용자의 개인 스케줄링 정보에 컴퓨팅 자원의 사용지역이 지정되어 포함된 경우에는, 사용지역과 인접한 위치에 가상머신을 배정받을 수 있도록, 사용 지역 내의 위치 즉, 사용지역에 대응되는 존(Zone) 내의 노드를 배정하는 것이 바람직하다.In addition, when a user's personal scheduling information includes a computing area where a computing resource is used, a zone corresponding to a location in the using area, that is, a using area, can be assigned to the virtual machine at a location adjacent to the using area. It is desirable to assign nodes within.

가상머신제공부(224)는 개인 스케줄링 정보에 포함된 사용시점에 개인 스케줄링 정보에 포함된 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 위치배정부(223)에서 배정한 위치에 생성하여 사용자에게 제공한다(S303).The virtual machine providing unit 224 generates a virtual machine that can use the computing resources as much as the amount of resources included in the personal scheduling information at the time of use included in the personal scheduling information, and provides the user to the location assigned by the location arranging unit 223. (S303).

또한, 가상머신제공부(224)는 위치배정부(223)에서 배정된 위치를 필요한 경우에 동적으로 조정할 수 있다.In addition, the virtual machine providing unit 224 may dynamically adjust the position assigned by the position arranging unit 223 as needed.

예컨대, 가상머신제공부(224)는 네트워크 구조상 동일한 사용자가 사용하는 가상머신은 동일한 위치에 존재하는 것이 보다 효율적이므로, 사용자가 현재 사용중인 가상머신이 이미 존재하는 경우에는 이미 존재하는 가상머신의 위치와 동일한 위치로 배정된 위치를 조정할 수 있다.For example, the virtual machine providing unit 224 is more efficient because the virtual machine used by the same user in the network structure exists in the same location, so if the virtual machine that the user is currently using already exists, the location of the virtual machine already exists. You can adjust the assigned position to the same position as.

아울러, 가상머신제공부(224)는 가상머신모니터링부(225)에서 모니터링한 위치별 자원사용현황을 기초로 배정된 위치를 조정할 수 있다.In addition, the virtual machine providing unit 224 may adjust the assigned position based on the resource usage status for each location monitored by the virtual machine monitoring unit 225.

예컨대, 가상머신제공부(224)는 모니터링된 위치별 자원사용현황 및 생성할 가상머신의 자원사용량을 기초로, 가상머신을 생성할 경우의 배정된 위치의 기대사용률을 계산하고, 여기에서 계산된 기대사용률이 기지정된 최대사용률보다 높은 경우에는 보다 효율적인 자원 활용을 위해 다른 위치로 조정할 수 있다.For example, the virtual machine providing unit 224 calculates an expected utilization rate of the allocated location when generating the virtual machine, based on the resource usage status of the monitored location and the resource usage of the virtual machine to be generated, and is calculated here. If the expected utilization is higher than the predetermined maximum, it can be adjusted to another location for more efficient resource utilization.

도 4는 본 발명에 따른 클라우드 컴퓨팅 시스템의 자원관리장치의 일 구성요소인 위치배정부에서 위치를 배정하는 과정의 일 예를 도시한 흐름도이다.4 is a flowchart illustrating an example of a process of allocating a location in a location allocation unit which is one component of a resource management apparatus of a cloud computing system according to the present invention.

도 4를 참조하면, 먼저 사용자의 개인 스케줄링 정보를 데이터베이스로부터 로드한다(S401).Referring to FIG. 4, first, personal scheduling information of a user is loaded from a database (S401).

그리고, S401단계에서 로드한 사용자의 개인 스케줄링 정보에서 사용자의 사용시점을 획득하여, 사용자의 사용시점과 동시간대의 위치별 자원할당 현황을 데이터베이스로부터 로드하고, 미리 설정되어 있는 위치별 자원사용량의 최대치도 데이터베이스로부터 로드한다(S402).In addition, the user's point of use is obtained from the user's personal scheduling information loaded in step S401, the user's point of use and resource allocation status by location of the same time period are loaded from a database, and the maximum value of resource usage by location is preset. Also loaded from the database (S402).

S401단계에서 로드한 사용자의 개인 스케줄링 정보에서 사용자의 사용지역을 획득하여, 사용지역 내의 위치 중에서 배정 위치를 선택한다(S403).The user's use area is obtained from the user's personal scheduling information loaded in step S401, and the assigned location is selected from the locations within the use area (S403).

배정 위치 선택 기준으로는, 위치별 자원할당 현황 및 사용자의 자원사용량을 위치별로 합산하여, 위치별 자원사용량이 최대치를 넘지 않는 위치에 배정하는 것이 바람직하다.As the allocation location selection criteria, it is preferable to add the resource allocation status of each location and the resource usage of the user by location, and allocate the location to the location where the resource usage amount of each location does not exceed the maximum value.

S403 단계에서 위치를 배정한 이후에, 사용자의 가상머신이 사용시점에 배정 위치에서 생성되어 자원사용량만큼의 자원을 제공할 예정임을 반영하여 데이터베이스 상의 배정 위치의자원할당 현황에 업데이트한다(S404).After assigning the location in step S403, the user's virtual machine is updated at the resource allocation status of the assignment location on the database to reflect that it is generated at the assignment location at the time of use to provide resources as much as the resource usage (S404).

도 5는 본 발명에 따른 클라우드 컴퓨팅 시스템의 자원관리장치의 일 구성요소인 가상머신제공부에서 가상머신을 생성하여 사용자에게 제공하는 과정의 일 예를 도시한 흐름도이다.FIG. 5 is a flowchart illustrating an example of a process of creating a virtual machine and providing the same to a user in a virtual machine providing unit which is a component of a resource management apparatus of a cloud computing system according to the present invention.

도 5를 참조하면, 먼저 자원배정조정시점인지를 확인(S501)함으로써, 자원배정조정시점에 일률적으로 복수의 사용자에 대한 가상머신 할당 과정을 일률적으로 처리할 수 있도록 한다.Referring to FIG. 5, first, it is checked whether it is time to adjust resource allocation (S501), so that the virtual machine allocation process for a plurality of users can be uniformly processed at the time of resource allocation adjustment.

그리고, 사용자의 개인 스케줄링 정보, 가상머신의 배정 위치, 모니터링된 위치별 자원 사용 현황 정보를 데이터베이스로부터 로드한다(S502).Then, the user's personal scheduling information, the allocation location of the virtual machine, resource usage status information for each monitored location is loaded from the database (S502).

사용자가 본 클라우드 컴퓨팅 시스템 상에서 사용하고 있는 가상머신이 있는지를 확인하여(S503), 사용하고 있는 가상머신이 있는 경우에는 사용중인 가상머신과 동일한 팟 내의 노드로 배정 위치를 조정한다(S504).The user checks whether there is a virtual machine in use on the cloud computing system (S503), and if there is a virtual machine in use, the allocation position is adjusted to a node in the same pot as the virtual machine in use (S504).

그 다음으로, 현 배정위치에 가상머신을 생성할 경우의 현 배정위치의 기대사용률을 계산한다(S505). 현 배정위치의 기대사용율은 모니터링된 현 배정 위치의 자원사용현황과, 가상머신의 자원사용량을 합산하고, 합산한 값과 배정위치의 자원사용량 최대치의 비율로 계산할 수 있다.Next, the expected utilization rate of the current allocation position when calculating the virtual machine at the current allocation position is calculated (S505). The expected utilization rate of the current allocation position can be calculated by summing the resource usage status of the current allocation position and the resource usage of the virtual machine, and calculating the ratio between the sum and the maximum resource usage of the allocation position.

이처럼 계산된 기대사용률과 기설정된 최대사용률을 비교하여(S506) 기대사용률이 최대사용률을 넘는 경우에는 위치별 자원 사용 현황 정보에 따라 배정 위치를 다른 위치로 조정한다(S507).By comparing the calculated expected usage rate with the predetermined maximum usage rate (S506), if the expected usage rate exceeds the maximum usage rate, the allocation position is adjusted to another position according to the resource usage status information for each location (S507).

S503 내지 S507 과정을 통해 배정 위치가 최종적으로 확정되면, 배정 위치에 가상머신을 생성한다(S508).When the assignment position is finally determined through the processes S503 to S507, a virtual machine is generated at the assignment position (S508).

그리고 사용자가 개인 스케줄링 정보를 통해 기지정한 사용시점에 S508 단계에서 생성된 가상머신을 제공하고(S509), 이러한 점을 반영하여 데이터베이스 상에서 배정 위치의 자원 사용 현황정보를 업데이트한다(S510).Then, the user provides the virtual machine generated in step S508 at a predetermined point of use through the personal scheduling information (S509), and reflects this point to update resource usage status information of the allocation position on the database (S510).

본 발명에 따른 클라우드 컴퓨팅 시스템은 사용자의 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 고려하여, 컴퓨팅 자원의 할당 및 관리를 최적화할 수 있고, 컴퓨팅 자원에 대한 비용 절감 및 사용자에 대한 최적의 서비스를 제공할 수 있게 된다. 이는 클라우드 컴퓨팅 시스템은 다수의 사용자에게 컴퓨팅 자원을 공유하게 하고, 사용자의 요구에 맞게 신속하게 이러한 컴퓨팅 자원을 제공해야 한다는 점에서 특히 중요하다.The cloud computing system according to the present invention can optimize allocation and management of computing resources in consideration of personal scheduling information regarding computing resources to be used for each user's time zone, and can reduce costs for computing resources and provide optimal services for users. It can be provided. This is particularly important in that a cloud computing system must allow multiple users to share computing resources and provide such computing resources quickly to meet the needs of the users.

더불어, 사용자는 시간대별로 사용할 컴퓨팅 자원에 관한 개인 스케줄링 정보를 미리 입력하여, 이에 맞게 가상머신 및 자원을 할당받음으로써, 클라우드 컴퓨팅 자원 사용을 원래의 사용 계획에 맞게 최적화함으로써, 클라우드 컴퓨팅 자원 사용에 따른 요금 등을 절감할 수 있게 된다. In addition, the user inputs personal scheduling information regarding computing resources to be used in each time zone, and allocates virtual machines and resources accordingly, thereby optimizing cloud computing resource usage according to the original usage plan, The cost can be reduced.

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. Computer-readable recording media include all kinds of recording devices that store data that can be read by a computer system. 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) . The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. In addition, functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers in the art to which the present invention belongs.

본 발명은 첨부된 도면에 도시된 일 실시예를 참고로 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 수 있을 것이다. 따라서, 본 발명의 진정한 보호 범위는 첨부된 청구 범위에 의해서만 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the accompanying drawings, it is merely an example, and those skilled in the art may realize various modifications and equivalent other embodiments therefrom. I can understand. Accordingly, the true scope of protection of the present invention should be determined only by the appended claims.

Claims (15)

네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리장치에 있어서,
사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 스케줄러입력부;
상기 입력받은 개인 스케줄링 정보를 기초로 상기 사용자가 사용할 가상머신이 생성될 위치를 배정하는 위치배정부; 및
상기 사용시점에 상기 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 상기 배정된 위치에 생성하여 상기 사용자에게 제공하는 가상머신제공부를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
In the resource management device of a cloud computing system for providing a plurality of users with a virtual machine virtualized computing resources on the network,
A scheduler input unit configured to receive personal scheduling information including a time point of using a computing resource to be used by the user and resource usage;
A location allocation unit for allocating a location where a virtual machine to be used by the user is generated based on the received personal scheduling information; And
And a virtual machine providing unit configured to provide a virtual machine to the user by generating a virtual machine that can use the computing resources as much as the resource consumption at the time of use.
제1항에 있어서,
상기 위치배정부는 상기 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 상기 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 비교하여 비교결과에 따라 상기 가상머신이 생성될 위치를 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 1,
The location allocation unit compares the result of summing the resource usage with the resource allocation status of each location regarding the details of resource allocation to other users for each location at the same time and the time of use, and compares the maximum resource usage by location with a preset result. Resource allocation apparatus for a cloud computing system, characterized in that for assigning a location where the virtual machine is to be generated.
제1항에 있어서,
상기 사용자의 개인 스케줄링 정보는 상기 사용자가 사용할 컴퓨팅 자원의 사용지역을 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 1,
The personal scheduling information of the user includes a region of use of the computing resources to be used by the user.
제3항에 있어서,
상기 위치배정부는 상기 사용 지역 내의 위치 중에서 위치별 자원할당 현황 및 사용자의 자원사용량을 합산한 결과가 위치별 자원사용량 최대치를 넘지 않는 위치에 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 3,
Wherein the location allocation unit allocates the location of the resource allocation status for each location and the resource usage of the user from the locations within the usage area to a location that does not exceed the maximum resource usage for each location.
제1항에 있어서,
상기 위치배정부는 상기 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 상기 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 기초로 위치별 자원 점유율을 계산하여 자원점유율이 가장 낮은 위치에 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 1,
Wherein the location allocation resource based on the result of the sum of the resource usage to the resource allocation status for each location on the details of the resource allocation status to the other users at the same time and the same time at the time of use and the preset resource usage by location location Resource management device of the cloud computing system, characterized in that the allocation to the lowest position occupying the resource occupancy.
제1항에 있어서,
상기 가상머신제공부는 상기 사용자가 현재 사용중인 가상머신이 이미 존재하는 경우에는 이미 존재하는 가상머신의 위치와 동일한 위치로 상기 배정된 위치를 조정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 1,
The virtual machine providing unit, the resource management device of the cloud computing system, characterized in that if the virtual machine currently in use by the user already exists, adjust the assigned position to the same position as the position of the virtual machine already exists.
제1항에 있어서,
상기 가상머신제공부는 모니터링된 위치별 자원사용현황 및 상기 자원사용량을 기초로, 상기 가상머신을 생성할 경우의 상기 배정된 위치의 기대사용률을 계산하여 상기 계산된 기대사용률이 기지정된 최대사용률보다 높은 경우에는 상기 배정된 위치와 다른 위치로 상기 배정된 위치를 조정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리장치.
The method of claim 1,
The virtual machine providing unit calculates an expected usage rate of the allocated location when the virtual machine is generated based on the resource usage status of each location and the resource usage monitored, and the calculated expected usage rate is higher than a predetermined maximum usage rate. If the resource management apparatus of the cloud computing system, characterized in that for adjusting the assigned position to a different position from the assigned position.
네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리방법에 있어서,
사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 스케줄러입력단계;
상기 입력받은 개인 스케줄링 정보를 기초로 상기 사용자가 사용할 가상머신이 생성될 위치를 배정하는 위치배정단계; 및
상기 사용시점에 상기 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 상기 배정된 위치에 생성하여 상기 사용자에게 제공하는 가상머신제공단계를 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
In the resource management method of a cloud computing system for providing a plurality of users with virtual machines virtualized computing resources on the network,
A scheduler input step of receiving personal scheduling information including a use time of the computing resource to be used by the user and resource usage;
A location assignment step of allocating a location where a virtual machine to be used by the user is generated based on the received personal scheduling information; And
And a virtual machine providing step of generating a virtual machine that can use the computing resources as the resource usage at the time of use and providing the virtual machine to the user.
제8항에 있어서,
상기 위치배정단계는 상기 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 상기 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 비교하여 비교결과에 따라 상기 가상머신이 생성될 위치를 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 8,
In the location assignment step, a result of summing the resource usage status of each resource allocation status regarding the details of resource allocation to other users for each location at the same time and the same time of use and comparing the maximum resource usage capacity for each location is compared. Resource allocation method for a cloud computing system, characterized in that for assigning a location where the virtual machine is generated.
제8항에 있어서,
상기 사용자의 개인 스케줄링 정보는 상기 사용자가 사용할 컴퓨팅 자원의 사용지역을 포함하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 8,
The personal scheduling information of the user includes a region of use of the computing resource to be used by the user.
제10항에 있어서,
상기 위치배정단계는 상기 사용 지역 내의 위치 중에서 위치별 자원할당 현황 및 사용자의 자원사용량을 합산한 결과가 위치별 자원사용량 최대치를 넘지 않는 위치에 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 10,
The location allocation step is a resource management method of a cloud computing system, characterized in that the result of the sum of the resource allocation status of each location and the resource usage of the user among the locations within the use area does not exceed the maximum resource usage by location.
제8항에 있어서,
상기 위치배정단계는 상기 사용시점과 동시간대에 위치별로 다른 사용자에게 자원이 할당된 내역에 관한 위치별 자원 할당현황에 상기 자원사용량을 합산한 결과와 기설정된 위치별 자원사용량 최대치를 기초로 위치별 자원 점유율을 계산하여 자원점유율이 가장 낮은 위치에 배정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 8,
The location allocation step is based on the result of the sum of the resource usage by the resource allocation status for each position on the details of the resource allocation status to the other users at the same time and the same time point at the time of use based on the preset maximum resource usage by location A resource management method of a cloud computing system, characterized in that the resource occupancy rate is calculated and assigned to the lowest position.
제8항에 있어서,
상기 가상머신제공단계는 상기 사용자가 현재 사용중인 가상머신이 이미 존재하는 경우에는 이미 존재하는 가상머신의 위치와 동일한 위치로 상기 배정된 위치를 조정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 8,
In the virtual machine providing step, if the virtual machine currently being used by the user already exists, the resource management method of the cloud computing system, characterized in that for adjusting the assigned position to the same position as the position of the virtual machine already exists.
제8항에 있어서,
상기 가상머신제공단계는 상기 가상 머신을 생성할 경우에 상기 배정된 위치의 기대사용률을 계산하여 상기 계산된 기대사용률이 기지정된 최대사용률보다 높은 경우에는 상기 배정된 위치와 다른 위치로 상기 배정된 위치를 조정하는 것을 특징으로 하는 클라우드 컴퓨팅 시스템의 자원관리방법.
The method of claim 8,
The virtual machine providing step calculates an expected usage rate of the assigned position when the virtual machine is created, and when the calculated expected usage rate is higher than a predetermined maximum utilization rate, the allocated position is different from the assigned position. Resource management method of a cloud computing system, characterized in that for adjusting the.
네트워크 상의 컴퓨팅 자원을 가상화한 가상머신들을 복수의 사용자들에게 제공하는 클라우드 컴퓨팅 시스템의 자원관리기능을 포함하는 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에 있어서,
사용자로부터 사용할 컴퓨팅 자원의 사용시점 및 자원사용량을 포함하는 개인 스케줄링 정보를 입력받는 기능;
상기 입력받은 개인 스케줄링 정보를 기초로 상기 사용자가 사용할 가상머신이 생성될 위치를 배정하는 기능; 및
상기 사용시점에 상기 자원사용량만큼 컴퓨팅 자원을 사용할 수 있는 가상머신을 상기 배정된 위치에 생성하여 상기 사용자에게 제공하는 기능를 포함하는 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체.

A computer-readable recording medium containing a program including a resource management function of a cloud computing system that provides a plurality of users with virtual machines virtualized computing resources on a network,
Receiving personal scheduling information including a time point of use of a computing resource and resource usage from a user;
Assigning a location where a virtual machine to be used by the user is generated based on the received personal scheduling information; And
A computer-readable recording medium containing a program including a function of providing to the user by creating a virtual machine that can use the computing resources as much as the resource consumption at the time of use.

KR1020100133730A 2010-12-23 2010-12-23 Resource management apparatus and method in cloud computing system KR20120071979A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100133730A KR20120071979A (en) 2010-12-23 2010-12-23 Resource management apparatus and method in cloud computing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100133730A KR20120071979A (en) 2010-12-23 2010-12-23 Resource management apparatus and method in cloud computing system

Publications (1)

Publication Number Publication Date
KR20120071979A true KR20120071979A (en) 2012-07-03

Family

ID=46706833

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100133730A KR20120071979A (en) 2010-12-23 2010-12-23 Resource management apparatus and method in cloud computing system

Country Status (1)

Country Link
KR (1) KR20120071979A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014049389A1 (en) * 2012-09-27 2014-04-03 Hewlett-Packard Development Company, L.P. Dynamic management of cloud computing infrastructure
WO2014105027A1 (en) * 2012-12-27 2014-07-03 Intel Corporation Reservation and execution image writing of native computing devices
KR20160114280A (en) * 2015-03-24 2016-10-05 건국대학교 산학협력단 Method and apparatus for scheduling operating time of virtual cluster
KR101724339B1 (en) 2016-04-11 2017-04-10 숭실대학교산학협력단 Device, system and method for android vm failover solution in sfc environment, recording medium for performing the method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014049389A1 (en) * 2012-09-27 2014-04-03 Hewlett-Packard Development Company, L.P. Dynamic management of cloud computing infrastructure
CN104838369A (en) * 2012-09-27 2015-08-12 惠普发展公司,有限责任合伙企业 Dynamic management of cloud computing infrastructure
WO2014105027A1 (en) * 2012-12-27 2014-07-03 Intel Corporation Reservation and execution image writing of native computing devices
KR20160114280A (en) * 2015-03-24 2016-10-05 건국대학교 산학협력단 Method and apparatus for scheduling operating time of virtual cluster
KR101724339B1 (en) 2016-04-11 2017-04-10 숭실대학교산학협력단 Device, system and method for android vm failover solution in sfc environment, recording medium for performing the method

Similar Documents

Publication Publication Date Title
US11714667B2 (en) Automated scaling of application in virtual data centers
CN110249310B (en) Resource management for virtual machines in cloud computing systems
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
EP1089173B1 (en) Dynamic adjustment of the number of logical processors assigned to a logical partition
US9571561B2 (en) System and method for dynamically expanding virtual cluster and recording medium on which program for executing the method is recorded
Xu et al. A game theory approach to fair and efficient resource allocation in cloud computing
He et al. Developing resource consolidation frameworks for moldable virtual machines in clouds
US20200042338A1 (en) System and method for memory resizing in a virtual computing environment
US20150309828A1 (en) Hypervisor manager for virtual machine management
JP2004288183A (en) Method for automatically allocating computing resource
US9292353B2 (en) Resource allocation using capacity distribution
Sawant A genetic algorithm scheduling approach for virtual machine resources in a cloud computing environment
KR20130088512A (en) Apparatus and method for managing resource in clustered computing environment
US20190042322A1 (en) Elastic multi-tenant container architecture
JP2016133964A (en) Computation resource allocation method and system
KR20130019698A (en) Method for optimizing resource by using migration based on user's scheduler
Garala et al. A performance analysis of load balancing algorithms in cloud environment
JP5616523B2 (en) Information processing system
KR20140080795A (en) Load balancing method and system for hadoop MapReduce in the virtual environment
Hwang et al. Resource allocation policies for loosely coupled applications in heterogeneous computing systems
Seth et al. Dynamic threshold-based dynamic resource allocation using multiple VM migration for cloud computing systems
KR20120071979A (en) Resource management apparatus and method in cloud computing system
Pham et al. Joint consolidation and service-aware load balancing for datacenters
Babu et al. Interference aware prediction mechanism for auto scaling in cloud
CN112134964A (en) Controller distribution method, computer equipment, storage medium and network service system

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination