KR102316749B1 - Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same - Google Patents

Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same Download PDF

Info

Publication number
KR102316749B1
KR102316749B1 KR1020200078477A KR20200078477A KR102316749B1 KR 102316749 B1 KR102316749 B1 KR 102316749B1 KR 1020200078477 A KR1020200078477 A KR 1020200078477A KR 20200078477 A KR20200078477 A KR 20200078477A KR 102316749 B1 KR102316749 B1 KR 102316749B1
Authority
KR
South Korea
Prior art keywords
physical server
virtual machine
schedule
objective function
virtual
Prior art date
Application number
KR1020200078477A
Other languages
Korean (ko)
Other versions
KR20210015636A (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
Priority claimed from KR1020190092851A external-priority patent/KR102135208B1/en
Application filed by 오케스트로 주식회사 filed Critical 오케스트로 주식회사
Priority to KR1020200078477A priority Critical patent/KR102316749B1/en
Publication of KR20210015636A publication Critical patent/KR20210015636A/en
Application granted granted Critical
Publication of KR102316749B1 publication Critical patent/KR102316749B1/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/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/505Allocation 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 the load
    • 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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

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

본 발명의 일 실시예에 따른 가상 머신 배치 방법은, 가상 머신 배치 장치를 이용하여, 가상 머신이 설치된 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. -를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법에 있어서, 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계; 상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계; 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계; 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 배치 일정이 표시되는 단계; 및 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계;를 포함하고, 상기 미리 정해진 배치 일정 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법이며, 상기 미리 정해진 제1 기간 동안에 상기 물리 서버들 간의 상기 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법이고, 상기 목적 함수는, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수를 구비할 수 있다.A virtual machine placement method according to an embodiment of the present invention includes a physical server in which a virtual machine is installed using a virtual machine placement device, wherein the physical server includes a first physical server and a second physical server. In the virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate the calculating virtual machine workload information, which is information related to a virtual machine workload, which is a load of a physical server imposed by the virtual machine, by a predetermined workload calculation method based on operation-related information; calculating initial predicted virtual load information, which is information related to an initial predicted virtual load associated with a load of a physical server imposed by the virtual machine, predicted for a first predetermined period based on the virtual machine workload; calculating arrangement schedule information, which is information related to arrangement schedules of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculating method; displaying the arrangement schedule calculated by the predetermined arrangement schedule calculation method; and the virtual machines are arranged between the first physical server and the second so that the virtual machines are placed on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method. and disposing while moving on a physical server, wherein the method for calculating the predetermined arrangement schedule includes calculating the arrangement schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information. , wherein the arrangement schedule is calculated so that the movement of the virtual machine between the physical servers is permitted during the first predetermined period, wherein the objective function is, during the first predetermined period, the initial predicted virtual load. A first objective function, which is a function related to the amount of change in the load of the physical server calculated by

Description

가상 머신 워크로드 예측 방법, 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치{VIRTUAL MACHINE WORKLOAD PREDICTION METHOD, VIRTUAL MACHINE PLACEMENT METHOD AND VIRTUAL MACHINE PLACEMENT DEVICE IMPLEMENTING THE SAME}Virtual machine workload prediction method, virtual machine placement method, and virtual machine placement device implementing the same

본 발명은 가상 머신 워크로드 예측 방법, 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치에 관한 것으로서, 복수의 가상 머신이 각각 배치된 제1 물리 서버와 제2 물리 서버를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하기 위한 것이다.The present invention relates to a virtual machine workload prediction method, a virtual machine placement method, and a virtual machine placement apparatus implementing the same, in order to efficiently operate a first physical server and a second physical server on which a plurality of virtual machines are respectively placed, and disposing a plurality of the virtual machines on the first physical server and the second physical server.

전 세계 전력사용량의 약 2%를 차지하는 데이터센터는 단일 건물 중 전력을 가장 많이 사용하는 고밀도 에너지 다소비 건물이지만, 안정성을 최우선시하는 보수적인 운영을 고수하여 비효율적인 운영 현황을 보이고 있다. 향후 사물인터넷, 빅 데이터, 클라우드 기술 등의 확산으로 인해 소규모의 데이터센터는 대규모의 데이터센터인 '하이퍼스케일', '메가' 데이터센터로 통합될 것으로 전망되는바, 인프라 확대에 따른 데이터센터 운영관리의 복잡성 또한 심화될 것으로 전망된다. 이에 불필요한 서버는 유휴 혹은 절전모드로 전환하고, 가용되는 서버를 최대한 안정적으로 운영함으로써 데이터센터 운영의 효율성을 극대화하며, 전력소비량을 줄여 운영비용 절감에 기여하기 위하여, 데이터센터에 배치된 수많은 가상 머신들의 배치를 적절하게 하는 것이 매우 중요하다.Data centers, which account for about 2% of the world's electricity consumption, are high-density and energy-consuming buildings that use the most electricity among single buildings, but they are inefficiently operating by adhering to conservative operations that prioritize stability. In the future, due to the spread of the Internet of Things, Big Data, and cloud technologies, it is expected that small data centers will be integrated into large-scale 'hyper-scale' and 'mega' data centers. Data center operation and management according to infrastructure expansion complexity is also expected to increase. Unnecessary servers are switched to idle or power saving mode, and available servers are operated as stably as possible to maximize data center operation efficiency and reduce power consumption to reduce operating costs. Proper placement of them is very important.

물리적 자원(Physical Machine, PM, 물리 서버)들을 논리적 자원(Virtual Machine, VM, 가상 머신)들로 구성하는 가상화 환경에서는 구동 중인 가상 머신을 다른 물리 서버로 이동시킬 수 있는데, 이를 라이브 마이그레이션이라고 한다. 이는 효율적인 데이터센터를 관리하는데 필수적인 관리 방법이다. 다만, 마이그레이션 할 경우 데이터 손실 위험, 리소스의 많은 부분이 차지되는 등의 단점도 있다.In a virtualization environment in which physical resources (Physical Machine, PM, physical server) are composed of logical resources (Virtual Machine, VM, virtual machine), a running virtual machine can be moved to another physical server, which is called live migration. This is an essential management method for efficient data center management. However, there are also disadvantages such as risk of data loss and a large portion of resources occupied by migration.

여기서, 기존의 연구(일본특허공보 특허 제5827594, 2015. 10. 23, 등록)들은 특정 시점을 기준으로 임의의 물리 서버에 임계 값 이상의 부하가 걸릴 경우 마이그레이션을 하여, 부하가 걸린 물리 서버의 부하를 저감시키는 방법으로 물리 서버들 간의 균형을 맞추고 있다. 하지만, 이러한 방법은 특정 가상 머신이 마이그레이션된 서버가 과 부화될 가능성이 매우 높아지며, 이로 인해 재차 마이그레이션 과정이 실행되는 것과 같이, 많은 횟수의 마이그레이션이 실행되는 문제가 있다.Here, existing studies (Japanese Patent Publication No. 5827594, 2015. 10. 23, registered) have migrated when a load greater than a threshold value is applied to any physical server based on a specific point in time, and the load of the loaded physical server is performed. A way to reduce the number of physical servers is to balance the physical servers. However, this method has a problem in that the server to which a specific virtual machine is migrated is highly likely to be overloaded, and as a result, a large number of migrations are executed as the migration process is executed again.

본 발명의 해결하고자 하는 과제는 상기 문제점을 해결하기 위하여, 마이그레이션의 횟수를 적게 하여 데이터를 안정적으로 관리할 수 있는, 가상 머신 워크로드 예측 방법, 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치를 제공하고자 한다.The problem to be solved by the present invention is to provide a virtual machine workload prediction method, a virtual machine placement method, and a virtual machine placement apparatus implementing the same, which can manage data stably by reducing the number of migrations in order to solve the above problems would like to provide

다만, 본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the problems to be solved by the present invention are not limited to the above-mentioned problems, and the problems not mentioned can be clearly understood by those of ordinary skill in the art to which the present invention belongs from the present specification and accompanying drawings. There will be.

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

본 발명의 일 실시예에 따른 가상 머신 배치 방법은, 가상 머신 배치 장치를 이용하여, 가상 머신이 설치된 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. -를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법에 있어서, 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계; 상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계; 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계; 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 배치 일정이 표시되는 단계; 및 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계;를 포함하고, 상기 미리 정해진 배치 일정 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법이며, 상기 미리 정해진 제1 기간 동안에 상기 물리 서버들 간의 상기 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법이고, 상기 목적 함수는, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수를 구비할 수 있다.
또한, 상기 미리 정해진 배치 산출 방법은, 소정 횟수 내에서 상기 미리 정해진 제1 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법일 수 있다.
또한, 상기 미리 정해진 워크 로드 산출 방법은, 상기 제1 물리 서버와 상기 제2 물리 서버의 사양이 동일하다고 가정하여 산출하는 방법일 수 있다.
또한, 상기 미리 정해진 워크 로드 산출 방법은, CPU의 가동 정도만을 기초로 상기 가상 머신 워크 로드 정보가 산출되는 방법을 포함할 수 있다.
또한, 상기 목적 함수는, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 배치 일정에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수, 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 더 구비할 수 있다.
또한, 상기 배치 일정은, 상기 제1 목적 함수의 값이 최소인 상태를 기준으로, 상기 제2 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제1 배치 일정, 상기 제2 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제2 배치 일정, 상기 제3 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제3 배치 일정 및 상기 제4 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제3 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제4 배치 일정을 구비할 수 있다.
또한, 상기 가상 머신은, 상기 배치 일정들 중에서 선택된 하나의 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 배치될 수 있다.
본 발명의 일 실시예에 따른 가상 머신 배치 장치는, 가상 머신이 설치되는 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. - 를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법을 구현하는 가상 머신 배치 장치에 있어서, 처리부; 및 상기 가상 머신 배치 방법을 수행하는 프로그램이 저장된 저장부;를 포함하고, 상기 가상 머신 배치 방법은, 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계; 상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계; 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계; 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 배치 일정이 표시되는 단계; 및 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계;를 포함하고, 상기 미리 정해진 배치 일정 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법이며, 상기 미리 정해진 제1 기간 동안에 상기 물리 서버들 간의 상기 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법이고, 상기 목적 함수는, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수를 구비할 수 있다.
또한, 상기 미리 정해진 배치 산출 방법은, 소정 횟수 내에서 상기 미리 정해진 제1 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법일 수 있다.
또한, 상기 미리 정해진 워크 로드 산출 방법은, 상기 제1 물리 서버와 상기 제2 물리 서버의 사양이 동일하다고 가정하여 산출하는 방법일 수 있다.
또한, 상기 목적 함수는, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 배치 일정에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수, 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 더 구비할 수 있다.
A virtual machine placement method according to an embodiment of the present invention includes a physical server in which a virtual machine is installed using a virtual machine placement device, wherein the physical server includes a first physical server and a second physical server. In the virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate the calculating virtual machine workload information that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a predetermined workload calculation method based on operation-related information; calculating initial predicted virtual load information, which is information related to an initial predicted virtual load associated with a load of a physical server imposed by the virtual machine, predicted for a first predetermined period based on the virtual machine workload; calculating arrangement schedule information, which is information related to arrangement schedules of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculating method; displaying the arrangement schedule calculated by the predetermined arrangement schedule calculation method; and the virtual machines are arranged between the first physical server and the second so that the virtual machines are placed on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method. and disposing while moving on a physical server, wherein the method for calculating the predetermined arrangement schedule includes calculating the arrangement schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information. and wherein the arrangement schedule is calculated so that the movement of the virtual machine between the physical servers is allowed during the first predetermined period, wherein the objective function is, during the first predetermined period, the initial predicted virtual load. A first objective function, which is a function related to the amount of change in the load of the physical server calculated by
In addition, the predetermined arrangement calculation method may be a method in which the arrangement schedule is calculated so that movement of the virtual machine between physical servers is allowed within the predetermined number of times during the first predetermined period.
Also, the predetermined workload calculation method may be a calculation method assuming that the specifications of the first physical server and the second physical server are the same.
Also, the predetermined workload calculation method may include a method of calculating the virtual machine workload information based only on the operation degree of the CPU.
In addition, the objective function includes a second objective function that is a function related to a difference between loads of a physical server calculated by the initial predicted virtual load during the first predetermined period, and the virtual machine is deployed according to the deployment schedule. a third objective function, which is a function related to the number of times the virtual machines are batched and moved on the first physical server and the second physical server to become 2 It may further include a fourth objective function that is a function related to whether the physical server is operating.
Also, in the arrangement schedule, the first physical server in which the values of the second objective function, the third objective function, and the fourth objective function are minimized based on a state in which the value of the first objective function is the minimum. and a first arrangement schedule that is the arrangement of the virtual machine on the second physical server, a value of the first objective function, a value of the third objective function, and a fourth objective based on a state in which the value of the second objective function is a minimum Based on the second arrangement schedule, which is the arrangement of the virtual machines on the first physical server and the second physical server, in which the value of the function is minimized, and the state in which the value of the third objective function is minimum, value, a third deployment schedule that is the placement of the virtual machines on the first physical server and the second physical server at which the values of the second objective function and the fourth objective function are minimized, and the value of the fourth objective function is the minimum Based on a state, a fourth deployment schedule is the arrangement of the virtual machines on the first physical server and the second physical server in which the values of the first objective function, the second objective function, and the third objective function are minimized. can be provided.
Also, the virtual machine may be deployed on the first physical server and the second physical server according to one of the deployment schedules selected from among the deployment schedules.
A virtual machine arrangement apparatus according to an embodiment of the present invention includes a physical server in which a virtual machine is installed, wherein the physical server includes a first physical server and a second physical server. - A virtual machine arrangement apparatus for implementing a virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate: a processing unit; and a storage unit storing a program for performing the virtual machine arrangement method, wherein the virtual machine arrangement method calculates a predetermined workload based on information related to operations of the first physical server and the second physical server calculating virtual machine workload information that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by the method; calculating initial predicted virtual load information that is information related to an initial predicted virtual load associated with a load of a physical server imposed by the virtual machine predicted for a first predetermined period based on the virtual machine workload; calculating arrangement schedule information, which is information related to arrangement schedules of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculating method; displaying the arrangement schedule calculated by the predetermined arrangement schedule calculation method; and the virtual machines are arranged between the first physical server and the second so that the virtual machines are placed on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method. and disposing while moving on a physical server, wherein the method for calculating the predetermined arrangement schedule includes calculating the arrangement schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information. and wherein the arrangement schedule is calculated so that the movement of the virtual machine between the physical servers is allowed during the first predetermined period, wherein the objective function is, during the first predetermined period, the initial predicted virtual load. It may include a first objective function, which is a function related to the amount of change in the load of the physical server calculated by the
In addition, the predetermined arrangement calculation method may be a method in which the arrangement schedule is calculated so that movement of the virtual machine between physical servers is allowed within the predetermined number of times during the first predetermined period.
Also, the predetermined workload calculation method may be a calculation method on the assumption that the specifications of the first physical server and the second physical server are the same.
In addition, the objective function includes a second objective function that is a function related to a difference between loads of a physical server calculated by the initial predicted virtual load during the first predetermined period, and the virtual machine is deployed according to the deployment schedule. a third objective function, which is a function related to the number of times the virtual machines are batched and moved on the first physical server and the second physical server, to be a third objective function, whether the first physical server is operated during the predetermined first period, and the first 2 It may further include a fourth objective function, which is a function related to whether or not the physical server is operated.

본 발명에 따른 가상 머신 워크로드 예측 방법, 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치는 데이터 손실을 최소화할 수 있다.A virtual machine workload prediction method, a virtual machine placement method, and a virtual machine placement apparatus implementing the same according to the present invention can minimize data loss.

또한, 리소스의 소요를 최소화할 수 있다.In addition, resource consumption can be minimized.

또한, 데이터센터를 안정적으로 관리할 수 있다.In addition, the data center can be managed stably.

다만, 본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.However, the effects of the present invention are not limited to the above-described effects, and the effects not mentioned will be clearly understood by those of ordinary skill in the art to which the present invention belongs from the present specification and accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 가상 머신 배치 장치의 개념도 및 상기 가상 머신 배치 장치와 복수의 물리 서버와의 관계를 도시한 도면
도 2는 본 발명의 일 실시예에 따른 가상 머신 배치 방법의 순서도
도 3은 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 제1 목적 함수를 고려한 가상 머신 배치로서 달성되는 효과를 설명하기 위한 그래프
도 4는 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 제2 목적 함수를 고려한 가상 머신 배치로서 달성되는 효과를 설명하기 위한 그래프
도 5는 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 배치 일정 산출 단계를 설명하기 위한 도면
도 6은 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 예측 오류를 산출하는 방법을 설명하기 위한 그래프
1 is a conceptual diagram of a virtual machine arrangement apparatus according to an embodiment of the present invention and a diagram illustrating a relationship between the virtual machine arrangement apparatus and a plurality of physical servers;
2 is a flowchart of a virtual machine placement method according to an embodiment of the present invention;
3 is a graph for explaining an effect achieved as a virtual machine arrangement in consideration of a first objective function in a virtual machine arrangement method according to an embodiment of the present invention;
4 is a graph for explaining an effect achieved as a virtual machine arrangement in consideration of a second objective function in a virtual machine arrangement method according to an embodiment of the present invention;
5 is a diagram for explaining a step of calculating a batch schedule in a virtual machine arrangement method according to an embodiment of the present invention;
6 is a graph for explaining a method of calculating a prediction error in a virtual machine arrangement method according to an embodiment of the present invention;

이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상 범위 내에 포함된다고 할 것이다.Hereinafter, specific embodiments of the present invention will be described in detail with reference to the drawings. However, the spirit of the present invention is not limited to the embodiments presented, and those skilled in the art who understand the spirit of the present invention may add, change, delete, etc. other components within the scope of the same spirit, through addition, change, deletion, etc. Other embodiments included within the scope of the invention may be easily proposed, but this will also be included within the scope of the invention.

또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.In addition, components having the same function within the scope of the same idea shown in the drawings of each embodiment will be described using the same reference numerals.

본 명세서에서 본 발명에 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에 이에 관한 자세한 설명은 생략하기로 한다.In the present specification, when it is determined that a detailed description of a known configuration or function related to the present invention may obscure the gist of the present invention, a detailed description thereof will be omitted.

도 1은 본 발명의 일 실시예에 따른 가상 머신 배치 장치의 개념도 및 상기 가상 머신 배치 장치와 복수의 물리 서버와의 관계를 도시한 도면이다.1 is a conceptual diagram of a virtual machine arrangement apparatus and a diagram illustrating a relationship between the virtual machine arrangement apparatus and a plurality of physical servers according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 가상 머신 배치 장치(10)는 가상 머신을 배치하고 정렬하는데 필요한 정보(일례로, 데이터)를 처리하는 처리부(11), 가상 머신을 배치하고 정렬하는데 필요한 정보를 저장하는 저장부(12), 가상 머신을 배치하고 정렬하는데 필요한 정보를 수신하는 수신부(13) 및 가상 머신을 배치하고 정렬하는데 필요한 정보를 송신하는 송신부(14)를 구비할 수 있다.Referring to FIG. 1 , a virtual machine arrangement apparatus 10 according to an embodiment of the present invention arranges a processing unit 11 that processes information (eg, data) necessary for placing and arranging a virtual machine, a virtual machine, and It may include a storage unit 12 for storing information necessary for sorting, a receiving unit 13 for receiving information necessary for arranging and aligning virtual machines, and a transmitter 14 for transmitting information necessary for arranging and aligning virtual machines. have.

또한, 상기 가상 머신 배치 장치(10)는 외부로부터 입력되는 것들에 의해 발생되는 정보를 상기 수신부(13)로 전달하는 입력부(15) 및 후술하는 배치 일정을 표시하여 상기 배치 일정을 사용자에게 전달하는 매개체는 표시부(16)를 더 포함할 수 있다.In addition, the virtual machine arrangement device 10 displays an input unit 15 that transmits information generated by external input to the receiving unit 13 and an arrangement schedule to be described later to deliver the arrangement schedule to the user. The medium may further include a display unit 16 .

상기 처리부(11)는 상기 저장부에 저장되어 있는 정보를 기초로 상기 가상 머신 배치 방법이 구현되는데 필요한 모든 정보 처리와 같은 연산을 수행할 수 있다.The processing unit 11 may perform an operation such as processing all information necessary to implement the virtual machine arrangement method based on the information stored in the storage unit.

일례로, 상기 처리부(11)는 중앙처리장치(CPU)를 의미할 수 있다.For example, the processing unit 11 may mean a central processing unit (CPU).

다만, 이에 한정하지 않고 상기 처리부(11)는 상기 가상 머신 배치 방법이 구현되는데 필요한 연산을 수행할 수 있는 모든 장치 혹은 부품을 포함할 수 있다.However, the present invention is not limited thereto, and the processing unit 11 may include any device or component capable of performing an operation required to implement the virtual machine arrangement method.

상기 저장부(12)는 상기 가상 머신 배치 방법이 구현되는데 필요한 정보(데이터)가 저장되어 있을 수 있다.The storage unit 12 may store information (data) necessary for implementing the virtual machine arrangement method.

상기 저장부(12)에는 상기 가상 머신 배치 방법을 수행하는 프로그램이 저장되어 있을 수 있다.A program for performing the virtual machine arrangement method may be stored in the storage unit 12 .

일례로, 상기 저장부(12)는 보조기억장치로서 하드디스크일 수 있다.For example, the storage unit 12 may be a hard disk as an auxiliary storage device.

다만, 이에 한정하지 않고 상기 저장부(12)는 상기 가상 머신 배치 방법이 구현되는데 필요한 정보가 저장될 수 있는 모든 요소를 포함할 수 있다.However, the present invention is not limited thereto, and the storage unit 12 may include any element capable of storing information necessary for implementing the virtual machine arrangement method.

일례로, 상기 저장부(12)는 데이터베이스일 수 있다.For example, the storage unit 12 may be a database.

상기 수신부(13)는 물리 서버로부터 전달되는 정보를 수신할 수 있다.The receiving unit 13 may receive information transmitted from a physical server.

상기 수신부(13)는 상기 물리 서버의 작동과 관련된 정보를 대응되는 물리 서버로부터 전달받을 수 있다.The receiving unit 13 may receive information related to the operation of the physical server from a corresponding physical server.

상기 송신부(14)는 상기 물리 서버로 정보를 전달할 수 있다.The transmitter 14 may transmit information to the physical server.

상기 송신부(14)는 상기 처리부(11)가 산출한 제어 신호를 상기 물리 서버로 전달할 수 있다.The transmitter 14 may transmit the control signal calculated by the processor 11 to the physical server.

이로 인해 상기 가상 머신 배치 장치(10)는 하나의 물리 서버에 상에서 구동되는 가상 머신을 다른 물리 서버로 마이그레이션되도록, 각 각의 물리 서버에 제어 신호를 전달할 수 있다.For this reason, the virtual machine arrangement device 10 may transmit a control signal to each physical server so that a virtual machine driven on one physical server is migrated to another physical server.

일례로, 상기 입력부(15)는 키보드일 수 있다.For example, the input unit 15 may be a keyboard.

다만, 이에 한정하지 않고 상기 입력부(15)의 종류는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, without being limited thereto, the type of the input unit 15 may be variously modified at a level that is obvious to those skilled in the art.

일례로, 상기 표시부(16)는 디스플레이일 수 있다.For example, the display unit 16 may be a display.

다만, 이에 한정하지 않고 상기 표시부(16)의 종류는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, the present invention is not limited thereto, and the type of the display unit 16 may be variously modified at a level apparent to those skilled in the art.

상기 가상 머신 배치 장치(10) 내의 구성은 서로 유선 및/또는 무선으로 연결될 수 있다.The components in the virtual machine placement device 10 may be connected to each other by wire and/or wirelessly.

상기 가상 머신 배치 장치(10)는 각 각의 상기 물리 서버와 유선 및/또는 무선으로 연결될 수 있다.The virtual machine arrangement device 10 may be connected to each of the physical servers by wire and/or wirelessly.

물리 서버는 가상 머신이 실행될 수 있는 하드웨어 플랫폼을 의미할 수 있다.The physical server may refer to a hardware platform on which a virtual machine may be executed.

일례로, 상기 물리 서버는 통상적인 데스크톱, 서버 컴퓨터, 랩톱 컴퓨터 또는 휴대 전화 등과 같은 것일 수 있다.As an example, the physical server may be a typical desktop, server computer, laptop computer, or mobile phone or the like.

다만, 이에 한정하지 않고 상기 물리 서버는 가상 머신이 실행될 수 있는 모든 수단을 포함하는 개념일 수 있다.However, without being limited thereto, the physical server may be a concept including all means by which a virtual machine can be executed.

본 발명의 일 실시예에 따른 가상 머신 배치 장치(10)는 제1 물리 서버(20), 제2 물리 서버(30) 및 제3 물리 서버(40)를 통제하고 관리하는 것을 기준으로 설명하나, 이에 본 발명이 한정되는 것은 아니고, 상기 가상 머신 배치 장치(10)가 관리 및 통제하는 물리 서버의 개수는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.The virtual machine arrangement device 10 according to an embodiment of the present invention is described based on controlling and managing the first physical server 20, the second physical server 30, and the third physical server 40, The present invention is not limited thereto, and the number of physical servers managed and controlled by the virtual machine arrangement device 10 may be variously modified at a level apparent to those skilled in the art.

도 1에 도시된 것에 따르면, 물리 서버는 제1 물리 서버(20), 제2 물리 서버(30) 및 제3 물리 서버(40)로 이루어지며, 상기 제1 물리 서버(20) 상에서는 제a 가상 머신(21), 제b 가상 머신(22) 및 제c 가상 머신(23)이 구동되고 있을 수 있으며, 상기 제2 물리 서버(30) 상에는 제d 가상 머신(31) 및 제e 가상 머신(32)이 구동되고 있을 수 있으며, 상기 제3 물리 서버(40) 상에는 제f 가상 머신(41) 및 제g 가상 머신(42)이 구동되고 있을 수 있다.1 , the physical server includes a first physical server 20 , a second physical server 30 , and a third physical server 40 , and on the first physical server 20 , the a-th virtual The machine 21 , the b th virtual machine 22 , and the c th virtual machine 23 may be running, and on the second physical server 30 , the d th virtual machine 31 and the e th virtual machine 32 . ) may be being driven, and the f th virtual machine 41 and the g th virtual machine 42 may be driven on the third physical server 40 .

이하, 가상 머신 배치 장치(10)를 이용하여 구현되는 가상 머신 배치 방법에 대해서 자세하게 서술하도록 한다.Hereinafter, a virtual machine arrangement method implemented using the virtual machine arrangement apparatus 10 will be described in detail.

도 2는 본 발명의 일 실시예에 따른 가상 머신 배치 방법의 순서도이다.2 is a flowchart of a virtual machine placement method according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 가상 머신 배치 방법은, 가상 머신이 설치된 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. -를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법에 있어서, 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계(S10), 상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계(S20), 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계(S30) 및 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계(S50)를 포함할 수 있다.Referring to FIG. 2 , in a virtual machine arrangement method according to an embodiment of the present invention, a physical server in which a virtual machine is installed, wherein the physical server includes a first physical server and a second physical server. In the virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate the A step of calculating virtual machine workload information that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a predetermined workload calculation method based on operation-related information (S10), the virtual Calculating the initial predicted virtual load information, which is information related to the first predicted virtual load associated with the load of the physical server imposed by the virtual machine, predicted for a first predetermined period based on the machine workload (S20), a predetermined A step (S30) of calculating the arrangement schedule information, which is information related to the arrangement schedules of the virtual machines on the first physical server and the second physical server, by the arrangement schedule calculation method and the predetermined arrangement schedule calculation method A step of disposing the virtual machine while moving on the first physical server and the second physical server so that the virtual machine is placed on the first physical server and the second physical server according to the arrangement schedule (S50) may include

또한, 상기 가상 머신 배치 방법은 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 복수의 배치 일정이 상기 표시부에 의해 표시되는 단계(S40)를 더 포함할 수 있다.In addition, the virtual machine arrangement method may further include displaying a plurality of arrangement schedules calculated by the predetermined arrangement schedule calculation method by the display unit ( S40 ).

또한, 상기 가상 머신 배치 방법은 상기 표시부에 의해 표시된 상기 배치 일정 중에서 하나의 배치 일정인 선택된 배치 일정이 상기 입력부에 의해 입력되어, 선택된 배치 일정과 관련된 정보가 상기 처리부로 전달되는 단계(S50)를 더 포함할 수 있다.In addition, in the virtual machine arrangement method, a selected arrangement schedule, which is one arrangement schedule among the arrangement schedules displayed by the display unit, is input by the input unit, and information related to the selected arrangement schedule is transmitted to the processing unit (S50). may include more.

또한, 상기 가상 머신 배치 방법은 선택된 상기 배치 일정에 따라 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버에 배치되는 경우, 예측되는 물리 서버의 부하와 연관된 선택 예측 가상 로드와 관련된 정보인 선택 예측 가상 로드 정보와 가상 머신의 실제 워크 로드와 관련된 정보인 실제 가상 워크 로드 정보를 기초로 미리 정해진 점검 방법에 따라 상기 선택 예측 가상 로드 정보가 정상적으로 산출되었는지 여부를 판단하는 단계(S70)를 더 포함할 수 있다.In addition, the virtual machine arrangement method is information related to a selection prediction virtual load associated with a load of a predicted physical server when the virtual machine is placed on the first physical server and the second physical server according to the selected placement schedule. A step (S70) of determining whether the selective prediction virtual load information is normally calculated according to a predetermined inspection method based on the selection prediction virtual load information and the actual virtual workload information that is information related to the actual workload of the virtual machine (S70) may include

상기 저장부에는 상기 제1 물리 서버의 작동 관련된 정보, 상기 제2 물리 서버의 작동과 관련된 정보 및 상기 제3 물리 서버의 작동과 관련된 정보가 저장되어 있을 수 있다.The storage unit may store information related to the operation of the first physical server, information related to the operation of the second physical server, and information related to the operation of the third physical server.

일례로, 상기 제1 물리 서버, 상기 제2 물리 서버 및 상기 제3 물리 서버의 작동과 관련된 정보는 시계열적으로 상기 저장부에 저장되어 있을 수 있다.For example, information related to operations of the first physical server, the second physical server, and the third physical server may be stored in the storage unit in time series.

이를 위해 상기 제1 물리 서버, 상기 제2 물리 서버 및 상기 제3 물리 서버로부터 각 각의 작동과 관련된 정보를 상기 수신부가 전달받을 수 있다.To this end, the receiver may receive information related to each operation from the first physical server, the second physical server, and the third physical server.

일례로, 작동과 관련된 정보는 물리 서버의 구성들의 가동률과 관련된 정보 일 수도 있다.For example, the information related to the operation may be information related to the utilization rate of the components of the physical server.

상기 처리부는 상기 저장부에 저장된 각 각의 물리 서버들의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보를 산출(S10)할 수 있다.The processing unit is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a predetermined workload calculation method based on the information related to the operation of each physical server stored in the storage unit. Machine workload information may be calculated (S10).

가상 머신 워크 로드는 가상 머신이 물리 서버 상에서 구동되는 경우, 해당 물리 서버의 리소스의 부하를 의미할 수 있다.When the virtual machine is driven on a physical server, the virtual machine workload may mean a load of resources of the corresponding physical server.

상기 가상 머신 워크 로드는 상기 가상 머신이 상기 물리 서버 상에서 구동되는 경우 상기 물리 서버에 인가되는 부하를 의미할 수 있다.The virtual machine workload may mean a load applied to the physical server when the virtual machine is driven on the physical server.

일례로, 상기 가상 머신 워크 로드는 상기 가상 머신이 상기 물리 서버에서 동작되는 것에 의해 상기 물리 서버의 중앙처리장치(CPU)에 부과되는 부하로서 산출될 수 있다.For example, the virtual machine workload may be calculated as a load imposed on a central processing unit (CPU) of the physical server by the virtual machine being operated in the physical server.

따라서, 상기 미리 정해진 워크 로드 산출 방법은 물리 서버의 중앙처리장치에 부과되는 부하로서 상기 가상 머신 워크 로드를 산출하는 방법을 포함할 수 있다.Accordingly, the predetermined workload calculation method may include a method of calculating the virtual machine workload as a load imposed on a central processing unit of a physical server.

다시 말해서, 상기 미리 정해진 워크 로드 산출 방법은 CPU의 가동 정도만을 기초로 상기 가상 머신 워크 로드 정보가 산출될 수 있다.In other words, in the predetermined workload calculation method, the virtual machine workload information may be calculated based on only the operation degree of the CPU.

상기 미리 정해진 워크 로드 산출 방법 상에서는 하나의 가상 머신은 하나의 물리 서버 상에서만 실행될 수 있다고 가정할 수 있다.In the predetermined workload calculation method, it may be assumed that one virtual machine can be executed only on one physical server.

일례로, 이는 하나의 가상 머신은 두 개의 물리 서버 상에서 구현될 수 없다는 것을 의미할 수 있다.As an example, this may mean that one virtual machine cannot be implemented on two physical servers.

물리 서버의 워크 로드라는 것의 의미는 상기 물리 서버에 부과되는 부하를 의미할 수 있다.A workload of the physical server may mean a load imposed on the physical server.

일례로, 상기 물리 서버의 워크 로드는 상기 물리 서버의 중앙처리장치(CPU)에 부과되는 부하로서 산출될 수 있다.For example, the workload of the physical server may be calculated as a load imposed on a central processing unit (CPU) of the physical server.

일례로, 물리 서버의 워크 로드는 물리 서버에 배치되는 가상 머신들의 부하(워크 로드)인 가상 머신 워크 로드들의 합에 의해 산출될 수 있다.For example, the workload of the physical server may be calculated by the sum of virtual machine workloads that are loads (workloads) of virtual machines disposed on the physical server.

이는, 후술하는 예측하는데 필요한 기초 데이터를 단순화 함으로써, 후술하는 단계에서 예측의 정확도를 더욱 상승시킬 수 있다.This simplifies the basic data required for prediction, which will be described later, thereby further increasing the accuracy of prediction in a step described later.

상기 처리부는 상기 가상 머신 워크 로드 정보를 기초로 기준 시점에서부터 미래의 기간인 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보를 산출(S20)할 수 있다.The processing unit is information related to an initial prediction virtual load associated with the load of the physical server imposed by the virtual machine that is predicted for a first predetermined period that is a future period from a reference point on the basis of the virtual machine workload information. Virtual load information may be calculated ( S20 ).

일례로, 기준 시점은 가상 머신 워크 로드 정보 산출 시점일 수 있다.As an example, the reference time may be a virtual machine workload information calculation time.

다만, 이에 한정하지 않고 상기 기준 시점은 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, without being limited thereto, the reference time point may be variously modified at a level obvious to those skilled in the art.

상기 최초 예측 가상 로드가 산출되기 위해서, 상기 미리 정해진 제1 기간 동안에 각 각의 상기 가상 머신들의 워크 로드인 가상 머신 워크 로드 정보가 예측될 수 있다.In order to calculate the initial predicted virtual load, virtual machine workload information that is a workload of each of the virtual machines during the first predetermined period may be predicted.

미리 정해진 제1 기간 동안의 가상 머신의 워크 로드를 예측하여, 이를 기준으로 가상 머신들을 재 배치 하는 이유로는, 특정 시점의 과부화를 기초로 마이그레이션을 할 경우, 마이그레이션의 횟수 증가 및 전반적인 물리 서버의 안정화를 구현할 수 없기 때문이다.The reason for predicting the workload of the virtual machine for the first predetermined period and re-arranging the virtual machines based on this is, when migrating based on overload at a specific point in time, the number of migrations increases and the overall physical server stabilization because it cannot be implemented.

따라서, 미래의 특정 시점이 아닌 특정 기간을 기초로 가상 머신을 물리 서버 상에 배치하여, 상술한 문제점을 효과적으로 해결할 수 있다.Accordingly, by disposing the virtual machine on the physical server based on a specific period rather than a specific point in the future, the above-described problem can be effectively solved.

일례로, 미리 정해진 제1 기간은 3 개월일 수 있다.As an example, the first predetermined period may be three months.

다만, 이에 본 발명이 한정되는 것은 아니고 상기 미리 정해진 제1 기간은 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, the present invention is not limited thereto, and the predetermined first period may be variously modified at a level obvious to those skilled in the art.

일례로, 상기 처리부는 상기 저장부에 저장된 상기 가상 머신 워크 로드 정보를 기초로 다중회귀모형, ARIMA 분석 또는 Deep Learning과 같은 알고리즘을 활용하여 상기 미리 정해진 제1 기간 동안의 가상 머신 워크 로드 정보를 산출할 수 있다.For example, the processing unit calculates virtual machine workload information for the first predetermined period by using an algorithm such as multiple regression model, ARIMA analysis, or deep learning based on the virtual machine workload information stored in the storage unit. can do.

상기 처리부는 산출된 상기 미리 정해진 제1 기간 동안의 가상 머신 워크 로드 정보를 기초로 상기 미리 정해진 제1 기간 동안의 예측되는 물리 서버의 워크 로드를 산출할 수 있다. The processing unit may calculate the predicted workload of the physical server for the first predetermined period based on the calculated virtual machine workload information for the first predetermined period.

이는, 통상의 기술자에게 자명한 기술로서 이에 대한 자세한 설명은 생략될 수 있다.This is a technique that is obvious to those of ordinary skill in the art, and a detailed description thereof may be omitted.

일례로, 최초 예측 가상 로드란 상기 가상 머신 워크 로드 정보 산출 시점에서부터 미리 정해진 제1 기간 동안 또는 임의의 시점에서부터 미리 정해진 제1 기간 동안 예측되는 가상 머신의 워크 로드를 의미할 수 있다.For example, the initial predicted virtual load may mean a workload of the virtual machine predicted for a first predetermined period from the time of calculating the virtual machine workload information or for a first predetermined period from an arbitrary time.

상기 처리부는 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 배치 일정과 관련된 정보인 배치 일정 정보를 산출(S30)할 수 있다.The processing unit may calculate ( S30 ) the arrangement schedule information, which is information related to the arrangement schedule, which is the arrangement of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculation method.

여기서, 상기 미리 정해진 배치 일정 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법을 의미할 수 있다.Here, the predetermined arrangement schedule calculation method may refer to a method of calculating the arrangement schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information.

상기 미리 정해진 배치 일정 산출 방법은 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과되도록, 상기 가상 머신의 배치 일정이 산출되는 방법을 포함할 수 있다. (제1 조건)The method of calculating the predetermined arrangement schedule may include a method of calculating the arrangement schedule of the virtual machine so that a load of the physical server is imposed on an arbitrary physical server only within a predetermined range. (1st condition)

일례로, 상기 미리 정해진 범위는 물리 서버의 가동률(부하가 부과되는 정도)이 10% ~ 80%일 수 있다.For example, in the predetermined range, the operation rate (the degree to which a load is imposed) of the physical server may be 10% to 80%.

다만, 이에 한정하지 않고 상기 미리 정해진 범위는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, without being limited thereto, the predetermined range may be variously modified at a level apparent to those skilled in the art.

상기 미리 정해진 배치 산출 방법은 상기 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과될 수 있도록, 상기 임의의 물리 서버의 부하가 제1 기준(X10, 도 3 및 도 4 참조) 이상 될 것으로 예측될 경우에는, 상기 임의의 물리 서버에 배치된 상기 가상 머신들 중 적어도 하나의 상기 가상 머신을 다른 물리 서버로 이동시키는 방법을 포함할 수 있다. (제1-1 조건)In the predetermined arrangement calculation method, the load of the arbitrary physical server is set according to a first criterion (X10, see FIGS. 3 and 4) so that the load of the physical server can be imposed on the arbitrary physical server only within a predetermined range. ) is predicted to be abnormal, the method may include a method of moving at least one virtual machine among the virtual machines disposed in the arbitrary physical server to another physical server. (Condition 1-1)

일례로, 상기 제1 기준(X10, 도 3 및 도 4 참조)은 상기 물리 서버의 가동률(부하가 부과되는 정도)이 80 %인 것을 의미할 수 있다.For example, the first criterion (X10, see FIGS. 3 and 4 ) may mean that an operation rate (a degree to which a load is imposed) of the physical server is 80%.

상기 처리부는 상기 물리 서버의 부하가 제1 기준이 넘지 않도록 하는 해결 방법으로, 대상 물리 서버의 워크 로드가 제1 기준이 넘을 것으로 예측되는 시점을 기준으로, 상기 대상 물리 서버에 배치되는 적어도 하나의 가상 머신을 다른 물리 서버로 이전 하는 방법을 이용하여 상기 배치 일정을 산출할 수 있다. The processing unit is a method for preventing the load of the physical server from exceeding a first criterion, and based on a point in time when the workload of the target physical server is predicted to exceed the first criterion, at least one The deployment schedule may be calculated using a method of moving a virtual machine to another physical server.

이로 인해, 상기 물리 서버의 워크 로드(가동률)가 제1 기준을 넘어 과잉 부하가 인가되는 것을 효과적으로 예방할 수 있다.For this reason, it is possible to effectively prevent the workload (operability rate) of the physical server from being excessively applied beyond the first criterion.

다만, 이에 한정하지 않고 상기 제1 기준은 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, the present invention is not limited thereto, and the first standard may be variously modified at a level obvious to those skilled in the art.

또한, 상기 미리 정해진 배치 산출 방법은 상기 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과될 수 있도록, 상기 임의의 물리 서버의 부하가 제2 기준(X20, 도 3 및 도 4 참조) 이하 될 것으로 예측될 경우에는, 상기 임의의 물리 서버에 배치된 상기 가상 머신들 모두를 다른 물리 서버로 이동시키는 방법을 포함할 수 있다. (제1-2 조건)In addition, in the predetermined arrangement calculation method, the load of the arbitrary physical server is set according to the second criterion (X20, FIGS. 3 and 3 and FIG. 4) and below, the method may include a method of moving all of the virtual machines disposed in the arbitrary physical server to another physical server. (Condition 1-2)

일례로, 상기 제2 기준(X20, 도 3 및 도 4 참조)은 상기 물리 서버의 가동률(부하가 부과되는 정도)이 10 %인 것을 의미할 수 있다.For example, the second criterion (X20, refer to FIGS. 3 and 4 ) may mean that an operation rate (a degree to which a load is imposed) of the physical server is 10%.

상기 처리부는 상기 물리 서버 부하가 제2 기준 이하로 되지 않도록 하는 해결 방법으로, 대상 물리 서버의 워크 로드가 제2 기준 이하로 떨어질 것으로 예측되는 시점을 기준으로, 상기 대상 물리 서버에 배치되는 모든 가상 머신들을 다른 물리 서버로 이전하는 방법을 이용하여 상기 배치 일정을 산출할 수 있다.The processing unit is a solution to prevent the load of the physical server from being less than or equal to the second reference, and based on a point in time when the workload of the target physical server is predicted to fall below the second reference, all virtual machines placed on the target physical server A method of moving machines to another physical server can be used to calculate the deployment schedule.

이는, 물리 서버가 가동되지 않는 조건의 개시 조건을 의미할 수 있다.This may mean an initiation condition of a condition in which the physical server is not operated.

다시 말하면, 상기 처리부는 상기 물리 서버 부하가 제2 기준 이하로 되지 않도록 하는 해결 방법으로, 대상 물리 서버에 배치된 가상 머신을 다른 물리 서버로 배치하여, 대상 물리 서버의 동작을 정지시킬 수 있다.In other words, the processing unit may stop the operation of the target physical server by disposing a virtual machine disposed in the target physical server to another physical server as a solution to prevent the load of the physical server from being lower than the second reference.

상기 미리 정해진 배치 산출 방법은 가동되지 않는 상기 물리 서버가 가동되도록 하는 상기 가상 머신의 이동으로 인해 가동 중인 상기 물리 서버가 가동되지 않는 상태로 변화되지 않도록, 상기 배치 일정 정보가 산출되는 방법을 포함할 수 있다. (제2 조건)The predetermined arrangement calculation method may include a method in which the arrangement schedule information is calculated so that the physical server in operation does not change to a non-operational state due to movement of the virtual machine that causes the inactive physical server to operate. can (Second condition)

하나의 물리 서버를 중단 시키는 것과 동시에 다른 물리 서버의 동작을 개시하게 되면, 물리 서버를 중단 시키는 것에 대한 이익이 없으며, 서버를 가동하는데 발생되는 전력 및 시간이 더 소요되기 문제가 발생된다.When stopping one physical server and starting the operation of another physical server at the same time, there is no benefit to stopping the physical server, and there is a problem in that more power and time are required to start the server.

따라서, 제2 조건을 통해, 이와 같은 문제를 해결하고자 하는 것일 수 있다.Accordingly, through the second condition, such a problem may be solved.

이에 대한 자세한 설명은 후술한다.A detailed description thereof will be given later.

또한, 상기 미리 정해진 배치 산출 방법으로 배치 일정을 산출하는 경우, 상기 미리 정해진 제1 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 배치 일정이 산출될 수 있다. (제3 조건)In addition, when the batch schedule is calculated using the predetermined arrangement calculation method, the arrangement schedule may be calculated so that movement of the virtual machine between the physical servers is allowed during the first predetermined period. (3rd condition)

다만, 가상 머신의 이동이 잦을 경우 데이터 손실이 유발될 수 있기 때문에, 상기 미리 정해진 제1 기간 동안의 하나의 가상 머신의 이동을 소정 횟수로 제한할 수 있다. (제4 조건)However, since data loss may be induced when the virtual machine is moved frequently, the movement of one virtual machine during the first predetermined period may be limited to a predetermined number of times. (4th condition)

일례로, 소정 횟수는 2회일 수 있다.For example, the predetermined number of times may be two times.

다만, 이에 한정하지 않고 상기 소정 횟수는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.However, without being limited thereto, the predetermined number of times may be variously modified at a level obvious to those skilled in the art.

또한, 상기 미리 정해진 배치 산출 방법으로 배치 일정을 산출하는 경우, 각 각의 물리 서버의 사양이 동일(homogenous 조건)하다고 가정하여 배치 일정을 산출할 수 있다. (제5 조건)In addition, when the batch schedule is calculated using the predetermined batch calculation method, it is possible to calculate the batch schedule assuming that the specifications of each physical server are the same (homogenous condition). (5th condition)

상기 목적 함수는 제1 목적 함수, 제2 목적 함수, 제 3 목적 함수 및 제4 목적 함수를 구비할 수 있다. The objective function may include a first objective function, a second objective function, a third objective function, and a fourth objective function.

상기 처리부는 각 각의 목적 함수 값들이 최소 값을 갖는 비 지배해 4 개를 산출할 수 있다.The processing unit may calculate four non-dominant values of each objective function having a minimum value.

따라서, 상기 미리 정해진 배치 일정 산출 방법에 의하면, 4 개의 배치 일정이 산출될 수 있다.Accordingly, according to the predetermined arrangement schedule calculation method, four arrangement schedules can be calculated.

이하, 상기 미리 정해진 배치 일정 산출 방법에 대해서 자세하게 서술하도록 한다.Hereinafter, the method for calculating the predetermined batch schedule will be described in detail.

도 3은 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 제1 목적 함수를 고려한 가상 머신 배치로서 달성되는 효과를 설명하기 위한 그래프이다.3 is a graph for explaining an effect achieved as a virtual machine arrangement in consideration of a first objective function in a virtual machine arrangement method according to an embodiment of the present invention.

도 3을 참조하면, 상기 목적 함수는 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하(워크 로드)의 변화 량과 관련된 함수인 제1 목적 함수를 구비할 수 있다.Referring to FIG. 3 , the objective function may include a first objective function that is a function related to the amount of change in the load (workload) of the physical server calculated by the first predicted virtual load during the first predetermined period. have.

일례로, 도 3(a)는 제1 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.For example, FIG. 3A is a graph illustrating workloads of the first to third physical servers when virtual machines are disposed in first to third physical servers according to a first schedule.

또한, 도 3(b)는 제2 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.Also, FIG. 3B is a graph illustrating workloads of the first to third physical servers when virtual machines are disposed in the first to third physical servers according to the second schedule.

각 각의 물리 서버의 워크 로드는 각 물리 서버에 설치된 가상 머신 워크 로드들의 합으로 산출될 수 있음을 상술된 내용에서 확인할 수 있다.It can be seen from the above description that the workload of each physical server can be calculated as the sum of the virtual machine workloads installed in each physical server.

도 3(a)를 참조하면, 가상 머신들이 제1 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준 미만(X10) 및 제2 기준 초과(X20)가 될 수 있다.Referring to FIG. 3A , when virtual machines are disposed on a physical server according to a first schedule, the workload of all physical servers may be less than the first criterion (X10) and greater than the second criterion (X20). have.

또한, 도 3(b)를 참조하면, 가상 머신들이 제2 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준 미만(X10) 및 제2 기준 초과(X20)가 될 수 있다.In addition, referring to FIG. 3( b ), when virtual machines are disposed on a physical server according to the second schedule, the workload of all physical servers is less than the first criterion (X10) and the second criterion is exceeded (X20). can be

다만, 제2 일정을 기초로 하여 가상 머신들이 물리 서버에 배치되는 경우, 제1 일정을 기초로 가상 머신들이 물리 서버에 배치되는 경우보다, 각 각의 물리 서버의 워크 로드의 변화량(기울기)가 더 작을 수 있다.However, when the virtual machines are arranged on the physical server based on the second schedule, the amount of change (slope) of the workload of each physical server is higher than when the virtual machines are arranged on the physical server based on the first schedule. can be smaller

이는, 물리 서버 상의 가상 머신의 배치 일정으로서 제1 일정보다 제2 일정이 더 바람직한 일정일 수 있다.This may be a schedule in which the second schedule is more preferable than the first schedule as the deployment schedule of the virtual machine on the physical server.

또한, 상기 제2 일정이 도출되도록 하는 제1 목적 함수의 값이 상기 제1 일정이 도출되도록 하는 제1 목적 함수의 값 보다 더 작을 수 있다.In addition, a value of the first objective function from which the second schedule is derived may be smaller than a value of the first objective function from which the first schedule is derived.

만일 물리 서버의 워크 로드의 변화율이 크다면, 짧은 시간 동안만 물리 서버의 워크 로드가 임의의 기준이 넘어, 가상 머신의 마이그레이션(이전)이 이루어질 수 있다.If the change rate of the workload of the physical server is large, the workload of the physical server exceeds an arbitrary criterion only for a short period of time, and migration (transfer) of the virtual machine can be made.

이럴 경우, 앞서 상술한 가상 머신의 잦은 마이그레이션이 발생될 수 있으므로, 가상 머신의 데이터 손실의 위험성이 더욱 높아질 수 있다.In this case, since the above-described frequent migration of the virtual machine may occur, the risk of data loss of the virtual machine may further increase.

제1 목적 함수는 이를 예방하기 위한 함수일 수 있다.The first objective function may be a function for preventing this.

도 4는 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 제2 목적 함수를 고려한 가상 머신 배치로서 달성되는 효과를 설명하기 위한 그래프이다.4 is a graph for explaining an effect achieved as a virtual machine arrangement in consideration of a second objective function in a virtual machine arrangement method according to an embodiment of the present invention.

도 4를 참조하면, 상기 목적 함수는 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하(워크 로드)들 간의 차이와 관련된 함수인 제2 목적 함수를 구비할 수 있다.Referring to FIG. 4 , the objective function may include a second objective function that is a function related to a difference between loads (workloads) of a physical server calculated by the initial predicted virtual load during the first predetermined period. have.

일례로, 도 4(a)는 제3 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.For example, FIG. 4A is a graph illustrating workloads of the first to third physical servers when virtual machines are disposed on the first to third physical servers according to a third schedule.

또한, 도 4(b)는 제4 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.Also, FIG. 4B is a graph illustrating workloads of the first to third physical servers when virtual machines are disposed in the first to third physical servers according to the fourth schedule.

각 각의 물리 서버의 워크 로드는 각 물리 서버에 설치된 가상 머신 워크 로드들의 합으로 산출될 수 있음을 상술된 내용에서 확인할 수 있다.It can be seen from the above description that the workload of each physical server can be calculated as the sum of the virtual machine workloads installed in each physical server.

도 4(a)를 참조하면, 가상 머신들이 제3 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준(X10) 미만 및 제2 기준(X20) 초과가 될 수 있다.Referring to FIG. 4(a) , when virtual machines are placed on a physical server according to the third schedule, the workload of all physical servers may be less than the first criterion (X10) and greater than the second criterion (X20). have.

또한, 도 4(b)를 참조하면, 가상 머신들이 제4 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준(X10) 미만 및 제2 기준(X20) 초과가 될 수 있다.In addition, referring to FIG. 4( b ), when virtual machines are disposed on a physical server according to the fourth schedule, the workload of all physical servers is less than the first criterion (X10) and the second criterion (X20) is greater than can be

다만, 제4 일정을 기초로 하여 가상 머신들이 물리 서버에 배치되는 경우, 제3 일정을 기초로 가상 머신들이 물리 서버에 배치되는 경우보다, 각 각의 물리 서버의 워크 로드들 간의 차이가 더 작을 수 있다.However, when the virtual machines are arranged on the physical server based on the fourth schedule, the difference between the workloads of each physical server is smaller than when the virtual machines are arranged on the physical server based on the third schedule. can

이는, 물리 서버 상의 가상 머신의 배치 일정으로서 제3 일정보다 제4 일정이 더 바람직한 일정일 수 있다.This may be a schedule in which the fourth schedule is more preferable than the third schedule as the deployment schedule of the virtual machine on the physical server.

또한, 상기 제4 일정이 도출되도록 하는 제2 목적 함수의 값이 상기 제3 일정이 도출되도록 하는 제2 목적 함수의 값 보다 더 작을 수 있다.Also, the value of the second objective function for deriving the fourth schedule may be smaller than the value of the second objective function for deriving the third schedule.

여기서, 물리 서버들 간의 워크 로드를 비교하기 위해서, 상기 미리 정해진 제1 기간 동안의 물리 서버의 워크 로드의 평균 값을 활용하여 물리 서버들이 서로 비교될 수 있다.Here, in order to compare the workloads between the physical servers, the physical servers may be compared with each other by using an average value of the workloads of the physical servers during the first predetermined period.

제2 목적 함수의 의미는 물리 서버를 고르게 활용하고자 함일 수 있다.The meaning of the second objective function may be to evenly utilize the physical server.

상기 목적 함수는 상기 가상 머신이 상기 배치 일정에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수를 구비할 수 있다.The objective function may include a third objective function, which is a function related to the number of times the virtual machine is placed and moved on the first physical server and the second physical server so that the virtual machine is placed according to the placement schedule.

다시 말하면, 상기 제3 목적 함수는 현재의 가상 머신들의 배치에서 배치 일정을 따라 배치되기 위하여 물리 서버들 사이에서 가상 머신의 이동 횟수와 관련될 수 있다.In other words, the third objective function may be related to the number of times the virtual machine moves between physical servers to be deployed according to a deployment schedule in the current deployment of virtual machines.

상기 제3 목적 함수의 의미는, 상기 가상 머신의 이동 횟수를 최소하는 배치를 찾고자 함일 수 있다.The meaning of the third objective function may be to find an arrangement that minimizes the number of movements of the virtual machine.

가상 머신이 마이그레이션 될 때 마다 데이터 손실의 위험성을 항상 내포하고 있다.Whenever a virtual machine is migrated, there is always a risk of data loss.

제3 목적 함수의 의미는 데이터 손실 가능성을 최소화하는데 있을 수 있다.The meaning of the third objective function may be to minimize the possibility of data loss.

상기 목적 함수는 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 구비할 수 있다.The objective function may include a fourth objective function that is a function related to whether the first physical server is operated and whether the second physical server is operated during the first predetermined period.

다시 말하면, 상기 제4 목적 함수는 상기 미리 정해진 제1 기간 동안 물리 서버의 가동 여부와 관련된 함수일 수 있다.In other words, the fourth objective function may be a function related to whether the physical server is operated during the first predetermined period.

제4 목적 함수가 작을수록 가동되지 않는 물리 서버의 개수 및 물리 서버의 가동되지 않는 시간이 최대로 될 수 있다.As the fourth objective function is smaller, the number of physical servers that are not in operation and the time the physical servers are not in operation can be maximized.

상기 제4 목적 함수가 최소일 경우, 모든 물리 서버에 대해서 물리 서버 한대 당 가동되지 않는 시간들의 총합이 최대로 될 수 있다.When the fourth objective function is the minimum, the sum of idle times per one physical server for all physical servers may be maximized.

제4 목적 함수의 의미는 서버 가동 시간을 최소화 하여 물리 서버 가동에 따란 전력 손실을 최소화 하는데 의미가 있을 수 있다.The meaning of the fourth objective function may be meaningful in minimizing the power loss caused by the operation of the physical server by minimizing the server operation time.

배치 일정은 제1 조건 내지 제5 조건이 만족되는 상태에서 각각의 목적 함수가 최소화될 수 있도록, 물리 서버들 상에서 가상 머신들이 어떻게 배치되는지에 대한 일정을 의미할 수 있다.The arrangement schedule may mean a schedule for how virtual machines are arranged on physical servers so that each objective function can be minimized in a state where the first to fifth conditions are satisfied.

상기 목적 함수는 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수, 상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 탐색 배치로 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수 및 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 구비할 수 있다.The objective function includes a first objective function that is a function related to an amount of change in a load of a physical server calculated by the initial predicted virtual load during the first predetermined period, and during the first predetermined period, the first predicted virtual load A second objective function, which is a function related to a difference between loads of a physical server calculated by A third objective function, which is a function related to the number of times, and a fourth objective function, which is a function related to whether or not the first physical server is operated and whether the second physical server is operated during the first predetermined period, may be provided.

상기 표시부는 상기 처리부에서 전달되는 배치 일정들을 표시(S40)할 수 있다.The display unit may display the batch schedules transmitted from the processing unit ( S40 ).

상기 처리부는 제1 배치 일정과 관련된 정보인 제1 배치 일정 정보, 상기 제2 배치 일정과 관련된 정보인 제2 배치 일정 정보, 제3 배치 일정과 관련된 정보인 제3 배치 일정 정보 및 제4 배치 일정과 관련된 정보인 제4 배치 일정 정보를 산출한 뒤에 상기 표시부에 전달할 수 있다.The processing unit includes first batch schedule information, which is information related to the first batch schedule, second batch schedule information, which is information related to the second batch schedule, third batch schedule information, and fourth batch schedule information, which is information related to a third batch schedule. After calculating the fourth arrangement schedule information, which is information related to , it may be transmitted to the display unit.

상기 배치 일정은 상기 제1 목적 함수의 값이 최소인 상태를 기준으로, 상기 제2 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 물리 서버들(일례로, 제1 물리 서버와 상기 제2 물리 서버) 상의 상기 가상 머신의 배치인 제1 배치 일정, 상기 제2 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 물리 서버들(일례로, 제1 물리 서버와 제2 물리 서버) 상의 상기 가상 머신의 배치인 제2 배치 일정, 상기 제3 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제4 목적 함수의 값이 최소화되는 물리 서버들(일례로, 제1 물리 서버와 제2 물리 서버) 상의 상기 가상 머신의 배치인 제3 배치 일정 및 상기 제4 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제3 목적 함수의 값이 최소화되는 물리 서버들(일례로, 제1 물리 서버와 제2 물리 서버) 상의 상기 가상 머신의 배치인 제4 배치 일정을 구비할 수 있다.The arrangement schedule includes physical servers in which the values of the second objective function, the third objective function, and the fourth objective function are minimized based on the state in which the value of the first objective function is the minimum (eg, the second objective function). A value of the first objective function and a value of the third objective function based on a first configuration schedule that is the configuration of the virtual machine on the first physical server and the second physical server) and a state in which the value of the second objective function is a minimum and a second arrangement schedule that is the arrangement of the virtual machine on physical servers (eg, a first physical server and a second physical server) in which the value of the fourth objective function is minimized, and a state in which the value of the third objective function is the minimum. placement of the virtual machine on physical servers (eg, the first physical server and the second physical server) in which the values of the first objective function, the second objective function, and the fourth objective function are minimized based on Physical servers in which the values of the first objective function, the second objective function, and the third objective function are minimized based on a third batch schedule of , the first physical server and the second physical server) may include a fourth deployment schedule that is the deployment of the virtual machine.

이하, 하나의 배치 일정을 예시로서 미리 정해진 배치 일정 산출 방법을 설명하도록 한다.Hereinafter, a method of calculating a predetermined arrangement schedule will be described using one arrangement schedule as an example.

도 5는 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 배치 일정 산출 단계를 설명하기 위한 도면이다.FIG. 5 is a diagram for explaining a step of calculating a batch schedule in a virtual machine arrangement method according to an embodiment of the present invention.

도 5는 미리 정해진 제1 기간 중에서 일정 기간에 대해서 물리 서버들에 배치되는 가상 머신들의 일정을 도식화한 도면이다.FIG. 5 is a diagram schematically illustrating schedules of virtual machines disposed in physical servers for a predetermined period among a first predetermined period.

일례로, 도 5에 도시된 예시는 제1 목적 함수가 최소화되는 것을 기준으로 하는 제1 배치 일정에 관한 것일 수 있으며, 이하, 이를 기준으로 서술하도록 한다.As an example, the example shown in FIG. 5 may relate to a first batch schedule based on a first objective function being minimized, and hereinafter, it will be described based on this.

다만, 이는 하나의 예시적인 것으로서 이에 본 발명이 한정되지 않는 것은 자명하다.However, it is obvious that this is an example and the present invention is not limited thereto.

일례로, 물리 서버는 제1 물리 서버(20), 제2 물리 서버(30) 및 제3 물리 서버(40)로 이루어질 수 있으며, 가상 머신은 제1 가상 머신(91), 제2 가상 머신(92), 제3 가상 머신(93), 제4 가상 머신(94), 제5 가상 머신(95), 제6 가상 머신(96) 및 제7 가상 머신(97)을 구비할 수 있다.For example, the physical server may include a first physical server 20 , a second physical server 30 , and a third physical server 40 , and the virtual machine includes a first virtual machine 91 , a second virtual machine ( 92 , a third virtual machine 93 , a fourth virtual machine 94 , a fifth virtual machine 95 , a sixth virtual machine 96 , and a seventh virtual machine 97 .

일례로, 상기 처리부는 제1 목적 함수가 최소화되는 상태에서 다른 목적 함수가 최소화될 수 있도록 제1 시간 이전 시간인 제0 시간에는 제1 물리 서버(20)에는 제1 가상 머신(91)과 제2 가상 머신(92)이 배치되도록 하고, 제2 물리 서버(30)에는 제3 가상 머신(93), 제4 가상 머신(94) 및 제5 가상 머신(95)이 배치되도록 하고, 제3 물리 서버(40)에는 제6 가상 머신(96) 및 제7 가상 머신(97)이 배치되도록 배치 일정을 산출할 수 있다.For example, the processing unit includes the first virtual machine 91 and the second virtual machine 91 in the first physical server 20 at time 0, which is a time before the first time, so that other objective functions can be minimized while the first objective function is minimized. The second virtual machine 92 is placed, and the third virtual machine 93 , the fourth virtual machine 94 , and the fifth virtual machine 95 are placed on the second physical server 30 , and the third physical The server 40 may calculate a deployment schedule so that the sixth virtual machine 96 and the seventh virtual machine 97 are placed.

만일, 상기 제0 시간 대의 가상 머신들에 배치를 따를 경우, 제1 시간에는 제1 물리 서버의 워크 로드가 제2 기준 이하라고 예측될 수 있다.If the placement of virtual machines in the 0 th time zone is followed, it may be predicted that the workload of the first physical server is less than or equal to the second reference in the first time period.

이와 같을 경우, 제1-2 조건이 만족되는 경우로서, 제1 물리 서버(20)에 배치되어 있는 가상 머신들인 제1 가상 머신(91)과 제2 가상 머신(92)이 다른 물리 서버로 이동되도록 배치 일정이 산출될 수 있다.In this case, as a case in which condition 1-2 is satisfied, the first virtual machine 91 and the second virtual machine 92, which are virtual machines arranged in the first physical server 20, are moved to different physical servers. A batch schedule may be calculated as much as possible.

여기서, 제1-2 조건 하에 가상 머신이 이전되는 경우, 제1 목적 함수가 최소화 되는 것을 기준으로 어느 물리 서버로 이전되는지가 결정될 수 있다.Here, when the virtual machine is transferred under the condition 1-2, it may be determined to which physical server the virtual machine is transferred based on the minimized first objective function.

이를 기초로 제1 가상 머신(91)은 제2 물리 서버(30)로 이동되고, 제2 가상 머신(92)은 제3 물리 서버(40)로 이동되도록 배치 일정이 산출될 수 있다.Based on this, the arrangement schedule may be calculated such that the first virtual machine 91 is moved to the second physical server 30 and the second virtual machine 92 is moved to the third physical server 40 .

제1 시간에서의 마이그레이션에 의해 제2 시간에는 제1 물리 서버(20)는 가동되지 않도록 배치 일정이 산출될 수 있다.By the migration at the first time, the arrangement schedule may be calculated so that the first physical server 20 is not operated at the second time.

일례로, 제2 물리 서버(30)에 제3 가상 서버(30), 제4 가상 서버(40), 제5 가상 서버(50) 및 제1 가상 서버(10)가 배치되고, 제3 물리 서버(40)에 제2 가상 서버(92), 제6 가상 서버(96) 및 제7 가상 서버(97)가 배치되었을 때, 제1 목적 함수가 최소인 상태에서 다른 목적 함수도 최소라고 가정할 경우, 제2 시간에서는 마이그레이션이 발생되지 않을 수 있다.For example, the third virtual server 30 , the fourth virtual server 40 , the fifth virtual server 50 , and the first virtual server 10 are disposed in the second physical server 30 , and the third physical server When the second virtual server 92 , the sixth virtual server 96 , and the seventh virtual server 97 are arranged in 40 , it is assumed that the other objective functions are also minimum while the first objective function is minimum. , the migration may not occur at the second time.

이와 다르게, 제1 목적 함수가 최소인 상태에서 다른 목적 함수도 최소로 하기 위해, 제3 시간에서 제2 물리 서버(30)에 배치되어 있는 제1 가상 서버(91)가 제3 물리 서버(40)로 마이그레이션 되도록 배치 일정이 산출될 수 있다.On the other hand, in order to minimize the other objective functions while the first objective function is the minimum, the first virtual server 91 disposed in the second physical server 30 at the third time is performed by the third physical server 40 . ) can be calculated to be migrated to

또한, 제1 목적 함수가 최소인 상태에서 다른 목적 함수도 최소로 하기 위해, 제4 시간에서 제2 물리 서버(30)에 배치되어 있는 제5 가상 서버(95)가 제3 물리 서버(40)로 마이그레이션 되도록 배치 일정이 산출될 수 있다.In addition, in order to minimize the other objective functions while the first objective function is the minimum, the fifth virtual server 95 arranged in the second physical server 30 at the fourth time is performed by the third physical server 40 . A deployment schedule can be calculated to migrate to

제2 시간 내지 제4 시간 동안 제1 물리 서버(20)는 가동되지 않을 수 있다.The first physical server 20 may not be operated during the second to fourth hours.

이는 제4 목적 함수에 의한 영향으로 인해, 제2 시간 내지 제4 시간 동안 제1 물리 서버(20)가 가동되지 않도록 배치 일정이 산출되는 것일 수도 있다.This may be that the arrangement schedule is calculated so that the first physical server 20 is not operated for the second to fourth time due to the influence of the fourth objective function.

만일, 제4 시간 때의 가상 머신의 배치를 따를 경우 제5 시간 때에는 제3 물리 서버(40)의 워크 로드가 제1 기준이 이상이 된다고 예측될 수 있다.If the arrangement of the virtual machines at the fourth time is followed, it may be predicted that the workload of the third physical server 40 exceeds the first criterion at the fifth time.

이와 같은 경우, 상기 제5 시간 때 제3 물리 서버(40)에 배치되는 가상 머신 중에서 적어도 하나가 다른 물리 서버로 이동되도록 배치 일정이 산출될 수 있다. (제1-1 조건)In this case, the arrangement schedule may be calculated such that at least one of the virtual machines arranged in the third physical server 40 is moved to another physical server at the fifth time. (Condition 1-1)

또한, 만일, 제4 시간 때의 가상 머신의 배치를 따를 경우 제5 시간 때에는 제2 물리 서버(30)의 워크 로드가 제1 기준이 이상이 된다고 예측될 수 있다. (제1-1 조건)In addition, if the arrangement of the virtual machines at the fourth time is followed, it may be predicted that the workload of the second physical server 30 exceeds the first criterion at the fifth time. (Condition 1-1)

이와 같을 경우, 상기 제5 시간 때 제2 물리 서버(30)에 배치되는 가상 머신 중 적어도 하나가 다른 물리 서버로 이동되도록 배치 일정이 산출될 수 있다. (제1-1 조건)In this case, the arrangement schedule may be calculated so that at least one of the virtual machines arranged in the second physical server 30 is moved to another physical server at the fifth time. (Condition 1-1)

다만, 제3 물리 서버(40)에 배치된 제1 가상 머신(91)은 제1 시간 및 제3 시간 때에 마이드레이션이 실시되었기 때문에, 제5 시간 때에는 마이그레이션 대상에서 제외될 수 있다. (제4 조건)However, since the first virtual machine 91 disposed in the third physical server 40 is migrated at the first time and the third time, it may be excluded from the migration target at the fifth time. (4th condition)

또한, 상기 제2 물리 서버(30)에 배치된 제3 가상 머신(93)과 제4 가상 머신(94) 모두가 제1 물리 서버(20)에 이동되는 경우, 제2 물리 서버(30) 가동은 중단되고 제1 물리 서버(20)의 가동은 개시될 수 있다.In addition, when both the third virtual machine 93 and the fourth virtual machine 94 arranged in the second physical server 30 are moved to the first physical server 20, the second physical server 30 is operated. is stopped and the operation of the first physical server 20 may be started.

이는 제2 조건이 만족되지 않기 때문에, 제2 물리 서버(30)에서는 제3 가상 머신(93)과 제4 가상 머신(94) 중 하나의 가상 머신 만이 제1 물리 서버(20)로 이동될 수 있다.Since the second condition is not satisfied, in the second physical server 30 , only one virtual machine among the third virtual machine 93 and the fourth virtual machine 94 can be moved to the first physical server 20 . have.

일례로, 제1 목적 함수가 최소화되는 상태에서 모든 목적 함수가 최소화되도록, 제1 조건 내지 제4 조건(구체적으로 제1-2 조건과 제2 조건)이 만족되도록, 제2 물리 서버(30)에서는 제3 가상 머신(93)이 제1 물리 서버(20)로 이동될 수 있고, 제3 물리 서버(40)에서는 제6 가상 머신(96)과 제7 가상 머신(97)이 제1 물리 서버(20)로 이동될 수 있다.For example, in a state in which the first objective function is minimized, all objective functions are minimized, and the first to fourth conditions (specifically, the 1-2 conditions and the second conditions) are satisfied, the second physical server 30 In , the third virtual machine 93 may be moved to the first physical server 20 , and in the third physical server 40 , the sixth virtual machine 96 and the seventh virtual machine 97 are the first physical server (20) can be moved.

제5 시간에서의 마이그레이션에 의해 목적 함수의 최소 값이 만족되어 제6 시간에는 마이그레이션이 발생되지 않도록 배치 일정이 산출될 수 있다.A batch schedule may be calculated so that the minimum value of the objective function is satisfied by the migration at the fifth time and migration does not occur at the sixth time.

여태까지, 제1 배치 일정을 기초로 기술을 하였지만, 이는 하나의 예시에 불과하고, 제2 배치 일정, 제3 배치 일정 및 제4 배치 일정을 기초로 일정이 산출되는 방식에 대한 자세한 설명은 상술한 내용과 중복되는 한도에서 생략될 수 있다.So far, the description has been made based on the first batch schedule, but this is only an example, and a detailed description of a method in which a schedule is calculated based on the second batch schedule, the third batch schedule, and the fourth batch schedule is described above. It may be omitted to the extent that it overlaps with one content.

상기 표시부는 상기 제1 배치 일정, 상기 제2 배치 일정, 상기 제3 배치 일정 및 제4 배치 일정을 표시할 수 있다.The display unit may display the first arrangement schedule, the second arrangement schedule, the third arrangement schedule, and the fourth arrangement schedule.

4 개의 목적 함수들은 각 각 독립적인 함수로서 4 개의 비 지배해를 가질 수 있기 때문에, 상기 제1 배치 일정, 상기 제2 배치 일정, 상기 제3 배치 일정 및 제4 배치 일정은 서로 독립적인 해결 방법을 의미할 수 있다.Since the four objective functions can each have four non-dominant solutions as independent functions, the first batch schedule, the second batch schedule, the third batch schedule, and the fourth batch schedule are independent of each other. can mean

작업자는 입력부를 통해 상기 제1 배치 일정, 제2 배치 일정, 제3 배치 일정 및 제4 배치 일정 중 하나의 배치 일정을 결정하여, 결정한 배치 일정을 선택 입력할 수 있다.The operator may determine one of the first batch schedule, the second batch schedule, the third batch schedule, and the fourth batch schedule through the input unit, and select and input the determined batch schedule.

상기 입력부는 선택된 배치 일정과 관련된 정보를 산출하여 해당 정보를 상기 처리부로 전달할 수 있다.The input unit may calculate information related to the selected arrangement schedule and transmit the information to the processing unit.

도 6은 본 발명의 일 실시예에 따른 가상 머신 배치 방법 중에서 예측 오류를 산출하는 방법을 설명하기 위한 그래프이다.6 is a graph for explaining a method of calculating a prediction error in a virtual machine arrangement method according to an embodiment of the present invention.

상기 처리부는 선택된 배치 일정을 기초로 가상 머신들을 물리 서버들 상에서 이동 시키면서 배치(S60)할 수 있다.The processing unit may deploy (S60) virtual machines while moving them on the physical servers based on the selected deployment schedule.

이러한 방법을 통해 상기 물리 서버의 자원이 일 물리 서버로 치우치지 않고 고르게 활용될 수 있다.Through this method, the resources of the physical server can be used evenly without being biased toward one physical server.

또한, 본 발명의 일 실시예에 따른 가상 머신 배치 방법은 상기 배치 일정에 따라 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버에 배치되는 경우, 상기 물리 서버의 예측되는 부하와 연관된 선택 예측 가상 로드와 관련된 정보인 선택 예측 가상 로드 정보와 상기 가상 머신의 실제 워크 로드와 관련된 정보인 실제 가상 워크 로드 정보를 기초로 미리 정해진 점검 방법에 따라 상기 선택 예측 가상 로드 정보가 정상적으로 산출되었는지 여부를 판단하는 단계(S70)를 더 포함할 수 있다.Also, in the virtual machine arrangement method according to an embodiment of the present invention, when the virtual machines are placed in the first physical server and the second physical server according to the arrangement schedule, selection associated with the predicted load of the physical server It is determined whether the selection prediction virtual load information is normally calculated according to a predetermined inspection method based on the selection prediction virtual load information, which is information related to the prediction virtual load, and the actual virtual workload information, which is information related to the actual workload of the virtual machine. The step of determining (S70) may be further included.

여기서, 선택 예측 가상 로드 정보는 상술한 최초 예측 가상 로드 정보들과 동일할 수 있다.Here, the selective prediction virtual load information may be the same as the above-described initial prediction virtual load information.

다만, 이에 한정하지 않고 상기 선택 예측 가상 로드 정보는 최초 예측 가상 로드 정보와 일치되지 않을 수 있다.However, the present invention is not limited thereto, and the selection prediction virtual load information may not match the initial prediction virtual load information.

이와 같을 경우, 상기 처리부는 선택된 상기 배치 일정에 따라 상기 가상 머신들을 배치한 후, 소정 기간 동안의 상기 가상 머신들의 워크 로드를 예측하여 상기 선택 예측 가상 로드 정보를 산출할 수 있다.In this case, after arranging the virtual machines according to the selected arrangement schedule, the processing unit may calculate the selected predicted virtual load information by predicting the workload of the virtual machines for a predetermined period.

상기 미리 정해진 점검 방법은 상기 가상 머신의 실제 워크 로드가 대응되는 상기 선택 예측 가상 로드와 소정 값 이상 차이 날 경우 상기 선택 예측 가상 로드가 잘못 산출되었다고 판단하는 방법일 수 있다.The predetermined checking method may be a method of determining that the selective prediction virtual load is erroneously calculated when the actual workload of the virtual machine differs from the corresponding selective prediction virtual load by a predetermined value or more.

구체적인 일례로서, 도 6은 제a 가상 머신의 예측되는 워크 로드인 선택 예측 가상 로드를 나타내는 제1 워크 로드(Y10)와 제a 가상 머신의 실제 워크 로드를 나타내는 제2 워크 로드(Y20)에 대한 그래프일 수 있다.As a specific example, FIG. 6 shows a first workload Y10 representing a selective prediction virtual load that is a predicted workload of the a-th virtual machine and a second workload Y20 representing the actual workload of the a-th virtual machine. It can be a graph.

상기 처리부는 상기 제1 워크 로드와 상기 제2 워크 로드가 소정 워크 로드(소정 값, Y) 이상 차이날 경우 상기 제a 가상 머신의 워크 로드가 잘못 예측되었다고 판단할 수 있다.The processing unit may determine that the workload of the a-th virtual machine is erroneously predicted when the first workload and the second workload differ by more than a predetermined workload (a predetermined value, Y).

상기 처리부가 상기 선택 예측 가상 로드가 잘못 산출되었다고 판단하는 경우, 상기 처리부는 상기 선택 예측 가상 로드가 잘못 산출되었다고 판단하는 시점인 재 판단 시점부터 미리 정해진 제2 기간 동안, 예측되는 상기 가상 머신에 의해 발생되는 물리 서버의 부하와 연관된 재 예측 가상 로드와 관련된 정보인 재 예측 가상 로드 정보를 산출(S80)할 수 있다.When the processing unit determines that the selection prediction virtual load is calculated incorrectly, the processing unit determines that the selection prediction virtual load is calculated incorrectly, for a second predetermined period from the time of re-judgment, by the predicted virtual machine. Re-prediction virtual load information, which is information related to the re-prediction virtual load associated with the generated load of the physical server, may be calculated ( S80 ).

상기 처리부는 상기 재 예측 가상 로드 정보를 기초로 상술한 미리 정해진 배치 일정 산출 방법에 의해 배치 일정을 재 산출(S80)할 수 있으며, 이를 기초로 가상 머신들이 재 배치(S90)될 수 있도록, 소정의 연산을 할 수 있다.The processing unit may re-calculate (S80) the batch schedule by the above-described predetermined batch schedule calculation method based on the re-prediction virtual load information, and based on this, the virtual machines can be re-arranged (S90). can be calculated.

이에 대한 자세한 설명은 상술한 내용과 중복되는 한도에서 생략될 수 있다.A detailed description thereof may be omitted to the extent that it overlaps with the above-described content.

여기서, 미리 정해진 제2 기간은 상술한 상기 미리 정해진 제1 기간과 동일할 수도 있고 상이할 수도 있다.Here, the second predetermined period may be the same as or different from the first predetermined period described above.

이와 같은 상기 가상 머신 배치 방법은 반복 연속적으로 이루어질 수 있다.The virtual machine arrangement method as described above may be repeatedly and continuously performed.

상기 가상 머신들이 재 배치(S90)되기 위하여 작업자는 복수의 배치 일정들 중에 하나의 배치 일정을 선택할 수 있으며, 상기 처리부는 선택된 배치 일정을 기초로 상기 가상 머신들을 재 배치(S90) 할 수 있다.In order for the virtual machines to be relocated (S90), an operator may select one arrangement schedule from among a plurality of arrangement schedules, and the processing unit may rearrange the virtual machines based on the selected arrangement schedule (S90).

이에 대한 자세한 설명은 상술한 내용과 중복되는 한도에서 생략될 수 있다.A detailed description thereof may be omitted to the extent that it overlaps with the above-described content.

본 발명의 일 실시예에 따른 가상 머신 배치 장치는 가상 머신이 설치되는 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. - 를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법을 구현하는 가상 머신 배치 장치에 있어서, 처리부; 및 상기 가상 머신 배치 방법을 수행하는 프로그램이 저장된 저장부;를 포함하고, 상기 가상 머신 배치 방법은, 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계, 상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계, 미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계 및 상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계를 포함하고, 상기 미리 정해진 배치 일정 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법일 수 있다.A virtual machine arrangement apparatus according to an embodiment of the present invention includes a physical server in which a virtual machine is installed, wherein the physical server includes a first physical server and a second physical server. - A virtual machine arrangement apparatus for implementing a virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate: a processing unit; and a storage unit storing a program for performing the virtual machine arrangement method, wherein the virtual machine arrangement method calculates a predetermined workload based on information related to operations of the first physical server and the second physical server calculating virtual machine workload information that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a method, the virtual machine workload information predicted for a first predetermined period based on the virtual machine workload Calculating initial predicted virtual load information, which is information related to an initial predicted virtual load associated with a load of a physical server imposed by a virtual machine, on the first physical server and the second physical server by a predetermined arrangement schedule calculation method Calculating arrangement schedule information, which is information related to the arrangement schedule of the virtual machine, and the virtual machine on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method and disposing the virtual machine while moving on the first physical server and the second physical server, so that the predetermined arrangement schedule calculation method includes an objective function value based on the initial predicted virtual load information. This may be a method in which the deployment schedule of the virtual machine when this is minimized is calculated.

첨부된 도면은 본 발명의 기술적 사상을 보다 명확하게 표현하기 위해, 본 발명의 기술적 사상과 관련성이 없거나 떨어지는 구성에 대해서는 간략하게 표현하거나 생략하였다.In the accompanying drawings, in order to more clearly express the technical spirit of the present invention, components that are not related to or inferior to the technical spirit of the present invention are briefly expressed or omitted.

상기에서는 본 발명에 따른 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.In the above, the configuration and features of the present invention have been described based on the embodiments according to the present invention, but the present invention is not limited thereto, and it is understood that various changes or modifications can be made within the spirit and scope of the present invention. It is intended that such changes or modifications will be apparent to those skilled in the art, and therefore fall within the scope of the appended claims.

10 : 가상 머신 배치 장치 11 : 처리부
12 : 저장부 13 : 수신부
14 : 송신부 15 : 입력부
16 : 표시부
10: virtual machine placement device 11: processing unit
12: storage unit 13: receiving unit
14: transmitter 15: input unit
16: display unit

Claims (11)

가상 머신 배치 장치를 이용하여, 가상 머신이 설치된 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. -를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법에 있어서,
상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계;
상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계;
미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계;
상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 배치 일정이 표시되는 단계; 및
상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계;를 포함하고,
상기 미리 정해진 배치 일정 산출 방법은,
상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법이며,
상기 미리 정해진 제1 기간 동안에 상기 물리 서버들 간의 상기 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법이고,
상기 목적 함수는,
상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수를 구비하는,
가상 머신 배치 방법.
A physical server in which a virtual machine is installed using a virtual machine arrangement device, wherein the physical server includes a first physical server and a second physical server. In the virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate the
A virtual machine work that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a predetermined workload calculation method based on information related to the operation of the first physical server and the second physical server calculating load information;
calculating initial predicted virtual load information, which is information related to an initial predicted virtual load associated with a load of a physical server imposed by the virtual machine, predicted for a first predetermined period based on the virtual machine workload;
calculating arrangement schedule information, which is information related to arrangement schedules of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculating method;
displaying the arrangement schedule calculated by the predetermined arrangement schedule calculation method; and
The virtual machine is arranged between the first physical server and the second physical server so that the virtual machine is disposed on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method. Including; the step of being placed while moving on the server;
The predetermined batch schedule calculation method is,
A method for calculating the deployment schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information,
a method in which the arrangement schedule is calculated so that the movement of the virtual machine between the physical servers is allowed during the first predetermined period,
The objective function is
and a first objective function that is a function related to the amount of change in the load of the physical server calculated by the first predicted virtual load during the first predetermined period,
How to deploy virtual machines.
제1항에 있어서,
상기 미리 정해진 배치 산출 방법은,
소정 횟수 내에서 상기 미리 정해진 제1 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법인,
가상 머신 배치 방법.
According to claim 1,
The predetermined batch calculation method is,
a method in which the deployment schedule is calculated such that movement of a virtual machine between physical servers is allowed within the first predetermined period within a predetermined number of times,
How to deploy virtual machines.
제1항에 있어서,
상기 미리 정해진 워크 로드 산출 방법은,
상기 제1 물리 서버와 상기 제2 물리 서버의 사양이 동일하다고 가정하여 산출하는 방법인,
가상 머신 배치 방법.
According to claim 1,
The predetermined workload calculation method,
It is a method of calculating assuming that the specifications of the first physical server and the second physical server are the same,
How to deploy virtual machines.
제1항에 있어서,
상기 미리 정해진 워크 로드 산출 방법은,
CPU의 가동 정도만을 기초로 상기 가상 머신 워크 로드 정보가 산출되는 방법을 포함하는,
가상 머신 배치 방법.
According to claim 1,
The predetermined workload calculation method,
Including a method for calculating the virtual machine workload information based only on the operation degree of the CPU,
How to deploy virtual machines.
제1항에 있어서,
상기 목적 함수는,
상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 배치 일정에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수, 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 더 구비하는,
가상 머신 배치 방법.
According to claim 1,
The objective function is
During the first predetermined period, a second objective function that is a function related to a difference between loads of a physical server calculated by the initial predicted virtual load, the first physical server for the virtual machine to be deployed according to the deployment schedule and a third objective function, which is a function related to the number of times the virtual machine is placed and moved on the second physical server, whether the first physical server is operated and whether the second physical server is operated during the first predetermined period; Further comprising a fourth objective function that is a related function,
How to deploy virtual machines.
제5항에 있어서,
상기 배치 일정은,
상기 제1 목적 함수의 값이 최소인 상태를 기준으로, 상기 제2 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제1 배치 일정,
상기 제2 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제3 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제2 배치 일정,
상기 제3 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제4 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제3 배치 일정 및
상기 제4 목적 함수의 값이 최소인 상태를 기준으로, 상기 제1 목적 함수의 값, 상기 제2 목적 함수 및 제3 목적 함수의 값이 최소화되는 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 제4 배치 일정을 구비하는,
가상 머신 배치 방법.
6. The method of claim 5,
The deployment schedule is
Based on the state in which the value of the first objective function is minimum, the values of the second objective function, the third objective function, and the fourth objective function are minimized on the first physical server and the second physical server a first deployment schedule that is a deployment of the virtual machine;
Based on the state in which the value of the second objective function is minimum, the values of the first objective function, the third objective function, and the fourth objective function are minimized on the first physical server and the second physical server a second deployment schedule that is the deployment of the virtual machine;
Based on the state in which the value of the third objective function is the minimum, the values of the first objective function, the second objective function, and the fourth objective function are minimized on the first physical server and the second physical server. a third deployment schedule that is the deployment of the virtual machine; and
Based on the state in which the value of the fourth objective function is the minimum, the values of the first objective function, the second objective function, and the third objective function are minimized on the first physical server and the second physical server. having a fourth deployment schedule that is the deployment of the virtual machine,
How to deploy virtual machines.
제6항에 있어서,
상기 가상 머신은,
상기 배치 일정들 중에서 선택된 하나의 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 배치되는,
가상 머신 배치 방법.
7. The method of claim 6,
The virtual machine is
deployed on the first physical server and the second physical server according to the one selected from among the deployment schedules;
How to deploy virtual machines.
가상 머신이 설치되는 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 제2 물리 서버를 구비함. - 를 효율적으로 운용하기 위하여, 복수의 상기 가상 머신을 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치하는 방법인 가상 머신 배치 방법을 구현하는 가상 머신 배치 장치에 있어서,
처리부; 및
상기 가상 머신 배치 방법을 수행하는 프로그램이 저장된 저장부;를 포함하고,
상기 가상 머신 배치 방법은,
상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계;
상기 가상 머신 워크 로드를 기초로 미리 정해진 제1 기간 동안 예측되는 상기 가상 머신에 의해 부과되는 물리 서버의 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계;
미리 정해진 배치 일정 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치 일정과 관련된 정보인 배치 일정 정보가 산출되는 단계;
상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 배치 일정이 표시되는 단계; 및
상기 미리 정해진 배치 일정 산출 방법에 의해 산출된 상기 배치 일정에 따라 상기 제1 물리 서버와 상기 제2 물리 서버 상에 상기 가상 머신이 배치되도록, 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 이동되면서 배치되는 단계;를 포함하고,
상기 미리 정해진 배치 일정 산출 방법은,
상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 상기 배치 일정이 산출되는 방법이며,
상기 미리 정해진 제1 기간 동안에 상기 물리 서버들 간의 상기 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법이고,
상기 목적 함수는,
상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수를 구비하는,
가상 머신 배치 장치.
A physical server in which a virtual machine is installed - The physical server includes a first physical server and a second physical server. - in a virtual machine arrangement apparatus implementing a virtual machine arrangement method, which is a method of disposing a plurality of the virtual machines on the first physical server and the second physical server in order to efficiently operate
processing unit; and
and a storage unit in which a program for performing the virtual machine arrangement method is stored;
The virtual machine deployment method comprises:
A virtual machine work that is information related to a virtual machine workload that is a load of a physical server imposed by the virtual machine by a predetermined workload calculation method based on information related to the operation of the first physical server and the second physical server calculating load information;
calculating initial predicted virtual load information, which is information related to an initial predicted virtual load associated with a load of a physical server imposed by the virtual machine, predicted for a first predetermined period based on the virtual machine workload;
calculating arrangement schedule information, which is information related to arrangement schedules of the virtual machines on the first physical server and the second physical server, by a predetermined arrangement schedule calculating method;
displaying the arrangement schedule calculated by the predetermined arrangement schedule calculation method; and
The virtual machine is arranged between the first physical server and the second physical server so that the virtual machine is disposed on the first physical server and the second physical server according to the arrangement schedule calculated by the predetermined arrangement schedule calculation method. Including; the step of being placed while moving on the server;
The predetermined batch schedule calculation method is,
A method for calculating the deployment schedule of the virtual machine when an objective function value is minimized based on the initial predicted virtual load information,
a method in which the arrangement schedule is calculated so that the movement of the virtual machine between the physical servers is allowed during the first predetermined period,
The objective function is
and a first objective function that is a function related to the amount of change in the load of the physical server calculated by the first predicted virtual load during the first predetermined period,
virtual machine placement device.
제8항에 있어서,
상기 미리 정해진 배치 산출 방법은,
소정 횟수 내에서 상기 미리 정해진 제1 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 상기 배치 일정이 산출되는 방법인,
가상 머신 배치 장치.
9. The method of claim 8,
The predetermined batch calculation method is,
a method in which the deployment schedule is calculated such that movement of a virtual machine between physical servers is allowed within the first predetermined period within a predetermined number of times,
virtual machine placement device.
제8항에 있어서,
상기 미리 정해진 워크 로드 산출 방법은,
상기 제1 물리 서버와 상기 제2 물리 서버의 사양이 동일하다고 가정하여 산출하는 방법인,
가상 머신 배치 장치.
9. The method of claim 8,
The predetermined workload calculation method,
It is a method of calculating assuming that the specifications of the first physical server and the second physical server are the same,
virtual machine placement device.
제8항에 있어서,
상기 목적 함수는,
상기 미리 정해진 제1 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 배치 일정에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수, 상기 미리 정해진 제1 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 더 구비하는,
가상 머신 배치 장치.

9. The method of claim 8,
The objective function is
During the first predetermined period, a second objective function that is a function related to a difference between loads of a physical server calculated by the initial predicted virtual load, the first physical server for the virtual machine to be deployed according to the deployment schedule and a third objective function, which is a function related to the number of times the virtual machine is placed and moved on the second physical server, whether the first physical server is operated and whether the second physical server is operated during the first predetermined period; Further comprising a fourth objective function that is a related function,
virtual machine placement device.

KR1020200078477A 2019-07-31 2020-06-26 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same KR102316749B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200078477A KR102316749B1 (en) 2019-07-31 2020-06-26 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190092851A KR102135208B1 (en) 2019-07-31 2019-07-31 Virtual machine placement method using scheduling and virtual machine placement device implementing the same
KR1020200078477A KR102316749B1 (en) 2019-07-31 2020-06-26 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190092851A Division KR102135208B1 (en) 2019-07-31 2019-07-31 Virtual machine placement method using scheduling and virtual machine placement device implementing the same

Publications (2)

Publication Number Publication Date
KR20210015636A KR20210015636A (en) 2021-02-10
KR102316749B1 true KR102316749B1 (en) 2021-10-25

Family

ID=74561096

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200078477A KR102316749B1 (en) 2019-07-31 2020-06-26 Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same

Country Status (1)

Country Link
KR (1) KR102316749B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102469718B1 (en) * 2021-10-29 2022-11-22 오케스트로 주식회사 A virtual machine placement system with anomaly monitoring function

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170787A (en) 2010-02-22 2011-09-01 Nippon Telegraph & Telephone West Corp Device, method and control program for allocating resource
JP2011186701A (en) 2010-03-08 2011-09-22 Nec Corp Resource allocation apparatus, resource allocation method and resource allocation program
JP2012159928A (en) 2011-01-31 2012-08-23 Internatl Business Mach Corp <Ibm> Information processing device, information processing system, arrangement configuration determination method, and program and recording medium therefor
JP2014006739A (en) 2012-06-25 2014-01-16 Fujitsu Ltd Program, management server and virtual machine migration control method
KR101867487B1 (en) 2016-12-23 2018-07-18 경희대학교 산학협력단 System and method of migration based fuzzy in cloud environment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5338906B2 (en) * 2009-06-01 2013-11-13 富士通株式会社 Server management program, management server, and virtual server placement method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170787A (en) 2010-02-22 2011-09-01 Nippon Telegraph & Telephone West Corp Device, method and control program for allocating resource
JP2011186701A (en) 2010-03-08 2011-09-22 Nec Corp Resource allocation apparatus, resource allocation method and resource allocation program
JP2012159928A (en) 2011-01-31 2012-08-23 Internatl Business Mach Corp <Ibm> Information processing device, information processing system, arrangement configuration determination method, and program and recording medium therefor
JP2014006739A (en) 2012-06-25 2014-01-16 Fujitsu Ltd Program, management server and virtual machine migration control method
KR101867487B1 (en) 2016-12-23 2018-07-18 경희대학교 산학협력단 System and method of migration based fuzzy in cloud environment

Also Published As

Publication number Publication date
KR20210015636A (en) 2021-02-10

Similar Documents

Publication Publication Date Title
KR102135208B1 (en) Virtual machine placement method using scheduling and virtual machine placement device implementing the same
US8489744B2 (en) Selecting a host from a host cluster for live migration of a virtual machine
EP3198429B1 (en) Heterogeneous thread scheduling
Paya et al. Energy-aware load balancing and application scaling for the cloud ecosystem
Tang et al. Twine: A unified cluster management system for shared infrastructure
US8694638B2 (en) Selecting a host from a host cluster to run a virtual machine
US11088961B2 (en) Monitoring data streams and scaling computing resources based on the data streams
CN103631633B (en) Virtual machine total-system online migration method, device and system
US8695005B2 (en) Model for hosting and invoking applications on virtual machines in a distributed computing environment
US10061233B2 (en) Computer system backup performance optimization through performance analytics
CN107431696A (en) Method and cloud management node for application automatically dispose
JP5589218B2 (en) Computer system and management computer
CN101533417A (en) A method and system for realizing ETL scheduling
US20210105322A1 (en) Distributed storage system and data migration method
KR102109088B1 (en) Calculation method of vitual machine prediction workload and prediction device implementing the same
JP2011186701A (en) Resource allocation apparatus, resource allocation method and resource allocation program
KR20130019698A (en) Method for optimizing resource by using migration based on user&#39;s scheduler
US11354163B2 (en) Virtual machine placement method and virtual machine placement device implementing the same
KR102347375B1 (en) Virtual machine workload prediction method based on multiple prediction models
US10540202B1 (en) Transient sharing of available SAN compute capability
KR102316749B1 (en) Virtual machine workload prediction method, virtual machine placement method and virtual machine placement device implementing the same
JP5576827B2 (en) Server management system, server management apparatus, server management method, and server management program
KR102470086B1 (en) A virtual machine placement system avoiding sla violation and a method of virtual machine placement
KR102135209B1 (en) Virtual machine placement simulation method and virtual machine placement simulation device implementing the same
KR102126434B1 (en) Vitual machine placement method through workload prediction using deep learning and virtual machine placement device implementing the same

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant