[go: up one dir, main page]

KR102284264B1 - Cloud system and control method thereof - Google Patents

Cloud system and control method thereof Download PDF

Info

Publication number
KR102284264B1
KR102284264B1 KR1020190145959A KR20190145959A KR102284264B1 KR 102284264 B1 KR102284264 B1 KR 102284264B1 KR 1020190145959 A KR1020190145959 A KR 1020190145959A KR 20190145959 A KR20190145959 A KR 20190145959A KR 102284264 B1 KR102284264 B1 KR 102284264B1
Authority
KR
South Korea
Prior art keywords
virtual machine
container
resource consumption
resource
service request
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020190145959A
Other languages
Korean (ko)
Other versions
KR20210058471A (en
Inventor
김형두
최영환
남궁혁
이호철
Original Assignee
에스피테크놀러지 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스피테크놀러지 주식회사 filed Critical 에스피테크놀러지 주식회사
Priority to KR1020190145959A priority Critical patent/KR102284264B1/en
Publication of KR20210058471A publication Critical patent/KR20210058471A/en
Application granted granted Critical
Publication of KR102284264B1 publication Critical patent/KR102284264B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/5055Allocation 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 software capabilities, i.e. software resources associated or available to the machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 클라우드 시스템 및 그 제어방법에 관한 것이다. 본 발명에 따른 외부의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템이 수행하는 제어방법은, 새로운 컨테이너가 등록될 때마다 해당 컨테이너에 대한 분석을 통해 자원 소모 예상치를 판단하는 단계와; 서비스 요청에 대응되는 컨테이너를 상기 가상 머신상에 배치한 후 실행시키는 단계와; 상기 가상 머신의 자원 소모 잔량과 상기 단계에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나를 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 단계와; 상기 단계에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성하는 단계를 포함하는 것을 특징으로 한다.The present invention relates to a cloud system and a method for controlling the same. The control method performed by the cloud system for processing using a container operating in a virtual machine (VM) in response to an external service request according to the present invention consumes resources through analysis of the corresponding container whenever a new container is registered determining an estimate; arranging and executing a container corresponding to the service request on the virtual machine; comparing at least one of the remaining resource consumption of the virtual machine and the estimated resource consumption of each container determined in the step to predict whether resources are insufficient when an additional service is requested; and generating an additional virtual machine in advance when the resource shortage is predicted in the above step.

Description

클라우드 시스템 및 그 제어방법{CLOUD SYSTEM AND CONTROL METHOD THEREOF}CLOUD SYSTEM AND CONTROL METHOD THEREOF

본 발명은 클라우드 시스템 및 그 제어방법에 관한 것으로, 보다 상세하게는 외부의의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템 및 그 제어방법에 관한 것이다.The present invention relates to a cloud system and a control method thereof, and more particularly, to a cloud system and a control method thereof for processing using a container operating in a virtual machine (VM) in response to an external service request.

일명 클라우드 컴퓨팅 또는 클라우드 시스템이란 "클라우드", 즉 인터넷을 통해 서버, 저장소, 소프트웨어, 분석 등의 컴퓨팅 서비스를 제공하는 것을 의미한다. 예를 들어 네이버의 엔드라이브, 구글 Docs, 윈도우를 설치하면 함께 설치되는 OneDrive 등이 이런 서비스의 대표적인 예라 할 수 있다는데, 현재 많은 사용자들이 클라우드 기능을 손쉽게 사용하고 있다.The so-called cloud computing or cloud system refers to the provision of computing services such as a server, storage, software, and analysis through the "cloud", that is, the Internet. For example, NDrive of Naver, Google Docs, and OneDrive, which are installed together with Windows, are representative examples of such services. Currently, many users are using the cloud function easily.

클라우드 서비스를 이용하는 사람들이 기하급수적으로 늘어나면서 서버 및 데이터 센터에서 처리할 수 있는 데이터의 양을 넘어서기 시작하고, 이에 더해 수집한 데이터를 분석하고 송신하는 과정에서 발생하는 데이터 지연 현상이 발생되고 있다.As the number of people using cloud services increases exponentially, the amount of data that can be processed by servers and data centers begins to exceed, and in addition, data delays are occurring in the process of analyzing and transmitting the collected data. .

이러한 종래의 클라우드 컴퓨팅에서의 문제점 특히 데이터 처리 속도 및 용량과 관련된 문제를 해결할 방식 중 하나로서 엣지 컴퓨팅이 도입된 바 있다.Edge computing has been introduced as one of the methods to solve the problems in the conventional cloud computing, particularly problems related to data processing speed and capacity.

포그 컴퓨팅, MEC(Mobile Edge Computing) 등 여러 가지로 불리는 엣지 컴퓨팅은 말단 기기, 즉 '엣지'에서 컴퓨팅을 수행하는 것을 의미한다.Edge computing, also called fog computing and mobile edge computing (MEC), refers to performing computing at an end device, that is, at the 'edge'.

클라우드 컴퓨팅처럼 데이터를 처리하고 연산하는 곳이 멀리 떨어진 데이터 센터에 있는 게 아니라, 사용자들이 사용하는 단말 장치들과 가까운 곳에 컴퓨팅 장치가 위치한다는 것을 의미한다.It means that the computing device is located close to the terminal devices used by users, rather than in a remote data center where data is processed and computed like in cloud computing.

특히 지금까지 '엣지'에 위치한 장비들이 단순히 데이터 전송의 역할만을 수행하거나 데이터 저장의 역할만 수행한다면, 엣지 컴퓨팅에서는 이 '엣지' 장비에 컴퓨팅 능력을 부가하여 데이터 분석까지도 할 수 있도록 하고 있다.In particular, if the devices located at the 'edge' have only played the role of data transmission or data storage so far, edge computing adds computing power to this 'edge' device to enable data analysis as well.

이러한 엣지 컴퓨팅은 그 단독으로 구성되기 보다는 클라우드의 한 변형된 형태로 이용되는데, 이러한 엣지 컴퓨팅이 포함된 클라우드 시스템에서는 다양한 서비스 제공시 '컨테이너'기반으로 처리하고 있다.Such edge computing is used as a modified form of the cloud rather than being configured alone. In the cloud system including such edge computing, various services are provided based on 'container'.

여기서 컨테이너는 일종의 가상화 기술의 하나로서, 각 서비스 제공에 필요한 데이터, 프로그램, 정보들을 포함하고 있으므로, 동일한 컨테이너는 서버 운영체제 버전 등에 상관없이 동일한 기능을 수행할 수 있어서 널리 이용되고 있다.Here, a container is a kind of virtualization technology and contains data, programs, and information necessary for providing each service, so the same container can perform the same function regardless of the server operating system version, and thus is widely used.

즉, 각 서비스를 다양한 서버에서 제공되도록 하는 경우, 예를 들어 설정값이나 기타 서비스 제공을 위해 필요한 것들을 서버마다 새로 설정해야 하는 부담을 이러한 컨테이너를 이용함으로써 줄일 수 있는 것이다. That is, when each service is provided by various servers, the burden of newly setting, for example, setting values or other items necessary for providing services for each server can be reduced by using such a container.

이러한 컨테이너는 가상화 기술을 이용하여 각각의 가상 머신 상에서 구동될 수 있다.Such a container may be run on each virtual machine using virtualization technology.

즉, 클라우드 시스템은 복수 개의 가상 머신을 구비할 수 있고, 그 각각의 가상 머신에 마찬가지로 복수 개의 컨테이너를 배치 및 실행시킬 수 있는 것이다.That is, the cloud system may include a plurality of virtual machines, and a plurality of containers may be similarly disposed and executed in each virtual machine.

따라서 컨테이너의 구동이 이처럼 가상 머신상에서 이루어지는데 가상 머신의 생성되는 데는 다소 시간이 걸리게 된다. 따라서 서비스 요청이 있는 경우 그 서비스 제공을 위한 컨테이너를 배치할 가상 머신을 그때서야 생성하는 것은 서비스 제공 지연을 초래하여 바람직하지 않다.Therefore, although the container is driven on the virtual machine, it takes some time for the virtual machine to be created. Therefore, when there is a service request, it is not desirable to create a virtual machine in which a container for providing the service is to be placed only at that time because it causes a delay in providing the service.

따라서 컨테이너가 배치될 가상 머신을 미리 생성해 둘 필요가 있는데, 아직 서비스 요청이 많지도 않은데 미리 가상 머신을 몇 개씩 생성해 두는 것은 자원 효율성 측면에서 상당히 안 좋은 것이다.Therefore, it is necessary to create a virtual machine in which the container will be placed in advance, but creating a few virtual machines in advance is not good in terms of resource efficiency even though there are not many service requests yet.

따라서 필요한 시점을 정확히 예측하여 가상 머신을 적당한 시점에 미리 생성하는 방안의 제시가 요청되고 있다.Therefore, there is a demand for a method for accurately predicting a required time and generating a virtual machine at an appropriate time in advance.

공개특허 제10-2015-0068554호Patent Publication No. 10-2015-0068554

본 발명은 상기한 종래의 요청에 부응하기 위해 안출된 것으로서, 그 목적은 컨테이너가 배치 및 실행되는 가상 머신의 생성 시점을 정확히 예측하여 미리 준비해 두는 클라우드 시스템 및 그 방법을 제공하는 것이다. The present invention has been devised to meet the above-mentioned conventional request, and an object of the present invention is to provide a cloud system and a method thereof for accurately predicting the creation time of a virtual machine in which a container is placed and executed and prepared in advance.

상기한 목적을 달성하기 위해 본 발명에 따른 외부의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템이 수행하는 제어방법은, 새로운 컨테이너가 등록될 때마다 해당 컨테이너에 대한 분석을 통해 자원 소모 예상치를 판단하는 단계와; 서비스 요청에 대응되는 컨테이너를 상기 가상 머신상에 배치한 후 실행시키는 단계와; 상기 가상 머신의 자원 소모 잔량과 상기 단계에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나를 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 단계와; 상기 단계에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성하는 단계를 포함하여 이루어진다.In order to achieve the above object, the control method performed by the cloud system for processing using a container operating in a virtual machine (VM) in response to an external service request according to the present invention is performed whenever a new container is registered. determining an estimate of resource consumption through analysis of ; arranging and executing a container corresponding to the service request on the virtual machine; comparing at least one of the remaining resource consumption of the virtual machine and the estimated resource consumption of each container determined in the step to predict whether resources are insufficient when an additional service is requested; If the resource shortage is predicted in the above step, the step of generating an additional virtual machine in advance is performed.

여기서, 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 단계에서 미리 생성된 추가 가상 머신에 배치한 후, 실행시키는 단계를 더 포함할 수 있다.Here, when a new service request is generated, the method may further include arranging a container corresponding to the new service request in the additional virtual machine previously created in the above step, and then executing the container.

여기서, 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너에 대해 상기 단계에서 판단된 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교하여 자원 소모 잔량이 더 작은 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 단계에서 미리 생성된 추가 가상 머신에 배치한 후, 실행시킬 수 있다.Here, when a new service request occurs, the estimated resource consumption determined in the above step for the container corresponding to the new service request is compared with the remaining resource consumption of the current virtual machine. If the remaining amount of resource consumption is smaller, the new service request After placing the container corresponding to the additional virtual machine created in advance in the above step, it can be executed.

여기서, 바로 직전에 상기 가상 머신에 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.Here, by comparing the resource consumption estimate corresponding to the container disposed in the virtual machine immediately before with the remaining resource consumption of the virtual machine, it is possible to predict whether the resource is insufficient when an additional service is requested.

여기서, 기 설정된 시간 동안 상기 가상 머신에 가장 많이 추가 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 선별적으로 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.Here, by selectively comparing the resource consumption estimate corresponding to the container additionally placed in the virtual machine the most during a preset time with the remaining resource consumption of the virtual machine, it is possible to predict whether the resource is insufficient when an additional service is requested.

또, 상기한 목적을 달성하기 위해 본 발명에 따른 외부의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템은, 새로운 컨테이너가 등록될 때마다 해당 컨테이너에 대한 분석을 통해 자원 소모 예상치를 판단하는 판단부와; 서비스 요청에 대응되는 컨테이너를 상기 가상 머신상에 배치한 후 실행시키는 컨테이너 배치 실행부와; 상기 판단부에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나와 상기 가상 머신의 자원 소모 잔량을 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 자원 부족 예측부와; 상기 자원 부족 예측부에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성하는 가상 머신 관리부를 포함하여 구성된다.In addition, in order to achieve the above object, the cloud system that processes using a container operating in a virtual machine (VM) in response to an external service request according to the present invention analyzes the corresponding container whenever a new container is registered a determination unit for determining an estimate of resource consumption through a container arrangement execution unit for arranging and executing a container corresponding to a service request on the virtual machine; a resource shortage prediction unit that compares at least one of the resource consumption estimates of each container determined by the determination unit with the remaining resource consumption of the virtual machine and predicts whether there is a shortage of resources when an additional service is requested; and a virtual machine manager configured to generate an additional virtual machine in advance when a resource shortage is predicted by the resource shortage predictor.

여기서, 상기 컨테이너 배치 실행부는, 상기 추가 가상 머신이 미리 생성된 이후 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 추가 가상 머신에 배치한 후 실행시킬 수 있다.Here, when a new service request occurs after the additional virtual machine is created in advance, the container arrangement execution unit may arrange and execute a container corresponding to the new service request in the additional virtual machine.

여기서, 상기 컨테이너 배치 실행부는 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너에 대해 상기 판단부에서 판단된 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교하여 자원 소모 잔량이 더 작은 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 추가 가상 머신에 배치한 후 실행시킬 수 있다.Here, when a new service request occurs, the container arrangement execution unit compares the estimated resource consumption determined by the determination unit with the remaining resource consumption of the current virtual machine for a container corresponding to the new service request, and the remaining resource consumption is smaller. In this case, the container corresponding to the new service request may be placed in the additional virtual machine and then executed.

여기서, 상기 자원 부족 예측부는, 상기 컨테이너 배치 실행부에 의해 바로 직전에 상기 가상 머신에 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.Here, the resource shortage prediction unit compares the resource consumption estimate corresponding to the container placed in the virtual machine immediately before the container arrangement execution unit with the remaining resource consumption of the virtual machine to determine whether the resource is insufficient when an additional service is requested. predictable.

여기서, 상기 자원 부족 예측부는, 기 설정된 시간 동안 상기 가상 머신에 가장 많이 추가 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.Here, the resource shortage predicting unit may compare the resource consumption estimate corresponding to the container additionally placed in the virtual machine the most during a preset time with the remaining resource consumption of the virtual machine to predict whether the resource is insufficient when an additional service is requested. .

이상 설명한 바와 같이 본 발명에 따르면, 가상 머신의 스케일 아웃 상황을 미리 예측하여 추가 가상 머신을 적당한 시점에 미리 생성함으로써 새로운 서비스 요청에 따른 처리를 신속히 할 수 있음과 아울러, 불필요하게 많은 가상 머신을 미리 생성하지 않아도 되므로 자원 효율성을 증대된다.As described above, according to the present invention, by predicting the scale-out situation of a virtual machine in advance and creating an additional virtual machine in advance at an appropriate time, it is possible to expedite processing according to a new service request and unnecessarily many virtual machines in advance. Resource efficiency is increased because it does not need to be created.

도 1은 본 발명의 일 실시예에 따른 클라우드 시스템을 포함하는 전체 시스템의 개략 구성도이고,
도 2는 도 1의 클라우드 시스템의 기능블록도이고,
도 3은 본 발명의 일 실시예에 따른 클라우드 시스템의 제어흐름도이고,
도 4는 추가로 가상 머신이 생성된 상태를 나타낸 도면이다.
1 is a schematic configuration diagram of an entire system including a cloud system according to an embodiment of the present invention;
Figure 2 is a functional block diagram of the cloud system of Figure 1,
3 is a control flow diagram of a cloud system according to an embodiment of the present invention;
4 is a diagram illustrating a state in which a virtual machine is additionally created.

이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

이하 본 발명에 따른 각 실시예는 본 발명의 이해를 돕기 위한 하나의 예에 불과하고, 본 발명이 이러한 실시예에 한정되는 것은 아니다. 특히 본 발명은 각 실시예에 포함되는 개별 구성, 개별 기능, 또는 개별 단계 중 적어도 어느 하나 이상의 조합으로 구성될 수 있다.Hereinafter, each embodiment according to the present invention is merely an example for helping understanding of the present invention, and the present invention is not limited to these embodiments. In particular, the present invention may be composed of a combination of at least any one of individual components, individual functions, or individual steps included in each embodiment.

특히, 편의상 청구 범위의 일부 청구항에는 '(a)'와 같은 알파벳을 포함시켰으나, 이러한 알파벳이 각 단계의 순서를 규정하는 것은 아니다.In particular, for convenience, some of the claims include an alphabet such as '(a)', but the alphabet does not define the order of each step.

또한 이하 본 발명에 따른 각 실시예에서 언급하는 각 신호는 한 번의 연결 등에 의해 전송되는 하나의 신호를 의미할 수도 있지만, 후술하는 특정 기능 수행을 목적으로 전송되는 일련의 신호 그룹을 의미할 수도 있다. 즉, 각 실시예에서는 소정의 시간 간격을 두고 전송되거나 상대 장치로부터의 응답 신호를 수신한 이후에 전송되는 복수 개의 신호들이 편의상 하나의 신호명으로 표현될 수 있는 것이다.In addition, each signal referred to in each embodiment according to the present invention may mean one signal transmitted by one connection, etc., but may also mean a series of signal groups transmitted for the purpose of performing a specific function to be described later. . That is, in each embodiment, a plurality of signals transmitted at a predetermined time interval or transmitted after receiving a response signal from a counterpart device may be expressed as one signal name for convenience.

본 발명의 일 실시예에 따른 클라우드 시스템(100)을 포함하는 전체 시스템의 개략 구성은 도 1에 도시된 바와 같다.A schematic configuration of the entire system including the cloud system 100 according to an embodiment of the present invention is shown in FIG. 1 .

동 도면에 도시된 바와 같이 전체 시스템은 사용자 단말기(200)와, 클라우드 시스템(100)을 포함하여 구성될 수 있다.As shown in the figure, the entire system may include the user terminal 200 and the cloud system 100 .

여기서 사용자 단말기(200)는 각종 서비스를 요청하여 이용하는 고객들이 이용하는 것으로서, 예를 들어 스마트폰과 같은 무선 통신 단말기, 또는 댁내에 구비된 컴퓨터일 수 있는데, 이에 한정되는 것은 아니다.Here, the user terminal 200 is used by customers who request and use various services, and may be, for example, a wireless communication terminal such as a smart phone or a computer provided in the house, but is not limited thereto.

클라우드 시스템(100)은 이러한 사용자 단말기(200)로부터의 각종 요청을 처리하는 것으로서, 예를 들어 웹 서비스, 파일 저장 서비스, 메신저 서비스 등 다양한 서비스를 제공할 수 있다.The cloud system 100 processes various requests from the user terminal 200 , and may provide various services such as a web service, a file storage service, and a messenger service.

특히 클라우드 시스템(100)은 컨테이너를 이용하여 이러한 각종 서비스를 처리하는데, 이러한 클라우드 시스템(100)의 구체적인 기능 블록의 일 예는 도 2에 도시된 바와 같다.In particular, the cloud system 100 processes these various services using containers, and an example of a specific functional block of the cloud system 100 is shown in FIG. 2 .

동 도면에 도시된 바와 같이, 클라우드 시스템(100)은 판단부(110), 컨테이너 배치 실행부(120), 자원 부족 예측부(130), 가상 머신 관리부(140)를 포함하여 구성될 수 있고, 더 나아가 컨테이너 등록부(150), 서비스 요청 수신부(160), 저장부(170)를 더 포함할 수 있다.As shown in the figure, the cloud system 100 may be configured to include a determination unit 110 , a container arrangement execution unit 120 , a resource shortage prediction unit 130 , and a virtual machine management unit 140 , Furthermore, it may further include a container registration unit 150 , a service request receiving unit 160 , and a storage unit 170 .

우선, 저장부(170)는 클라우드 시스템(100)의 동작에 필요한 각종 설정 정보, 데이터, 애플리케이션을 저장하고, 또한 클라우드 시스템(100)의 동작 중 새로 발생하거나 외부로부터 수신되는 정보를 저장하는 기능을 수행한다.First, the storage unit 170 stores various setting information, data, and applications necessary for the operation of the cloud system 100 , and also functions to store information newly generated or received from the outside during the operation of the cloud system 100 . carry out

특히 저장부(170)에는 후술하는 각종 컨테이너가 등록되고 또한 가상 머신이 생성 및 저장될 수 있다.In particular, various containers to be described later may be registered in the storage unit 170 , and a virtual machine may be created and stored.

서비스 요청 수신부(160)는 사용자 단말기(200)로부터 서비스 요청 신호를 수신하는 기능을 수행한다.The service request receiving unit 160 performs a function of receiving a service request signal from the user terminal 200 .

예를 들어 사용자 단말기(200)로부터 웹 서비스 요청, 파일 제공 서비스 요청, 메신저 서비스 요청 등의 각종 요청 신호를 수신하는 기능을 수행하는 것이다.For example, a function of receiving various request signals such as a web service request, a file providing service request, and a messenger service request from the user terminal 200 is performed.

컨테이너 등록부(150)는 관리자의 요청에 따라 각종 컨테이너를 저장부(170)에 등록하는 기능을 수행한다.The container registration unit 150 performs a function of registering various containers in the storage unit 170 according to a request of an administrator.

여기서 컨테이너는 상술한 바와 같이 사용자 단말기(200)의 각 서비스 요청을 처리하는 기본 단위에 해당하는 것으로서, 컨테이너 그 자체는 공지된 기술에 해당하므로 보다 상세한 설명은 생략한다.Here, the container corresponds to a basic unit for processing each service request of the user terminal 200 as described above, and since the container itself corresponds to a known technology, a more detailed description will be omitted.

판단부(110)는 이처럼 새로운 컨테이너가 저장부(170)에 등록될 때마다 해당 컨테이너에 대한 분석을 수행하여 자원 소모 예상치를 판단하는 기능을 수행한다.Each time a new container is registered in the storage unit 170 , the determination unit 110 performs a function of determining an estimate of resource consumption by analyzing the corresponding container.

여기서 컨테이너 분석은 컨테이너 그 자체에 대한 분석과 컨테이너와 관련된 정보의 분석을 포함한다.Here, the container analysis includes the analysis of the container itself and the analysis of information related to the container.

예를 들어 컨테이너에 그 자체에 해당 컨테이너 기능 수행을 위해 필요한 정보들이 포함되어 있는 경우, 판단부(110)는 그 컨테이너에 포함된 정보들을 분석하여 해당 컨테이너의 동작시 필요한 자원 소모 예상치를 판단할 수 있다.For example, if the container itself includes information necessary for performing the container function, the determination unit 110 may analyze the information included in the container to determine an estimate of resource consumption required for the operation of the container. there is.

또는 각 컨테이너의 종류별 기능을 매핑시킨 별도의 테이블이 존재하는 경우 판단부(110)는 새로운 컨테이너가 등록될 때마다 해당 테이블을 참조하여 그 새로 등록된 컨테이너의 자원 소모 예상치를 판단할 수 있는 것이다.Alternatively, when a separate table to which functions of each container type is mapped exists, the determination unit 110 may determine an estimate of resource consumption of the newly registered container with reference to the table whenever a new container is registered.

여기서 자원 소모 예상치는 각 컨테이너의 동작시 필요한 시스템 자원의 소모량을 예상한 값으로서, 예를 들어 CPU, 메모리, 네트워크 자원 등에 대한 소모량을 예상한 것일 수 있다.Here, the resource consumption estimate is an estimate of the consumption of system resources required for the operation of each container, and may be, for example, an estimate of the consumption of CPU, memory, network resources, and the like.

컨테이너 배치 실행부(120)는 서비스 요청 수신부(160)에 수신된 서비스 요청에 대응되는 컨테이너를 가상 머신상에 배치한 후 실행시키는 기능을 수행한다. 즉, 저장부(170)에 등록되어 있던 컨테이너는 특정 가상 머신에 배치된 후에야 비로소 동작할 수 있고, 이에 따라 사용자 단말기(200)의 서비스 요청을 처리할 수 있다.The container arrangement execution unit 120 performs a function of placing a container corresponding to the service request received by the service request receiving unit 160 on the virtual machine and then executing it. That is, the container registered in the storage unit 170 can operate only after being placed in a specific virtual machine, and thus can process the service request of the user terminal 200 .

특히, 컨테이너 배치 실행부(120)는 어느 하나의 가상 머신이 생성되어 적어도 하나의 컨테이너가 해당 가상 머신상에 배치 및 동작하고 있는 상태에서, 후술하는 바와 같이 추가 가상 머신이 미리 생성된 경우, 새로운 서비스 요청이 발생하면 그 새로운 서비스 요청에 대응되는 컨테이너를 기존의 가상 머신 또는 새로운 가상 머신 중 어느 하나에 배치하여 실행되도록 할 수 있다.In particular, when any one virtual machine is created and at least one container is placed and operated on the virtual machine, the container arrangement execution unit 120 generates a new virtual machine when an additional virtual machine is previously created as will be described later. When a service request occurs, a container corresponding to the new service request may be placed and executed in either an existing virtual machine or a new virtual machine.

구체적으로 컨테이너 배치 실행부(120)는 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너에 대해 판단부(110)에서 판단된 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교하여 자원 소모 잔량이 더 작은 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 추가 가상 머신에 배치한 후 실행시킬 수 있다.Specifically, when a new service request occurs, the container arrangement execution unit 120 compares the estimated resource consumption determined by the determination unit 110 with the remaining resource consumption of the current virtual machine for the container corresponding to the new service request. If the remaining amount of consumption is smaller, the container corresponding to the new service request may be placed in an additional virtual machine and then executed.

여기서 가상 머신의 자원 소모 잔량은 현재의 가상 머신에 대응되는 자원 할당량 중 기 배치된 컨테이너 등에 의해 소모된 양을 차감하여 남은 것을 의미한다.Here, the remaining amount of resource consumption of the virtual machine means the remaining amount after deducting the amount consumed by the pre-deployed container from among the resource allocations corresponding to the current virtual machine.

자원 부족 예측부(130)는 판단부(110)에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나와 가상 머신의 자원 소모 잔량을 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 기능을 수행한다.The resource shortage prediction unit 130 compares at least one of the resource consumption estimates of each container determined by the determination unit 110 with the remaining resource consumption of the virtual machine to predict whether or not there is a resource shortage when an additional service is requested. .

즉, 본 실시예에서는 각 컨테이너는 가상 머신상에 배치 및 실행되는데, 각 가상 머신마다 자원 할당량이 정해져 있는 경우, 각 컨테이너는 자신이 배치된 가상 머신의 자원 할당량 범위 이내에서 실행될 수 있는데, 자원 부족 예측부(130)는 이러한 상황을 미리 예측하는 것이다.That is, in the present embodiment, each container is placed and executed on a virtual machine. When a resource quota is determined for each virtual machine, each container can be executed within the resource quota range of the virtual machine in which it is deployed, but lack of resources. The prediction unit 130 predicts such a situation in advance.

예를 들어 자원 부족 예측부(130)는 컨테이너 배치 실행부(120)에 의해 바로 직전에 가상 머신에 배치된 컨테이너에 대응되는 자원 소모 예상치를 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.For example, the resource shortage predicting unit 130 compares the resource consumption estimate corresponding to the container placed in the virtual machine immediately before the container arrangement execution unit 120 with the remaining resource consumption of the virtual machine to request additional service. shortages can be predicted.

특히, 자원 부족 예측부(130)는 기 설정된 시간 동안 상기 가상 머신에 가장 많이 추가 배치된 컨테이너에 대응되는 자원 소모 예상치를 현재 이용되고 있는 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측할 수 있다.In particular, the resource shortage predicting unit 130 compares the resource consumption estimate corresponding to the container additionally placed in the virtual machine the most for a preset time with the remaining resource consumption of the currently used virtual machine, and when an additional service is requested, the resource is insufficient. It can be predicted whether

즉, 상술한 예는 동일한 컨테이너가 추가로 생성될 수 있다는 가정하에 설명한 것으로서, 예를 들어 A라는 컨테이너가 가상 머신에 배치 및 실행된 상태에서 B라는 컨테이너가 추가로 가상 머신에 배치 및 실행되는 경우, 자원 부족 예측부(130)는 그 B 컨테이너에 대해 판단된 자원 소모 예상치와 현재의 가상 머신의 자원 소모 잔량을 비교하여 자원 부족 여부를 예측할 수 있는 것이다.That is, the above-described example is described on the assumption that the same container can be additionally created. For example, when container A is placed and executed in the virtual machine and container B is additionally placed and executed in the virtual machine , the resource shortage predicting unit 130 may predict whether the resource is insufficient by comparing the estimated resource consumption determined for the container B with the remaining amount of resource consumption of the current virtual machine.

한편, 가상 머신 관리부(140)는 컨테이너가 배치 및 실행되는 일종의 공간인 각 가상 머신을 관리하는 것으로서, 각 가상 머신의 생성 또는 소멸 처리를 수행할 수 있다.Meanwhile, the virtual machine management unit 140 manages each virtual machine, which is a kind of space in which containers are placed and executed, and may generate or destroy each virtual machine.

특히, 가상 머신 관리부(140)는 자원 부족 예측부(130)에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성할 수 있다.In particular, the virtual machine manager 140 may generate an additional virtual machine in advance when a resource shortage is predicted by the resource shortage predictor 130 .

이때 가상 머신 관리부(140)는 미리 추가 생성된 가상 머신은 동작시키지 않고 잠시 오프 상태로 두고서, 추후 새로운 컨테이너 배치가 필요한 시점에 온 상태로 전환시킬 수 있다.In this case, the virtual machine manager 140 may leave the previously created virtual machine in an off state for a while without operating it, and may switch it to an on state when a new container arrangement is required later.

이하에서는 도 3을 참조하여 본 발명의 일 실시예에 따른 클라우드 시스템(100)의 제어 과정을 설명한다.Hereinafter, a control process of the cloud system 100 according to an embodiment of the present invention will be described with reference to FIG. 3 .

새로운 컨테이너 등록이 감지되면, 클라우드 시스템(100)은 해당 컨테이너를 분석하여 자원 소모 예상치를 판단하여 저장한다.When a new container registration is detected, the cloud system 100 analyzes the corresponding container to determine and store the estimated resource consumption.

이후, 사용자 단말기(200)로부터 서비스 요청이 감지된 경우 그 요청된 서비스에 대응되는 컨테이너를 현재 생성되어 있는 가상 머신에 배치하여 실행시킨다.Thereafter, when a service request is detected from the user terminal 200 , a container corresponding to the requested service is placed and executed in a currently created virtual machine.

이러한 컨테이너의 동작에 의해 서비스 제공이 이루어지는 것이다.Service provision is made by the operation of such a container.

한편, 클라우드 시스템(100)은 새로운 컨테이너가 가상 머신에 배치 및 실행된 경우, 기 등록된 각 컨테이너의 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교한다.Meanwhile, when a new container is deployed and executed in the virtual machine, the cloud system 100 compares the estimated resource consumption of each previously registered container with the remaining resource consumption of the current virtual machine.

비교 결과 가상 머신의 자원 소모 잔량이 더 작은 경우, 클라우드 시스템(100)은 추가 가상 머신을 미리 생성하여 대기 상태로 둔다.As a result of the comparison, if the remaining amount of resource consumption of the virtual machine is smaller, the cloud system 100 creates an additional virtual machine in advance and puts it in a standby state.

예를 들어 클라우드 시스템(100)은 기 등록된 컨테이너의 자원 소모 예상치 각각과 가상 머신의 자원 소모 잔량을 비교하여 어느 하나의 컨테이너의 자원 소모 예상치라도 가상 머신의 자원 소모 잔량보다 더 큰 경우 추가 가상 머신을 생성할 수 있다.For example, the cloud system 100 compares each of the resource consumption estimates of the previously registered containers with the remaining resource consumption of the virtual machine, and when the estimated resource consumption of any one container is greater than the remaining resource consumption of the virtual machine, the additional virtual machine can create

도 4를 참조하면, 컨테이너 저장소에 복수 개의 컨테이너가 등록되어 있는 상태에서, 현재 A 컨테이너가 배치 및 구동되어 있던 가상 머신에 새로운 서비스 요청에 따라 B 컨테이너가 배치 및 구동되는 경우, 클라우드 시스템(100)은 현재의 가상 머신의 자원 소모 잔량과 컨테이너 저장소에 저장되어 있는 각 컨테이너들의 자원 소모 예상치를 비교하고, 비교 결과 어느 하나의 컨테이너에 대한 자원 소모 예상치라도 가상 머신의 자원 소모 잔량보다 더 큰 경우 클라우드 시스템(100)은 도 4에 도시된 바와 같이 추가 가상 머신을 미리 생성하여 대기 상태로 둘 수 있는 것이다.Referring to FIG. 4 , in a state in which a plurality of containers are registered in the container storage, when container B is deployed and driven in response to a new service request in a virtual machine in which container A is currently deployed and driven, the cloud system 100 . compares the current amount of resource consumption of the virtual machine with the estimated resource consumption of each container stored in the container storage. Reference numeral 100 indicates that an additional virtual machine may be created in advance and placed in a standby state as shown in FIG. 4 .

또 다른 예로써, 클라우드 시스템(100)은 바로 이전에 배치 및 실행된 컨테이너의 자원 소모 예상치와 가상 머신의 자원 소모 잔량만을 우선적으로 비교하여 자원 소모 예상치가 더 큰 경우 추가 가상 머신을 생성할 수도 있다.As another example, the cloud system 100 may preferentially compare only the resource consumption estimate of the container immediately deployed and executed with the remaining resource consumption amount of the virtual machine, and generate an additional virtual machine when the resource consumption estimate is larger. .

이어서 사용자 단말기(200)로부터 또 다른 서비스 요청이 감지된 경우, 클라우드 시스템(100)은 그 또 다른 서비스 요청에 대응되는 컨테이너를 새로 생성되어 대기 상태로 있던 가상 머신에 배치하여 실행시킨다.Subsequently, when another service request is detected from the user terminal 200 , the cloud system 100 places and executes a container corresponding to the another service request in a newly created virtual machine in a standby state.

한편, 상술한 각 실시예를 수행하는 과정은 소정의 기록 매체(예를 들어 컴퓨터로 판독 가능한)에 저장된 프로그램 또는 애플리케이션에 의해 이루어질 수 있음은 물론이다. 여기서 기록 매체는 RAM(Random Access Memory)과 같은 전자적 기록 매체, 하드 디스크와 같은 자기적 기록 매체, CD(Compact Disk)와 같은 광학적 기록 매체 등을 모두 포함한다.Meanwhile, it goes without saying that the process of performing each of the above-described embodiments may be performed by a program or application stored in a predetermined recording medium (eg, computer-readable). Here, the recording medium includes an electronic recording medium such as a random access memory (RAM), a magnetic recording medium such as a hard disk, and an optical recording medium such as a compact disk (CD).

이때, 기록 매체에 저장된 프로그램은 컴퓨터나 스마트폰 등과 같은 하드웨어 상에서 실행되어 상술한 각 실시예를 수행할 수 있다. 특히, 상술한 본 발명에 따른 클라우드 시스템(100)의 기능 블록 중 적어도 어느 하나는 이러한 프로그램 또는 애플리케이션에 의해 구현될 수 있다.In this case, the program stored in the recording medium may be executed on hardware such as a computer or a smart phone to perform each of the above-described embodiments. In particular, at least one of the functional blocks of the cloud system 100 according to the present invention described above may be implemented by such a program or application.

또한, 본 발명은 상기한 특정 실시예에 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 여러 가지로 변형 및 수정하여 실시할 수 있는 것이다. 이러한 변형 및 수정이 첨부되는 특허청구범위에 속한다면 본 발명에 포함된다는 것은 자명할 것이다. In addition, the present invention is not limited to the specific embodiments described above, but can be practiced with various modifications and modifications within the scope without departing from the gist of the present invention. It will be apparent that such modifications and variations are included in the present invention provided they fall within the scope of the appended claims.

100 : 클라우드 시스템 200 : 사용자 단말기
110 : 판단부 120 : 컨테이너 배치 실행부
130 : 자원 부족 예측부 140 : 가상 머신 관리부
150 : 컨테이너 등록부 160 : 서비스 요청 수신부
170 : 저장부
100: cloud system 200: user terminal
110: judgment unit 120: container arrangement execution unit
130: resource shortage prediction unit 140: virtual machine management unit
150: container register 160: service request receiving unit
170: storage

Claims (11)

외부의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템이 수행하는 제어방법에 있어서,
(a) 새로운 컨테이너가 등록될 때마다 해당 컨테이너에 대한 분석을 통해 자원 소모 예상치를 판단하는 단계와;
(b) 서비스 요청에 대응되는 컨테이너를 상기 가상 머신상에 배치한 후 실행시키는 단계와;
(c) 상기 가상 머신의 자원 소모 잔량과 상기 (a) 단계에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나를 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 단계와;
(d) 상기 (c) 단계에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성하는 단계와;
(e) 상기 (d) 단계 이후에, 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너에 대해 상기 (a) 단계에서 판단된 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교하여 자원 소모 잔량이 더 작은 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 (d) 단계에서 미리 생성된 추가 가상 머신에 배치한 후, 실행시키는 것을 특징으로 하는 클라우드 시스템의 제어방법.
In the control method performed by a cloud system that processes using a container operating in a virtual machine (VM) in response to an external service request,
(a) determining an estimate of resource consumption through analysis of the corresponding container whenever a new container is registered;
(b) placing a container corresponding to the service request on the virtual machine and then executing the container;
(c) predicting whether a resource is insufficient when an additional service is requested by comparing at least one of the remaining resource consumption of the virtual machine and the estimated resource consumption of each container determined in step (a);
(d) generating an additional virtual machine in advance when the resource shortage is predicted in step (c);
(e) when a new service request occurs after step (d), by comparing the estimated resource consumption determined in step (a) with the remaining resource consumption of the current virtual machine for the container corresponding to the new service request When the remaining amount of resource consumption is smaller, the container corresponding to the new service request is placed in the additional virtual machine previously created in step (d) and then executed.
삭제delete 삭제delete 제1항에 있어서,
상기 (c) 단계에서는, 상기 (b) 단계에서 바로 직전에 상기 가상 머신에 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 것을 특징으로 하는 클라우드 시스템의 제어방법.
According to claim 1,
In the step (c), the resource consumption estimate corresponding to the container placed in the virtual machine immediately before the step (b) is compared with the remaining resource consumption of the virtual machine to predict whether there is a shortage of resources when an additional service is requested. A control method of a cloud system, characterized in that.
제1항에 있어서,
상기 (c) 단계에서는, 기 설정된 시간 동안 상기 가상 머신에 가장 많이 추가 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 선별적으로 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 것을 특징으로 하는 클라우드 시스템의 제어방법.
According to claim 1,
In step (c), the resource consumption estimate corresponding to the most additionally placed container in the virtual machine for a preset time is selectively compared with the remaining resource consumption of the virtual machine to predict whether there is a shortage of resources when an additional service is requested. A control method of a cloud system, characterized in that.
하드웨어와 결합되어 제1항, 제4항 내지 제5항 중 어느 한 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능 기록 매체에 저장된 응용 프로그램.An application program stored in a computer-readable recording medium in combination with hardware to execute the method of any one of claims 1 to 5. 외부의 서비스 요청에 대응하여 가상 머신(VM)에서 동작하는 컨테이너를 이용하여 처리하는 클라우드 시스템에 있어서,
새로운 컨테이너가 등록될 때마다 해당 컨테이너에 대한 분석을 통해 자원 소모 예상치를 판단하는 판단부와;
서비스 요청에 대응되는 컨테이너를 상기 가상 머신상에 배치한 후 실행시키는 컨테이너 배치 실행부와;
상기 판단부에서 판단된 각 컨테이너의 자원 소모 예상치 중 적어도 어느 하나와 상기 가상 머신의 자원 소모 잔량을 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 자원 부족 예측부와;
상기 자원 부족 예측부에서 자원 부족이 예측된 경우 추가 가상 머신을 미리 생성하는 가상 머신 관리부를 포함하고,
상기 컨테이너 배치 실행부는, 상기 추가 가상 머신이 미리 생성된 이후 새로운 서비스 요청이 발생한 경우, 그 새로운 서비스 요청에 대응되는 컨테이너에 대해 상기 판단부에서 판단된 자원 소모 예상치와 현재 가상 머신의 자원 소모 잔량을 비교하여 자원 소모 잔량이 더 작은 경우, 그 새로운 서비스 요청에 대응되는 컨테이너를 상기 추가 가상 머신에 배치한 후 실행시키는 것을 특징으로 하는 클라우드 시스템.
In the cloud system for processing using a container operating in a virtual machine (VM) in response to an external service request,
a determination unit for determining an estimate of resource consumption through analysis of a corresponding container whenever a new container is registered;
a container arrangement execution unit for arranging and executing a container corresponding to a service request on the virtual machine;
a resource shortage prediction unit that compares at least one of the resource consumption estimates of each container determined by the determination unit with the remaining resource consumption of the virtual machine and predicts whether there is a shortage of resources when an additional service is requested;
and a virtual machine management unit which generates an additional virtual machine in advance when the resource shortage is predicted by the resource shortage prediction unit;
When a new service request occurs after the additional virtual machine is created in advance, the container arrangement execution unit calculates the estimated resource consumption determined by the determination unit and the remaining amount of resource consumption of the current virtual machine for the container corresponding to the new service request. In comparison, when the remaining amount of resource consumption is smaller, a container corresponding to the new service request is placed in the additional virtual machine and then executed.
삭제delete 삭제delete 제7항에 있어서,
상기 자원 부족 예측부는, 상기 컨테이너 배치 실행부에 의해 바로 직전에 상기 가상 머신에 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 것을 특징으로 하는 클라우드 시스템.
8. The method of claim 7,
The resource shortage predicting unit is configured to compare an estimate of resource consumption corresponding to a container placed in the virtual machine immediately before by the container arrangement execution unit with the remaining resource consumption of the virtual machine to predict whether or not a resource is insufficient when an additional service is requested. Cloud system, characterized in that.
제7항에 있어서,
상기 자원 부족 예측부는, 기 설정된 시간 동안 상기 가상 머신에 가장 많이 추가 배치된 컨테이너에 대응되는 자원 소모 예상치를 상기 가상 머신의 자원 소모 잔량과 비교하여 추가 서비스 요청시 자원 부족 여부를 예측하는 것을 특징으로 하는 클라우드 시스템.
8. The method of claim 7,
The resource shortage prediction unit compares the resource consumption estimate corresponding to the container additionally placed in the virtual machine the most during a preset time with the remaining resource consumption of the virtual machine to predict whether the resource will be insufficient when an additional service is requested. cloud system.
KR1020190145959A 2019-11-14 2019-11-14 Cloud system and control method thereof Active KR102284264B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190145959A KR102284264B1 (en) 2019-11-14 2019-11-14 Cloud system and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190145959A KR102284264B1 (en) 2019-11-14 2019-11-14 Cloud system and control method thereof

Publications (2)

Publication Number Publication Date
KR20210058471A KR20210058471A (en) 2021-05-24
KR102284264B1 true KR102284264B1 (en) 2021-08-02

Family

ID=76152914

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190145959A Active KR102284264B1 (en) 2019-11-14 2019-11-14 Cloud system and control method thereof

Country Status (1)

Country Link
KR (1) KR102284264B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102635676B1 (en) * 2021-11-04 2024-02-13 (주)아이티아이즈 Method and apparatus for providing common platform for virtual healthcare service

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101740490B1 (en) * 2015-12-29 2017-05-26 경희대학교 산학협력단 Proactive auto scaling system and method in cloud computing environment
KR101987661B1 (en) 2018-07-19 2019-06-11 나무기술 주식회사 Cluster resource allocating and managing method on cloud platform

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101540631B1 (en) * 2012-12-28 2015-07-30 삼성에스디에스 주식회사 System, method and recording medium recording the program thereof for dynamic expansion of the virtual cluster
KR102211850B1 (en) 2013-12-11 2021-02-02 주식회사 케이티 Method and system for providing virtual machine image service based cloud
KR20160043706A (en) * 2014-10-14 2016-04-22 삼성에스디에스 주식회사 Virtual machine scaling apparatus and method for thereof
KR101896497B1 (en) * 2017-02-21 2018-09-07 에스케이텔레콤 주식회사 Method and appratus for performance control
KR20190070659A (en) * 2017-12-13 2019-06-21 주식회사 넥스클라우드 Cloud computing apparatus for supporting resource allocation based on container and cloud computing method for the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101740490B1 (en) * 2015-12-29 2017-05-26 경희대학교 산학협력단 Proactive auto scaling system and method in cloud computing environment
KR101987661B1 (en) 2018-07-19 2019-06-11 나무기술 주식회사 Cluster resource allocating and managing method on cloud platform

Also Published As

Publication number Publication date
KR20210058471A (en) 2021-05-24

Similar Documents

Publication Publication Date Title
US10255110B2 (en) Node selection for a new application in a multi-tenant cloud hosting environment
Wang et al. Research on virtual machine consolidation strategy based on combined prediction and energy-aware in cloud computing platform
CN110058966B (en) Method, apparatus and computer program product for data backup
Calcavecchia et al. VM placement strategies for cloud scenarios
KR101977726B1 (en) APPARATUS AND METHOD FOR Virtual Desktop Services
US8762525B2 (en) Managing risk in resource over-committed systems
US8909769B2 (en) Determining optimal component location in a networked computing environment
US10896059B2 (en) Dynamically allocating cache in a multi-tenant processing infrastructure
US9317325B2 (en) Application idling in a multi-tenant cloud-based application hosting environment
US10365953B2 (en) Tracking and utilizing facts about a node of a multi-tenant cloud hosting environment
KR20100138689A (en) Management server and method for providing cloud computing services
KR20110002809A (en) Evaluate execution allocation costs for computing systems and environments, including flexible computing systems and environments
US20130254374A1 (en) Resource allocation based on social networking trends in a networked computing environment
US20180026855A1 (en) Network management system, device, and method
KR20150062634A (en) Auto scaling system and method in cloud computing environment
CN103592997A (en) Method and system for automatic clock-gating of clock grid at clock source
US10067862B2 (en) Tracking asynchronous entry points for an application
Liu et al. A virtual machine migration strategy based on time series workload prediction using cloud model
KR20230059508A (en) Method for monitoring job scheduler, apparatus and system for executing the method
US10277503B2 (en) Cross-domain service request placement in a software defined environment (SDE)
US10680916B2 (en) Management of network elements in a cloud platform
KR101608859B1 (en) Cloud based intelligent power control system
Li et al. Research on energy‐saving virtual machine migration algorithm for green data center
KR102284264B1 (en) Cloud system and control method thereof
US20230088581A1 (en) Predicting microservices required for incoming requests

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20191114

PA0201 Request for examination
PN2301 Change of applicant

Patent event date: 20200819

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210113

Patent event code: PE09021S01D

PG1501 Laying open of application
E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20210720

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20210727

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20210727

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20240702

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20250624

Start annual number: 5

End annual number: 5