KR102347371B1 - 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치 - Google Patents

딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치 Download PDF

Info

Publication number
KR102347371B1
KR102347371B1 KR1020200078476A KR20200078476A KR102347371B1 KR 102347371 B1 KR102347371 B1 KR 102347371B1 KR 1020200078476 A KR1020200078476 A KR 1020200078476A KR 20200078476 A KR20200078476 A KR 20200078476A KR 102347371 B1 KR102347371 B1 KR 102347371B1
Authority
KR
South Korea
Prior art keywords
virtual machine
information
physical server
predicted
arrangement
Prior art date
Application number
KR1020200078476A
Other languages
English (en)
Other versions
KR20210021907A (ko
Inventor
윤호영
김영광
김민준
Original Assignee
오케스트로 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020190101200A external-priority patent/KR102135209B1/ko
Application filed by 오케스트로 주식회사 filed Critical 오케스트로 주식회사
Priority to KR1020200078476A priority Critical patent/KR102347371B1/ko
Publication of KR20210021907A publication Critical patent/KR20210021907A/ko
Application granted granted Critical
Publication of KR102347371B1 publication Critical patent/KR102347371B1/ko

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
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation

Abstract

본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 장치는, 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 상기 제1 물리 서버와 물리적으로 분리된 제2 물리 서버를 구비함. - 에 배치된 가상 머신의 배치를 변경하는 것을 시뮬레이션하는 방법인 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보가 처리되는 처리부; 상기 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보가 저장되는 저장부; 사용자의 조작에 의해 상기 가상 머신 배치 모의 실험이 수행되는데 필요한 정보와 관련된 신호를 생성시키는 입력부; 상기 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보를 송 수신하는 송수신부; 이미지를 표시하는 디스플레이부; 및 상기 가상 머신 배치 모의 실험이 수행되기 위해 상기 처리부, 상기 저장부, 상기 입력부, 상기 송수신부와 상기 디스플레이부를 제어하는 제어부;를 포함하고, 상기 가상 머신 배치 모의 실험 방법은, 상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 산출되는 제1 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 발생 상태 정보가 산출되는 단계; 상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 이용하여 미리 정해진 예측 방법을 통해 제2 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 예측되는 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계; 미리 정해진 머신 배치 산출 방법에 의해 산출된 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보가 산출되는 단계; 상기 머신 배치대로 상기 가상 머신이 상기 물리 서버에 배치되었을 때의 예측으로서 상기 최초 예측 가상 로드 정보를 기초로 산출되는 복수의 예측 상태 정보를 기초로 산출된 예측 상태 값의 최대값과 최소값 범위 내의 값과 관련된 정보인 후보 예측 상태 정보가 산출되는 단계; 및 상기 예측 상태 값과 상기 후보 예측 상태 정보를 기초로 산출된 후보 예측 상태 값이 미리 정해진 표시 방법으로 디스플레이부에 표시되는 단계;를 포함하며, 상기 예측 상태 정보는, 상기 최초 예측 가상 로드 정보를 기초로 산출되며, 상기 미리 정해진 머신 배치 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 복수의 목적 함수 값이 최소화될 때 상기 머신 배치를 복 수개 산출하는 방법이며, 상기 미리 정해진 표시 방법은, 상기 예측 상태 값과 상기 후보 예측 상태 값을 소정의 범위 형태로 표시하는 방법일 수 있다.

Description

딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치{VIRTUAL MACHINE PLACEMENT SIMULATION METHOD USING DEEP LEARNING AND VIRTUAL MACHINE PLACEMENT SIMULATION DEVICE IMPLEMENTING THE SAME}
본 발명은 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치에 관한 것으로서, 현재의 물리 서버 상의 가상 머신의 배치와 미래의 물리 서버 상의 가상 머신의 배치를 서로 비교 시뮬레이션하는 방법 및 이를 구현하는 장치에 관한 것이다.
전 세계 전력사용량의 약 2%를 차지하는 데이터센터는 단일 건물 중 전력을 가장 많이 사용하는 고밀도 에너지 다소비 건물이지만, 안정성을 최우선시하는 보수적인 운영을 고수하여 비효율적인 운영 현황을 보이고 있다. 향후 사물인터넷, 빅 데이터, 클라우드 기술 등의 확산으로 인해 소규모의 데이터센터는 대규모의 데이터센터인 '하이퍼스케일', '메가' 데이터센터로 통합될 것으로 전망되는바, 인프라 확대에 따른 데이터센터 운영관리의 복잡성 또한 심화될 것으로 전망된다. 이에 불필요한 서버는 유휴 혹은 절전모드로 전환하고, 가용되는 서버를 최대한 안정적으로 운영함으로써 데이터센터 운영의 효율성을 극대화하며, 전력소비량을 줄여 운영비용 절감에 기여하기 위하여, 데이터센터에 배치된 수많은 가상 머신들의 배치를 적절하게 하는 것이 매우 중요하다.
물리적 자원(Physical Machine, PM, 물리 서버)들을 논리적 자원(Virtual Machine, VM, 가상 머신)들로 구성하는 가상화 환경에서는 구동 중인 가상 머신을 다른 물리 서버로 이동시킬 수 있는데, 이를 라이브 마이그레이션이라고 한다. 이는 효율적인 데이터센터를 관리하는데 필수적인 관리 방법이다. 여기서, 데이터센터를 효율적으로 관리하기 위하여 가상 머신들을 마이그레이션하여 데이터 센터를 운영하는 것과 관련된 기술(일본특허공보 특허 제5827594, 2015. 10. 23, 등록)이 개발되고 출시되어 있다.
다만, 기존의 출시되어 있는 기술들은 실제적으로 데이터센터를 운영하는 것에 대한 것으로서, 데이터센터에 운영프로그램을 적용하기 전에 미리 결과를 예측하지 못한다는 불편함이 존재하였다.
본 발명의 목적은 상기 문제점을 해결하기 위해서, 가상 머신 재 배치를 통해 데이터센터의 운영의 변화를 시뮬레이션 할 수 있는 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
삭제
삭제
삭제
삭제
삭제
삭제
삭제
본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 장치는, 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 상기 제1 물리 서버와 물리적으로 분리된 제2 물리 서버를 구비함. - 에 배치된 가상 머신의 배치를 변경하는 것을 시뮬레이션하는 방법인 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보가 처리되는 처리부; 상기 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보가 저장되는 저장부; 사용자의 조작에 의해 상기 가상 머신 배치 모의 실험이 수행되는데 필요한 정보와 관련된 신호를 생성시키는 입력부; 상기 가상 머신 배치 모의 실험이 수행되기 위해 필요한 정보를 송 수신하는 송수신부; 이미지를 표시하는 디스플레이부; 및 상기 가상 머신 배치 모의 실험이 수행되기 위해 상기 처리부, 상기 저장부, 상기 입력부, 상기 송수신부와 상기 디스플레이부를 제어하는 제어부;를 포함하고, 상기 가상 머신 배치 모의 실험 방법은, 상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 산출되는 제1 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 발생 상태 정보가 산출되는 단계; 상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 이용하여 미리 정해진 예측 방법을 통해 제2 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 예측되는 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계; 미리 정해진 머신 배치 산출 방법에 의해 산출된 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보가 산출되는 단계; 상기 머신 배치대로 상기 가상 머신이 상기 물리 서버에 배치되었을 때의 예측으로서 상기 최초 예측 가상 로드 정보를 기초로 산출되는 복수의 예측 상태 정보를 기초로 산출된 예측 상태 값의 최대값과 최소값 범위 내의 값과 관련된 정보인 후보 예측 상태 정보가 산출되는 단계; 및 상기 예측 상태 값과 상기 후보 예측 상태 정보를 기초로 산출된 후보 예측 상태 값이 미리 정해진 표시 방법으로 디스플레이부에 표시되는 단계;를 포함하며, 상기 예측 상태 정보는, 상기 최초 예측 가상 로드 정보를 기초로 산출되며, 상기 미리 정해진 머신 배치 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 복수의 목적 함수 값이 최소화될 때 상기 머신 배치를 복 수개 산출하는 방법이며, 상기 미리 정해진 표시 방법은, 상기 예측 상태 값과 상기 후보 예측 상태 값을 소정의 범위 형태로 표시하는 방법일 수 있다.
또한, 상기 가상 머신 배치 모의 실험 방법은, 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 새로운 배치로서, 상기 머신 배치 중 하나의 배치로 선택된 배치인 선택 배치와 관련된 선택 배치 정보가 산출되는 단계를 더 구비할 수 있다.
또한, 상기 가상 머신 배치 모의 실험 방법은, 상기 예측 상태 정보를 기초로, 는 상기 선택 배치로 상기 가상 머신이 배치되었을 경우와, 상기 발생 상태 정보의 기초가 되는 상기 가상 머신의 배치인 과거 배치로 상기 가상 머신이 배치되었을 경우의 차이를 비교하기 위하여, 상기 발생 상태 정보와 상기 예측 상태 정보를 기초로 산출되는 비교 정보가 산출되는 단계를 더 구비할 수 있다.
또한, 상기 발생 상태 정보는, 상기 제1 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 부하와 관련된 정보인 발생 점유율 상태 정보, 상기 제1 기간 동안 상기 가상 머신이 상기 물리 서버 상에서 동작되는 과정에서 미리 정해진 기준의 위반 여부와 관련된 정보인 발생 위반 상태 정보, 상기 제1 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 발생 유휴 상태 정보 및 상기 제1 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 발생 이동 상태 정보 중 적어도 하나의 정보를 포함하고, 상기 예측 상태 정보는, 상기 제2 기간 동안 상기 가상 머신에 의해 부과될 것으로 예측되는 상기 물리 서버의 부하와 관련된 정보인 예측 점유율 상태 정보, 상기 제2 기간 동안 임의의 배치로 상기 가상 머신이 상기 물리 서버 상에서 동작된다고 가정할 경우 상기 미리 정해진 기준의 위반 여부와 관련된 정보인 예측 위반 상태 정보, 상기 제2 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 예측 유휴 상태 정보 및 상기 제2 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 예측 이동 상태 정보 중 적어도 하나의 정보를 포함할 수 있다.
또한, 상기 비교 정보는, 상기 발생 유휴 상태 정보를 기초로 산출된 발생 유휴 상태 값과 상기 예측 유휴 상태 정보를 기초로 산출된 예측 유휴 상태 값을 기초로 산출되는 정보를 포함할 수 있다.
또한, 상기 비교 정보는, 상기 발생 이동 상태 정보를 기초로 산출되는 발생 이동 상태 값과 상기 예측 이동 상태 정보를 기초로 산출되는 예측 이동 상태 값을 기초로 산출되는 정보를 포함할 수 있다.
또한, 상기 가상 머신 배치 모의 실험 방법은, 상기 가상 머신이 상기 과거 배치에 배치되었을 경우와 비교하여 상기 가상 머신이 상기 선택 배치에 배치되었을 때 획득되는 경제적 이익과 관련된 정보인 경제성 정보가 산출되는 단계;을 더 구비할 수 있다.
또한, 상기 경제성 정보는, 투자수익률(ROI), 순현재가치(NPV), 내부수익률(IRR), 회수기간(BEP)의 경제적 정보를 포함할 수 있다.
또한, 상기 경제성 정보는, 상기 가상 머신이 과거 배치로 물리 서버 상에 배치되었을 경우에 상기 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 상기 물리 서버를 운영하는데 발생되는 요금과 상기 가상 머신이 상기 선택 배치로 상기 물리 서버 상에 배치되었을 경우에 상기 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 상기 물리 서버를 운영하는데 필요한 예상 요금을 기초로 산출될 수 있다.
또한, 상기 디스플레이부는, 상기 비교 정보를 기초로 산출된 비교 값이 표시될 수 있다.
또한, 상기 가상 머신 배치 모의 실험 방법은, 복수의 목적 함수 리스트 중에서 상기 미리 정해진 머신 배치 산출 방법에 이용되고자 하는 목적 함수가 선택되는 단계;를 더 구비할 수 있다.
본 발명에 따른 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치에 따르면, 결과에 대해서 미리 시뮬레이션 할 수 있다.
또한, 사용자의 목적을 정확하게 반영할 수 있다.
또한, 데이터센터를 안정적으로 관리할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 장치의 개념 및 가상 머신 배치 모의 실험 장치와 복수의 물리 서버와의 관계를 도시한 도면
도 2는 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법의 순서도
도 3은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 정보를 입력하는 단계를 설명하기 위한 도면
도 4는 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 선택 배치를 설정하기 위한 과정을 설명하기 위한 도면
도 5는 본 발명의 일 실시에에 따른 가상 머신 배치 모의 실험 방법 중에서 경제성 정보와 비교 정보를 산출 및 표시하는 과정을 설명하기 위한 도면
도 6은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 고려되는 제1 목적 함수를 설명하기 위한 도면
도 7은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 고려되는 제2 목적 함수를 설명하기 위한 도면
이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상 범위 내에 포함된다고 할 것이다.
또한, 각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.
본 명세서에서 본 발명에 관련된 공지의 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에 이에 관한 자세한 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 장치의 개념 및 가상 머신 배치 모의 실험 장치와 복수의 물리 서버와의 관계를 도시한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 가상 머신(V10) 배치 모의 실험 장치(10)는 가상 머신(V10) 배치 모의 실험이 수행되기 위해 필요한 정보(일례로, 데이터)가 처리하는 처리부(11), 상기 가상 머신(V10) 배치 모의 실험이 수행되기 위해 필요한 정보가 저장되는 저장부(12), 사용자의 조작에 의해 상기 가상 머신(V10) 배치 모의 실험이 수행되는데 필요한 정보와 관련된 신호를 생성시키는 입력부(13), 일정한 이미지를 표시하는 표시부, 상기 가상 머신(V10) 배치 모의 실험이 수행되기 위해 필요한 정보를 송 수신하는 송수신부(14), 이미지를 표시하는 표시부(15) 및 상기 가상 머신(V10) 배치 모의 실험이 원활하게 이루어질 수 있도록 상기 처리부(11), 상기 저장부(12), 상기 입력부(13), 상기 송수신부(14) 및/또는 표시부(15)를 제어하는 제어부(16)를 포함할 수 있다.
상기 처리부(11)는 상기 저장부(12)에 저장되어 있는 정보를 기초로 상기 가상 머신(V10) 배치 모의 실험 방법이 구현되는데 필요한 모든 정보 처리와 같은 연산을 수행할 수 있다.
일례로, 상기 처리부(11)는 중앙처리장치(CPU)를 의미할 수 있다.
다만, 이에 한정하지 않고 상기 처리부(11)는 상기 가상 머신(V10) 배치 모의 실험 방법이 구현되는데 필요한 연산을 수행할 수 있는 모든 장치 혹은 부품을 포함할 수 있다.
상기 저장부(12)는 상기 가상 머신(V10) 배치 모의 실험 방법이 구현되는데 필요한 정보(데이터)가 저장되어 있을 수 있다.
상기 저장부(12)에는 상기 가상 머신(V10) 배치 모의 실험 방법을 수행하는 프로그램이 저장되어 있을 수 있다.
일례로, 상기 저장부(12)는 보조기억장치로서 하드디스크일 수 있다.
다만, 이에 한정하지 않고 상기 저장부(12)는 상기 가상 머신(V10) 배치 모의 실험 방법이 구형되는데 필요한 모든 정보가 저장될 수 있는 모든 요소를 포함할 수 있다.
일례로, 상기 저장부(12)는 데이터베이스일 수 있다.
송수신부(14)는 정보를 전달 받거나 임의의 매체로 정보를 전달할 수 있다.
일례로, 상기 송수신부(14)는 물리 서버(P10)로부터 정보를 전달 받거나 정보를 전달할 수 있다.
일례로, 상기 송수신부(14)는 상기 물리 서버(P10)로부터 직접적으로 정보를 전달받을 수 있으나, 별도의 저장매체에 의해 상기 물리 서버(P10)에 대한 정보를 전달받을 수 있다.
상기 송수신부(14)는 전달받을 정보를 상기 가상 머신(V10) 배치 모의 실험 장치(10)가 구비하는 다른 구성으로 전달받을 수 있다.
또는 상기 가상 머신(V10) 배치 모의 실험 장치(10)가 구비하는 다른 구성으로부터 소정의 정보를 상기 송수신부(14)는 전달받을 수 있다.
사용자의 조작에 의해 상기 입력부(13)는 입력 신호를 발생시킬 수 있다.
상기 입력 신호를 상기 처리부(11)가 전달받을 경우, 상기 처리부(11)는 전달 받은 입력 신호에 대응되는 정보를 산출할 수 있다.
일례로, 상기 입력부(13)는 키보드일 수 있다.
다만, 이에 한정하지 않고 상기 입력부(13)의 종류는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.
표시부(15)(이하의 서술에서, 디스플레이부와 동일)는 상기 제어부(16)의 제어에 의해 소정의 이미지를 표시할 수 있다.
일례로, 상기 표시부는 디스플레이일 수 있다.
다만, 이에 한정하지 않고 상기 표시부의 종류는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.
상기 가상 머신(V10) 배치 모의 실험 장치(10)가 상기 가상 머신(V10) 배치 모의 실험 방법을 원활하게 수행할 수 있도록, 제어부(16)는 상기 처리부(11), 상기 저장부(12), 상기 입력부(13) 및 상기 송수신부(14)를 제어할 수 있다.
상기 가상 머신(V10) 배치 모의 실험 장치(10)의 구성들은 서로 유선 및/또는 무선으로 연결될 수 있다.
상기 가상 머신(V10) 배치 모의 실험 장치(10)의 구성들은 각 각 상기 물리 서버(P10)와 유선 및/또는 무선으로 연결될 수 있다.
물리 서버(P10)는 가상 머신(V10)이 실행될 수 있는 하드웨어 플랫폼을 의미할 수 있다.
일례로, 상기 물리 서버(P10)는 통상적인 데스크톱, 서버 컴퓨터, 랩톱 컴퓨터 또는 휴대 전화 등과 같은 것일 수 있다.
다만, 이에 한정하지 않고 상기 물리 서버(P10)는 가상 머신(V10)이 실행될 수 있는 모든 수단을 포함하는 개념일 수 있다.
상기 물리 서버(P10)는 제1 물리 서버(P10) 내지 제n 물리 서버(P10)(n은 2 이상의 자연수)을 구비할 수 있다.
이하, 상기 가상 머신(V10) 배치 모의 실험 방법 장치를 이용하여 구현되는 가상 머신(V10) 배치 모의 실험 방법에 대해서 자세하게 서술하도록 한다.
도 2는 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법의 순서도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법은, 시뮬레이션을 하기 위해 필요하며 미리 지정되는 정보인 지정 정보가 상기 입력부에 의해 발생된 신호에 의해 산출되는 단계(S10), 상기 저장부에 저장된 상기 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신에 의해 부과되는 물리 서버의 부하인 가상 머신 워크 로드와 관련된 정보인 가상 머신 워크 로드 정보가 산출되는 단계(S20), 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 산출되는 제1 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 발생 상태 정보가 산출되는 단계(S30) 및 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 이용하여 미리 정해진 예측 방법을 통해 상기 제2 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 예측되는 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계(S40)를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법은 미리 정해진 머신 배치 산출 방법에 의해 산출된 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보가 산출되는 단계(S50) 및 상기 최초 예측 가상 로드 정보를 기초로 상기 머신 배치 대로 상기 가상 머신이 상기 제1 물리 서버와 상기 제2 물리 서버 상에 배치될 경우에 상기 제2 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 예측 상태 정보가 산출되는 단계(S60)를 더 포함할 수 있다.
또한, 또한, 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법은복수의 상기 예측 상태 정보를 기초로 산출된 예측 상태 값의 최대값과 최소값 범위 내의 값과 관련된 정보인 후보 예측 상태 정보가 산출되는 단계(S70), 상기 예측 상태 값과 상기 후보 예측 상태 정보를 기초로 산출된 후보 예측 상태 값이 미리 정해진 표시 방법으로 디스플레이부에 표시되는 단계, 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 새로운 배치로서 선택된 배치인 선택 배치와 관련된 선택 배치 정보가 산출되는 단계(S80), 상기 가상 머신이 상기 과거 배치에 배치되었을 경우와 비교하여 상기 가상 머신이 상기 선택 배치에 배치되었을 때 획득되는 경제적 이익과 관련된 정보인 경제성 정보가 산출되는 단계(S90) 및 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 산출되며 제2 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 예측 상태 정보를 기초로 선택되는 상기 선택 배치로 상기 가상 머신이 배치되었을 경우와, 상기 발생 상태 정보의 기초가 되는 상기 가상 머신의 배치인 과거 배치로 상기 가상 머신이 배치되었을 경우의, 차이를 비교하기 위하여, 상기 발생 상태 정보와 상기 예측 상태 정보를 기초로 산출되는 비교 정보가 산출되는 단계(S100)를 포함할 수 있다.
이하, 각 단계에 대해서 자세하게 서술하도록 한다.
도 3은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 정보를 입력하는 단계를 설명하기 위한 도면이다.
도 3을 참조하면, 사용자는 디스플레이부(15)에 표시된 화면 상에 표시된 값들을 입력부를 통해 입력할 수 있다.
사용자는 상기 지정 정보를 입력할 물리 서버 및/또는 가상 머신을 선택할 수 있다.
사용자의 입력부 조작에 의해 상기 처리부는 상기 지정 정보를 산출할 수 있다.
상기 지정 정보는 시뮬레이션을 하기 위해 필요한 정보로서, 사용자에 의해 미리 지정되는 정보일 수 있다.
일례로, 상기 지정 정보는 각 각의 물리 서버의 사양(A10)과 관련된 정보를 포함할 수 있다.
일례로, 사용자는 상기 입력부를 통해 각 각의 물리 서버의 CPU 값(A11), Memory 값(A12), Network I/O 값(A13) 및/또는 Disk I/O(A14) 값을 입력할 수 있다.
일례로, 상기 지정 정보는 각 각의 가상 머신의 사양(Q10)과 관련된 정보를 포함할 수 있다.
일례로, 사용자는 상기 입력 부를 통해 물리 서버 상 임의의 가상 머신에게 할당되는 CPU율(Q11) 및/또는 임의의 가상 머신에게 할당되는 메모리율(Q12)을 입력할 수 있다.
일례로, 상기 지정 정보는 미리 정해진 머신 배치 산출 방법에 이용되는 목적 함수와 관련된 정보를 포함할 수 있다.
일례로, 디스플레이부(15) 상에는 상기 미리 정해진 머신 배치 산출 방법에 활용될 수 있는 목적 함수의 리스트들이 표시될 수 있고, 사용자는 상기 미리 정해진 머신 배치 산출 방법에 이용되고자 하는 목적 함수를 선택할 수 있다.
사용자의 선택에 의해 상기 지정 정보가 산출될 수 있다.
일례로, 목적 함수는 물리 서버의 부하의 변화량과 관련된 함수인 제1 목적 함수(F11), 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수(F12), 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수(F13) 및 상기 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수(14)를 구비할 수 있다.
상기 목적 함수에 대한 자세한 설명은 후술하도록 한다.
도 4는 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 선택 배치를 설정하기 위한 과정을 설명하기 위한 도면이다.
디스플레이부에 표시된 입력 값을 모두 입력 한 후에, 시뮬레이션을 실행시킬 수 있다.
상기 저장부에는 물리 서버들의 작동과 관련된 정보가 저장되어 있을 수 있다.
상기 처리부는 상기 물리 서버의 작동과 관련된 정보를 기초로 미리 정해진 워크 로드 산출 방법에 의해 상기 가상 머신 워크 로드 정보를 산출할 수 있다.
상기 가상 머신 워크 로드는 가상 머신이 물리 서버 상에서 구동되는 경우, 해당 물리 서버의 리소스의 부하를 의미할 수 있다.
상기 가상 머신 워크 로드는 상기 가상 머신이 상기 물리 서버 상에서 구동되는 경우 상기 물리 서버에 인가되는 부하를 의미할 수 있다.
일례로, 상기 가상 머신 워크 로드는 상기 가상 머신이 상기 물리 서버에서 동작되는 것에 의해 상기 물리 서버의 중앙처리장치(CPU)에 부과되는 부하로서 산출될 수 있다.
따라서, 상기 미리 정해진 워크 로드 산출 방법은 물리 서버의 중앙처리장치에 부과되는 부하로서 상기 가상 머신 워크 로드를 산출하는 방법을 포함할 수 있다.
다시 말해서, 상기 미리 정해진 워크 로드 산출 방법은 CPU의 가동 정도만을 기초로 상기 가상 머신 워크 로드 정보가 산출될 수 있다.
상기 미리 정해진 워크 로드 산출 방법 상에서는 하나의 가상 머신은 하나의 물리 서버 상에서만 실행될 수 있다고 가정할 수 있다.
일례로, 이는 하나의 가상 머신은 두 개의 물리 서버 상에서 구현될 수 없다는 것을 의미할 수 있다.
가상 머신의 워크 로드라는 것의 의미는 가상 머신이 동작되는 것에 의해 물리 서버에 부과되는 부하를 의미하는 것일 수 있다.
물리 서버의 워크 로드라는 것의 의미는 상기 물리 서버에 부과되는 부하를 의미할 수 있다.
일례로, 상기 물리 서버의 워크 로드는 상기 물리 서버의 중앙처리장치(CPU)에 부과되는 부하로서 산출될 수 있다.
일례로, 물리 서버의 워크 로드는 물리 서버에 배치되는 가상 머신들의 부하(워크 로드)인 가상 머신 워크 로드들의 합에 의해 산출될 수 있다.
이는, 후술하는 예측하는데 필요한 기초 데이터를 단순화 함으로써, 후술하는 단계에서 예측의 정확도를 더욱 상승시킬 수 있다.
상기 처리부는 제1 기간 동안의 상기 물리 서버가 동작되었던 것과 관련된 관련된 발생 상태 정보를 산출할 수 있다.
상기 발생 상태 정보는 상기 제1 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 부하와 관련된 정보인 발생 점유율 상태 정보, 상기 제1 기간 동안 상기 가상 머신이 상기 물리 서버 상에서 동작되는 과정에서 미리 정해진 기준의 위반 여부와 관련된 정보인 발생 위반 상태 정보, 상기 제1 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 발생 유휴 상태 정보 및 상기 제1 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 발생 이동 상태 정보를 포함할 수 있다.
상기 발생 점유 상태 정보는 제1 기간 동안 상기 가상 머신에 의해 부과되는 물리 서버의 부하 값과 관련된 정보일 수 있다.
일례로, 도 4를 참조하면, 상기 디스플레이부 상에는 각 각의 물리 서버의 부하(워크 로드) 값을 평균 그래프(W11), 최대값 그래프(W12), 최소값 그래프(W13)로 표현될 수 있다.
평균 그래프(W11)는 제1 기간 동안 각 물리 서버에 인가되는 워크 로드의 평균을 도시한 그래프를 의미할 수 있다.
최대값 그래프(W12)는 제1 기간 동안 각 물리 서버에 인가된 워크 로드 중 최대 값만을 추출하여 도시한 그래프를 의미할 수 있다.
최소값 그래프(W13)는 제1 기간 동안 각 물리 서버에 인가된 워크 로드 중 최소값만을 추출하여 도시한 그래프를 의미할 수 있다.
이러한 그래프를 통해, 사용자는 여태까지 물리 서버의 가동 정도를 명확하게 파악할 수 있다.
상기 발생 점유 상태 정보는 상기 가상 머신 워크 로드 정보를 기초로 산출될 수 있다.
발생 위반 상태 정보는 상기 가상 머신이 배치된 상기 물리 서버가 가동될 때 미리 정해진 기준의 위반 여부에 대한 정보일 수 있다.
상기 미리 정해진 기준은 상기 물리 서버가 가동되는 것으로 권장되는 소정의 기준을 의미할 수 있다.
일례로, 상기 미리 정해진 기준은 상기 물리 서버에 인가되는 워크 로드가 전체 워크 로드를 기준으로 총 90% 이하인 기준을 포함할 수 있다.
다만, 이에 한정하지 않고 상기 미리 정해진 기준은 사용 양태, 목적 및 장소에 따라 다양하게 변경 및 추가될 수 있다.
일례로, 도 4를 참조하면, 상기 디스플레이부 상에는 상기 발생 위반 상태 정보를 기초로 산출된 발생 위반 상태 값(E11)이 표시될 수 있다.
발생 유휴 상태 정보는 상기 물리 서버에 가상 머신이 배치되지 않아 물리 서버가 가동되지 않는 시간과 관련된 정보일 수 있다.
상기 발생 유휴 상태 정보는 모든 물리 서버에 대한 총 합으로서 산출될 수 있다.
일례로, 도 4를 참조하면, 상기 디스플레이부 상에는 상기 발생 유휴 상태 정보를 기초로 산출된 발생 유휴 상태 값(R11)이 표시될 수 있다.
발생 이동 상태 정보는 물리 서버 상에서 가상 머신이 이동한 횟수와 관련된 정보일 수 있다.
상기 발생 이동 상태 정보는 모든 물리 서버에 대한 총 합으로서 산출될 수 있다.
일례로, 도 4를 참조하면, 상기 디스플레이부 상에는 상기 발생 이동 상태 정보를 기초로 산출된 발생 이동 상태 값(T11)이 표시될 수 있다.
일례로, 도 4를 참조하면, 상기 디스플레이부(15)에는 상기 발생 상태 정보와 관련된 값들과 상기 예측 상태 정보와 관련된 값들을 동시에 표시할 수 있다.
이로써, 사용자는 변화 전과 변화 후를 명확하게 비교 판단할 수 있다.
이하, 상기 예측 상태 정보를 산출하기 위한 과정들에 대해서 자세하게 서술하도록 한다.
상기 처리부는 상기 가상 머신 워크 로드 정보를 이용하여 미리 정해진 예측 방법을 통해 미래의 기간인 제2 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 예측되는 부하와 연관된 최초 예측 가상 로드와 관련된 최초 예측 가상 로드 정보를 산출할 수 있다.
즉, 상기 저장부에 저장된 과정의 데이터를 기초로 미래에 가상 머신에 인가되는 물리 서버의 워크 로드가 어떻게 될지에 대해서 예측하는 과정일 수 있다.
일례로, 상기 미리 정해진 예측 방법은 상기 가상 머신 워크 로드 정보를 기초로 다중회귀모형, ARIMA 분석 또는 Deep Learning과 같은 알고리즘을 활용하여 상기 제2 기간 동안의 가상 머신 워크 로드 정보를 산출하는 방법일 수 있다.
다만, 이에 한정하지 않고 미래의 워크 로드를 예측하는 방법을 구현할 수 있는 공지의 모든 기술이 포함될 수 있고, 이에 대한 자세한 설명은 통상의 기술자에게 자명한 기술로서 이에 대한 자세한 설명은 생략될 수 있다.
일례로, 최초 예측 가상 로드란 상기 가상 머신 워크 로드 정보 산출 시점에서부터 제2 기간 동안 또는 임의의 시점에서부터 제2 기간 동안 예측되는 가상 머신의 워크 로드를 의미할 수 있다.
상기 처리부는 산출된 상기 최초 예측 가상 로드 정보를 기초로 미리 정해진 머신 배치 산출 방법에 의해 상기 머신 배치 정보를 산출할 수 있다.
상기 미리 정해진 머신 배치 산출 방법에 대해서는 이하 자세하게 서술하도록 한다.
머신 배치는 사용자에 의해 지정되는 목적 함수의 개수에 따라 개수가 달리질 수 있다.
일례로, 사용자에 의해 목적 함수가 3개가 지정된다면, 상기 머신 배치는 3가지로 산출될 수 있다.
이는, 목적 함수 각 각이 서로 비 지배해이기 때문일 수 있다.
상기 처리부는 각 각의 머신 배치대로 가상 머신이 물리 서버에 배치되었을 때의 예측 상태 정보를 산출할 수 있다.
즉, 목적 함수가 복수라면 예측 상태 정보도 복수개가 형성될 수 있다.
상기 예측 상태 정보는 최초 예측 가상 로드 정보를 기초로 산출될 수 있다.
상기 예측 상태 정보는 상기 제2 기간 동안 상기 가상 머신에 의해 부과될 것으로 예측되는 상기 물리 서버의 부하와 관련된 정보인 예측 점유율 상태 정보, 상기 제2 기간 동안 상기 임의의 배치로 상기 가상 머신이 상기 물리 서버 상에서 동작된다고 가정할 경우 상기 미리 정해진 기준의 위반 여부와 관련된 정보인 예측 위반 상태 정보, 상기 제2 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 예측 유휴 상태 정보 및 상기 제2 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 예측 이동 상태 정보 중 적어도 하나의 정보를 포함할 수 있다.
상기 예측 점유율 상태 정보는 제2 기간 동안 상기 가상 머신에 의해 부과되는 물리 서버의 부하 값과 관련된 정보일 수 있다.
일례로, 상기 디스플레이부 상에는 각 각의 물리 서버의 부하(워크 로드) 값을 평균 그래프(Z11), 최대값 그래프(Z12), 최소값 그래프(Z13)로 표현될 수 있다.
평균 그래프(Z11)는 제2 기간 동안 각 물리 서버에 인가되는 워크 로드의 평균을 도시한 그래프를 의미할 수 있다.
최대값 그래프(Z12)는 제2 기간 동안 각 물리 서버에 인가된 워크 로드 중 최대 값만을 추출하여 도시한 그래프를 의미할 수 있다.
최소값 그래프(Z13)는 제2 기간 동안 각 물리 서버에 인가된 워크 로드 중 최소값만을 추출하여 도시한 그래프를 의미할 수 있다.
이러한 그래프를 통해, 사용자는 여태까지 물리 서버의 가동 정도를 명확하게 파악할 수 있다.
상기 발생 점유 상태 정보는 상기 가상 머신 워크 로드 정보를 기초로 산출될 수 있다.
예측 위반 상태 정보는 제2 기간 동안 상기 물리 서버가 가동될 때 미리 정해진 기준의 위반 여부에 대한 정보일 수 있다.
상기 디스플레이부에는 상기 예측 위반 상태 정보에 대한 값인 예측 위반 상태 값(C11)이 표시될 수 있다.
상기 미리 정해진 기준에 대한 자세한 설명은 상술한 내용과 중복되는 한도에서 생략될 수 있다.
예측 유휴 상태 정보는 제2 기간 동안 물리 서버에 가상 머신이 배치되지 않아, 물리 서버가 가동되지 않는 시간과 관련된 정보일 수 있다.
상기 예측 유휴 상태 정보는 모든 물리 서버에 대한 총 합으로서 산출될 수 있다.
예측 이동 상태 정보는 제2 기간 동안 물리 서버 상에서 가상 머신이 이동한 횟수와 관련된 정보일 수 있다.
상기 예측 이동 상태 정보는 모든 물리 서버에 대한 총 합으로서 산출될 수 있다.
상기 처리부는 상기 예측 상태 정보를 각 각의 머신 배치 별로 산출할 수 있다.
상기 디스플레이부 상에는 각 각의 머신 배치를 선택할 수 있는 입력 마크가 표시될 수 있다.
상기 디스플레이부를 통해 입력되는 머신 배치 정보를 기초로 상기 디스플레이부에는 이에 대응되는 예측 상태 정보가 표시될 수 있다.
일례로, 도 4를 참조하면, 사용자가 4개의 목적 함수를 지정한 것에 의해 머신 배치가 4 개인 것을 가정할 수 있다.
이 때, 사용자가 제1 배치에 대해서 클릭을 할 경우, 제2 기간 동안 상기 가상 머신이 제1 배치에 배치될 때의 예측 상태 정보와 관련된 값들이 상기 디스플레이부에 표시될 수 있다.
반면에, 사용자가 제2 배치에 대해서 클릭을 할 경우, 제2 기간 동안 상기 가상 머신이 제2 배치에 배치될 때의 예측 상태 정보와 관련된 값들이 상기 디스플레이부에 표시될 수 있다.
다만, 사용자의 머신 배치의 선택과 관계없이, 예측 유휴 상태 정보와 관련된 예측 유휴 상태 값(B11, B12, B13, B14) 및/또는 예측 이동 상태 정보와 관련된 예측 이동 상태 값(N11, N12, N13, N14)은 모든 배치에 대한 값이 상기 디스플레이부에 표시될 수 있다.
이 때, 사용자가 지정한 가상 머신의 배치와 관계된 예측 유휴 상태 값과 예측 이동 상태 값에 대해서는 별도의 표식(L10)으로 상기 디스플레이부에 표시될 수 있다.
상기 처리부는 상기 예측 상태 정보를 기초로 후보 예측 상태 정보를 산출할 수 있다.
구체적으로 설명하자면, 상기 처리부는 각 각의 머신 배치에 대응되는 상기 예측 유휴 상태 정보를 기초로 산출되는 제1 후보 예측 상태 정보를 산출할 수 있다.
상기 제1 후보 예측 상태 정보에 대해서 자세하게 설명하자면, 각 각의 머신배치와 대응되는 예측 유휴 상태 값이 산출될 수 있다.
이 때, 최대 값을 가지는 예측 유휴 상태 값과 최소 값을 가지는 예측 유휴 상태 값 사이의 값들이 제1 후보 예측 상태 값일 수 있으며, 상기 제1 후보 예측 상태 값과 관련된 데이터가 제1 후보 예측 상태 정보일 수 있다.
구체적인 일례로서, 도 4를 참조하면, 사용자가 4개의 목적 함수를 지정한 것을 가정할 경우, 가상 머신이 제1 배치일 때 예측 유휴 상태 값(B11)은 2.3일 일 수 있고, 가상 머신이 제2 배치일 때 예측 유휴 상태 값(B12)은 1.1일 일 수 있고, 가상 머신이 제3 배치일 때 예측 유휴 상태 값(B13)은 4.3일 일 수 있고, 가상 머신이 제4 배치일 때 예측 유휴 상태 값(B14)은 5일 일 수 있다.
여기서, 최대 값을 가지는 예측 유휴 상태 값은 가상 머신이 제4 배치일 때의 예측 유휴 상태 값(B14)이고, 최소 값을 가지는 예측 유휴 상태 값은 가상 머신이 2 배치일 때 예측 유휴 상 값(B12)일 수 있다.
따라서, 상기 제1 후보 예측 상태 값(B15)은 가상 머신이 제1 배치일 때 예측 유휴 상태 값과 가상 머신이 제3 배치일 때 예측 유휴 상태 값을 제외한 1.1일 초과 5일 미만인 값일 수 있다.
또한, 상기 처리부는 각 각의 머신 배치에 대응되는 상기 예측 이동 상태 정보를 기초로 산출되는 제2 후보 예측 상태 정보를 산출할 수 있다.
마찬 가지로, 각 각의 머신 배치와 대응되는 예측 이동 상태 값이 산출될 수 있다.
이 때, 최대 값을 가지는 예측 이동 상태 값과 최소 값을 가지는 예측 이동 상태 값 사이의 값들이 제2 후보 예측 상태 값일 수 있으며, 상기 제2 후보 예측 상태 값과 관련된 데이터가 제2 후보 예측 상태 정보일 수 있다.
구체적인 일례로서, 도 4를 참조하면, 사용자가 4개의 목적 함수를 지정한 것을 가정할 경우, 가상 머신이 제1 배치일 때 예측 이동 상태 값(N11)은 15회일 수 있고, 가상 머신이 제2 배치일 때 예측 이동 상태 값(N12)은 12회일 수 있고, 가상 머신이 제3 배치일 때 예측 이동 상태 값(N13)은 23회일 수 있고, 가상 머신이 제4 배치일 때 예측 이동 상태 값(N14)은 7회일 수 있다.
여기서, 최대 값을 가지는 예측 이동 상태 값은 가상 머신이 제3 배치일 때의 예측 이동 상태 값(N13)이고, 최소 값을 가지는 예측 이동 상태 값은 가상 머신이 제4 배치일 때의 예측 이동 상태 값(N14)일 수 있다.
따라서, 상기 제2 후보 예측 상태 값(N15)은 가상 머신이 제2 배치일 때 예측 이동 상태 값(N12)과 가상 머신이 제1 배치일 때 예측 이동 상태 값(N11)을 제외한 7회 초과 23회 초과인 값일 수 있다.
상기 처리부는 상가 후보 예측 상태 값(B15, N15)을 미리 정해진 표시 방법으로 디스플레이부에 표시할 수 있다.
상기 미리 정해진 표시 방법은 예측 상태 값과 후보 예측 상태 값을 소정의 범위 형태(일례로, 막대 형식)로 표시하는 방법일 수 있다.
예측 상태 값은 상기 예측 상태 정보들을 기초로 산출되는 값을 의미할 수 있다.
상기 미리 정해 정보를 기초로 산출된 값을 의미할 수 있다.
구체적인 일례로서, 도 4를 참조하면, 미리 정해진 표시 방법은 상기 예측 유휴 상태 값(B11, B12, B13, B14)과 상기 제1 후보 예측 상태 값(B15)을 소정의 범위 형태로 표시하는 방법을 포함할 수 있다.
또한, 도 4를 참조하면, 상기 미리 정해진 표시 방법은 상기 예측 이동 상태 값(N11, N12, N13, N14)과 상기 제2 후보 예측 상태 값(N15)을 소정의 범위의 형태로 표시하는 방법을 포함할 수 있다.
이를 통해, 사용자는 각 각의 머신 배치들로 가상 머신이 배치되었을 경우 물리 서버의 상태를 효과적으로 비교할 수 있다.
사용자는 머신 배치들 중에서 하나의 가상 머신의 배치를 선택할 수 있다.
도 5는 본 발명의 일 실시에에 따른 가상 머신 배치 모의 실험 방법 중에서 경제성 정보와 비교 정보를 산출 및 표시하는 과정을 설명하기 위한 도면이다.
사용자가 가상 머신의 배치를 선택할 경우, 선택 배치 정보가 산출될 수 있다.
상기 처리부는 사용자가 선택한 가상 머신의 배치인 선택 배치와 관련된 선택 배치 정보를 기초로 상기 경제성 정보를 산출할 수 있다.
경제성 정보는 경제적 지표와 관련된 데이터를 의미할 수 있다.
여기서, 경제성 정보에 대한 경제적 지표는 제1 기간 동안 상기 가상 머신이 과거 배치로 배치된 것과 비교하여 제2 기간 동안 상기 가상 머신이 선택 배치로 배치될 때 발생되는 경제적 이익과 관련된 지표일 수 있다.
일례로, 상기 경제적 지표는 투자수익률(ROI), 순현재가지(NPV), 내부수익률(IRR), 회수기간(BEP)등과 같은 지표를 포함할 수 있다.
일례로, 상기 처리부는 가상 머신이 과거 배치로 물리 서버 상에 배치되었을 경우에 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 물리 서버를 운영하는 데 발생되는 요금을 산출할 수 있다.
또한, 상기 처리부는 가상 머신이 선택 배치로 물리 서버 상에 배치되었을 경우에 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 물리 서버를 운영하는데 필요한 예상 요금을 산출할 수 있다.
이를 기초로 상기 처리부는 이익 금액을 산출하여 상기 경제적 지표들을 산출할 수 있다.
다시 말하면, 상기 경제성 정보는 상기 발생 유휴 상태 정보 및 상기 예측 유휴 상태 정보를 기초로 산출될 수 있다.
여기서, 투자금에 대한 정보는 저장부에 미리 저장될 수 도 있다.
또는 투자금에 대한 정보는 입력부에서 발생되는 신호에 의해 발생될 수 있다.
또한, 상기 처리부는 제1 기간 동안 상기 가상 머신이 과거 배치로 배치된 것과 비교하여 제2 기간 동안 상기 가상 머신이 선택 배치로 배치될 때를 서로 비교하는 비교 정보를 산출할 수 있다.
상기 비교 정보는 선택 배치로 가상 머신을 물리 서버 상에 배치할 경우 이전보다 더 개선된 점을 제공하는 정보와 관련될 수도 있다.
상기 디스플레이부 상에는 상기 비교 정보를 기초로 산출된 비교 값(G11)들이 표시될 수 있다.
또한, 상기 디스플레이부 상에는 상기 경제성 지표에 의해 산출된 경제성 지표 값(K11, K12, K13, K14)들이 표시될 수 있다.
일례로, 상기 비교 정보는 발생 점유 상태 정보와 예측 점유율 상태 정보를 기초로 산출되는 정보를 포함할 수 있다.
일례로, 상기 비교 정보는 물리 서버의 워크 로드의 개선된 점에 대한 정보일 수 있다.
일례로, 상기 비교 정보는 발생 위반 상태 정보와 예측 위반 상태 정보를 기초로 산출되는 정보일 수 잇다.
일례로, 상기 비교 정보는 발생 위반 상태 값과 예측 위반 상태 값을 기초로 산출되는 정보를 포함할 수 있다.
일례로, 상기 발생 위반 상태 값이 10이고, 상기 예측 위반 상태 값이 5라면, 발생 위반 상태 정보와 예측 위반 상태 정보를 기초로 산출되는 상기 비교 값은 5일 수 있다.
마찬가지 방식으로, 상기 비교 정보는 발생 유휴 상태 정보와 예측 유휴 상태 정보를 기초로 산출되는 정보일 수 있다.
즉, 상기 비교 정보는 발생 유휴 상태 값과 예측 유휴 상태 값을 기초로 산출되는 정보를 포함할 수 있다.
또한, 상기 비교 정보는 발생 이동 상태 정보와 예측 이동 상태 정보를 기초로 산출되는 정보일 수 있다.
즉, 상기 비교 정보는 발생 이동 상태 값과 예측 이동 상태 값을 기초로 산출되는 정보를 포함할 수 있다.
디스플레이부에 표시되는 비교 값을 보면서 사용자는 선택 배치로 배치하였을 경우에 획득할 수 있는 경제적 이익을 쉽게 인지할 수 있다.
또한, 상기 디스플레이부 상에는 선택 배치로 가상 머신이 물리 서버 상에 배치될 때와 대응되는 예측 상태 값이 상기 비교 값과 함께 표시될 수 있다.
제1 기간은 시뮬레이션을 수행하기 전의 일정한 기간을 의미할 수 있다.
상기 제1 기간 동안에 상기 물리 서버의 동작과 관련된 정보는 상기 저장부에 저장되어 있을 수 있다.
상술한 모의 실험 방법을 통하여, 가상 머신을 재 배치 하지 않아도, 미리 가상 머신 배치 효과에 대해서 분석할 수 있다.
이하, 미리 정해진 머신 배치 산출 방법에 대해서 자세하게 서술하도록 한다.
미리 정해진 머신 배치 산출 방법은 배치 이동 기간(제2 기간) 동안 가상 머신의 배치 이동을 허용하는 제1 미리 정해진 머신 배치 산출 방법 및 배치 이동 기간 동안 가상 머신의 배치 이동이 고려되지 않는 제2 미리 정해진 머신 배치 산출 방법을 구비할 수 있다.
사용자는 앞서 정보 입력 단계에서 어느 유형의 미리 정해진 머신 배치 산출 방법을 채택할 것인지 선택할 수 있다.
이하, 제1 미리 정해진 머신 배치 산출 방법에 대해서 자세하게 서술하도록 한다.
상기 처리부는 제1 미리 정해진 머신 배치 산출 방법에 의해 물리 서버(상기 제1 물리 서버와 상기 제2 물리 서버) 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보를 산출할 수 있다.
여기서, 상기 제1 미리 정해진 머신 배치 산출 방법은, 상기 최초 예측 가상 로드 정보를 기초로 목적 함수 값이 최소화될 때의 상기 가상 머신의 배치가 산출되는 방법을 의미할 수 있다.
상기 제1 미리 정해진 머신 배치 산출 방법은 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과되도록, 상기 가상 머신의 머신 배치가 산출되는 방법을 포함할 수 있다. (제1 조건)
일례로, 상기 미리 정해진 범위는 물리 서버의 가동률(부하가 부과되는 정도)이 10% ~ 80%일 수 있다.
다만, 이에 한정하지 않고 상기 미리 정해진 범위는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.
상기 제1 미리 정해진 머신 배치 산출 방법은 상기 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과될 수 있도록, 상기 임의의 물리 서버의 부하가 제1 기준(X10, 도 6 및 도 7 참조) 이상 될 것으로 예측될 경우에는, 상기 임의의 물리 서버에 배치된 상기 가상 머신들 중 적어도 하나의 상기 가상 머신을 다른 물리 서버로 이동시키는 방법을 포함할 수 있다. (제1-1 조건)
일례로, 상기 제1 기준(X10, 도 3 및 도 4 참조)은 상기 물리 서버의 가동률(부하가 부과되는 정도)이 80 %인 것을 의미할 수 있다.
상기 처리부는 상기 물리 서버의 부하가 제1 기준이 넘지 않도록 하는 해결 방법으로, 대상 물리 서버의 워크 로드가 제1 기준이 넘을 것으로 예측되는 시점을 기준으로, 상기 대상 물리 서버에 배치되는 적어도 하나의 가상 머신을 다른 물리 서버로 이전 하는 방법을 이용하여 상기 머신 배치를 산출할 수 있다.
이로 인해, 상기 물리 서버의 워크 로드(가동률)가 제1 기준을 넘어 과잉 부하가 인가되는 것을 효과적으로 예방할 수 있다.
다만, 이에 한정하지 않고 상기 제1 기준은 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.
또한, 상기 제1 미리 정해진 머신 배치 산출 방법은 상기 임의의 물리 서버에 대해서 상기 물리 서버의 부하가 미리 정해진 범위 내에서만 부과될 수 있도록, 상기 임의의 물리 서버의 부하가 제2 기준(X20, 도 3 및 도 4 참조) 이하 될 것으로 예측될 경우에는, 상기 임의의 물리 서버에 배치된 상기 가상 머신들 모두를 다른 물리 서버로 이동시키는 방법을 포함할 수 있다. (제1-2 조건)
일례로, 상기 제2 기준(X20, 도 6 및 도 7 참조)은 상기 물리 서버의 가동률(부하가 부과되는 정도)이 10 %인 것을 의미할 수 있다.
상기 처리부는 상기 물리 서버 부하가 제2 기준 이하로 되지 않도록 하는 해결 방법으로, 대상 물리 서버의 워크 로드가 제2 기준 이하로 떨어질 것으로 예측되는 시점을 기준으로, 상기 대상 물리 서버에 배치되는 모든 가상 머신들을 다른 물리 서버로 이전하는 방법을 이용하여 상기 머신 배치를 산출할 수 있다.
이는, 물리 서버가 가동되지 않는 조건의 개시 조건을 의미할 수 있다.
다시 말하면, 상기 처리부는 상기 물리 서버 부하가 제2 기준 이하로 되지 않도록 하는 해결 방법으로, 대상 물리 서버에 배치된 가상 머신을 다른 물리 서버로 배치하여, 대상 물리 서버의 동작을 정지시킬 수 있다.
상기 제1 미리 정해진 머신 배치 산출 방법은 가동되지 않는 상기 물리 서버가 가동되도록 하는 상기 가상 머신의 이동으로 인해 가동 중인 상기 물리 서버가 가동되지 않는 상태로 변화되지 않도록, 상기 머신 배치가 산출되는 방법을 포함할 수 있다. (제2 조건)
하나의 물리 서버를 중단 시키는 것과 동시에 다른 물리 서버의 동작을 개시하게 되면, 물리 서버를 중단 시키는 것에 대한 이익이 없으며, 서버를 가동하는데 발생되는 전력 및 시간이 더 소요되기 문제가 발생된다.
따라서, 제2 조건을 통해, 이와 같은 문제를 해결하고자 하는 것일 수 있다.
또한, 상기 제1 미리 정해진 머신 배치 산출 방법으로 머신 배치를 산출하는 경우, 제2 기간 동안에 물리 서버들 간의 가상 머신의 이동이 허용되도록 머신 배치가 산출될 수 있다. (제3 조건)
다만, 가상 머신의 이동이 잦을 경우 데이터 손실이 유발될 수 있기 때문에, 제2 기간(분서 기간) 동안의 하나의 가상 머신의 이동을 소정 횟수로 제한할 수 있다. (제4 조건)
일례로, 소정 횟수는 2회일 수 있다.
다만, 이에 한정하지 않고 상기 소정 횟수는 통상의 기술자에게 자명한 수준에서 다양하게 변형 가능하다.
또한, 상기 제1 미리 정해진 머신 배치 산출 방법으로 머신 배치를 산출하는 경우, 각 각의 물리 서버의 사양이 동일(homogenous 조건)하다고 가정하여 머신 배치를 산출할 수 있다. (제5 조건)
상기 목적 함수는 제1 목적 함수, 제2 목적 함수, 제 3 목적 함수 및 제4 목적 함수를 구비할 수 있다.
처리부는 각 각의 목적 함수 값들이 최소 값을 갖는 비 지배해 4 개를 산출할 수 있다.
이하, 목적 함수에 대해서 자세하게 서술하도록 한다.
도 6은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 고려되는 제1 목적 함수를 설명하기 위한 도면이다.
도6을 참조하면, 상기 목적 함수는 제2 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하(워크 로드)의 변화 량과 관련된 함수인 제1 목적 함수를 구비할 수 있다.
일례로, 도 6(a)는 제1 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.
또한, 도 6(b)는 제2 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.
각 각의 물리 서버의 워크 로드는 각 물리 서버에 설치된 가상 머신 워크 로드들의 합으로 산출될 수 있음을 상술된 내용에서 확인할 수 있다.
도 6(a)를 참조하면, 가상 머신들이 제1 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준 미만(X10) 및 제2 기준 초과(X20)가 될 수 있다.
또한, 도 6(b)를 참조하면, 가상 머신들이 제2 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준 미만(X10) 및 제2 기준 초과(X20)가 될 수 있다.
다만, 제2 일정을 기초로 하여 가상 머신들이 물리 서버에 배치되는 경우, 제1 일정을 기초로 가상 머신들이 물리 서버에 배치되는 경우보다, 각 각의 물리 서버의 워크 로드의 변화량(기울기)가 더 작을 수 있다.
이는, 물리 서버 상의 가상 머신의 머신 배치로서 제1 일정보다 제2 일정이 더 바람직한 일정일 수 있다.
또한, 상기 제2 일정이 도출되도록 하는 제1 목적 함수의 값이 상기 제1 일정이 도출되도록 하는 제1 목적 함수의 값 보다 더 작을 수 있다.
만일 물리 서버의 워크 로드의 변화율이 크다면, 짧은 시간 동안만 물리 서버의 워크 로드가 임의의 기준이 넘어, 가상 머신의 마이그레이션(이전)이 이루어질 수 있다.
이럴 경우, 앞서 상술한 가상 머신의 잦은 마이그레이션이 발생될 수 있으므로, 가상 머신의 데이터 손실의 위험성이 더욱 높아질 수 있다.
제1 목적 함수는 이를 예방하기 위한 함수일 수 있다.
도 7은 본 발명의 일 실시예에 따른 가상 머신 배치 모의 실험 방법 중에서 고려되는 제2 목적 함수를 설명하기 위한 도면이다.
도 7을 참조하면, 상기 목적 함수는 제2 기간 동안, 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하(워크 로드)들 간의 차이와 관련된 함수인 제2 목적 함수를 구비할 수 있다.
일례로, 도 7(a)는 제3 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.
또한, 도 7(b)는 제4 일정에 따라 가상 머신들이 제1 물리 서버 내지 제3 물리 서버에 배치되는 경우, 상기 제1 물리 서버 내지 제3 물리 서버의 워크 로드를 도시한 그래프이다.
각 각의 물리 서버의 워크 로드는 각 물리 서버에 설치된 가상 머신 워크 로드들의 합으로 산출될 수 있음을 상술된 내용에서 확인할 수 있다.
도 7(a)를 참조하면, 가상 머신들이 제3 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준(X10) 미만 및 제2 기준(X20) 초과가 될 수 있다.
또한, 도 7(b)를 참조하면, 가상 머신들이 제4 일정에 따라 물리 서버 상에 배치되는 경우, 모든 물리 서버의 워크 로드가 제1 기준(X10) 미만 및 제2 기준(X20) 초과가 될 수 있다.
다만, 제4 일정을 기초로 하여 가상 머신들이 물리 서버에 배치되는 경우, 제3 일정을 기초로 가상 머신들이 물리 서버에 배치되는 경우보다, 각 각의 물리 서버의 워크 로드들 간의 차이가 더 작을 수 있다.
이는, 물리 서버 상의 가상 머신의 머신 배치로서 제3 일정보다 제4 일정이 더 바람직한 일정일 수 있다.
또한, 상기 제4 일정이 도출되도록 하는 제2 목적 함수의 값이 상기 제3 일정이 도출되도록 하는 제2 목적 함수의 값 보다 더 작을 수 있다.
여기서, 물리 서버들 간의 워크 로드를 비교하기 위해서, 상기 미리 정해진 제1 기간 동안의 물리 서버의 워크 로드의 평균 값을 활용하여 물리 서버들이 서로 비교될 수 있다.
제2 목적 함수의 의미는 물리 서버를 고르게 활용하고자 함일 수 있다.
상기 목적 함수는 상기 가상 머신이 상기 머신 배치에 따라 배치되기 위해서 상기 제1 물리 서버와 상기 제2 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수를 구비할 수 있다.
다시 말하면, 상기 제3 목적 함수는 현재의 가상 머신들의 배치에서 머신 배치를 따라 배치되기 위하여 물리 서버들 사이에서 가상 머신의 이동 횟수와 관련될 수 있다.
상기 제3 목적 함수의 의미는, 상기 가상 머신의 이동 횟수를 최소하는 배치를 찾고자 함일 수 있다.
가상 머신이 마이그레이션 될 때 마다 데이터 손실의 위험성을 항상 내포하고 있다.
제3 목적 함수의 의미는 데이터 손실 가능성을 최소화하는데 있을 수 있다.
상기 목적 함수는 제2 기간 동안, 상기 제1 물리 서버의 가동 여부 및 상기 제2 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 구비할 수 있다.
다시 말하면, 상기 제4 목적 함수는 상기 미리 정해진 제1 기간 동안 물리 서버의 가동 여부와 관련된 함수일 수 있다.
제4 목적 함수가 작을수록 가동되지 않는 물리 서버의 개수 및 물리 서버의 가동되지 않는 시간이 최대로 될 수 있다.
상기 제4 목적 함수가 최소일 경우, 모든 물리 서버에 대해서 물리 서버 한대 당 가동되지 않는 시간들의 총합이 최대로 될 수 있다.
제4 목적 함수의 의미는 서버 가동 시간을 최소화 하여 물리 서버 가동에 따란 전력 손실을 최소화 하는데 의미가 있을 수 있다.
머신 배치는 제1 조건 내지 제5 조건이 만족되는 상태에서 각각의 목적 함수가 최소화될 수 있도록, 물리 서버들 상에서 가상 머신들이 어떻게 배치되는지에 대한 물리 서버 상의 가상 머신의 배치를 의미할 수 있다.
상기 목적 함수는 제2 기간 동안 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하의 변화 량과 관련된 함수인 제1 목적 함수, 상기 제2 기간 동안 상기 최초 예측 가상 로드에 의해 산출되는 물리 서버의 부하들 간의 차이와 관련된 함수인 제2 목적 함수, 상기 가상 머신이 상기 머신 배치로 배치되기 위해서 상기 물리 서버 상에서 상기 가상 머신이 배치 이동되는 횟수와 관련된 함수인 제3 목적 함수 및 상기 제2 기간 동안, 상기 물리 서버의 가동 여부와 관련된 함수인 제4 목적 함수를 구비할 수 있다.
일례로, 상기 물리 서버는 제1 물리 서버 및 상기 제1 물리 서버와 분리되는 제2 물리 서버를 구비할 수 있다.
상기 머신 배치는 상기 제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 배치만을 구비할 수 있으며, 이에 대한 자세한 설명은 상술한 내용과 중복되는 한도에서 생략될 수 있다.
이하, 제2 미리 정해진 머신 배치 산출 방법에 대해서 자세하게 서술하도록 한다.
상기 처리부는 제2 미리 정해진 머신 배치 산출 방법에 의해 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보를 산출할 수 있다.
여기서, 상기 제2 미리 정해진 머신 배치 산출 방법으로 머신 배치를 산출하는 경우, 각 각의 물리 서버의 사양이 동일(homogenous 조건)하다고 가정하여 머신 배치를 산출할 수 있다.
상기 제1 미리 정해진 머신 배치 산출 방법에 적용되는 제1 조건 내지 제4 조건은 제2 미리 정해진 머신 배치 산출 방법에는 적용되지 않을 수 있다.
상기 제2 미리 정해진 머신 배치 산출 방법은 제1 목적 함수, 제2 목적 함수 및 제3 목적 함수 만이 고려될 수 있다.
이하, 상기 제2 미리 정해진 머신 배치 산출 방법에 대한 자세한 설명은 상기 제1 미리 정해진 머신 배치 산출 방법과 중복되는 한도에서 생략될 수 있다.
첨부된 도면은 본 발명의 기술적 사상을 보다 명확하게 표현하기 위해, 본 발명의 기술적 사상과 관련성이 없거나 떨어지는 구성에 대해서는 간략하게 표현하거나 생략하였다.
상기에서는 본 발명에 따른 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.
11 : 처리부 12 : 저장부
13 : 입력부 14 : 송수신부
15 : 표시부 16 : 제어부

Claims (11)

  1. 물리 서버 - 상기 물리 서버는 제1 물리 서버 및 상기 제1 물리 서버와 물리적으로 분리된 제2 물리 서버를 구비함. - 에 배치된 가상 머신의 배치를 변경하는 것을 시뮬레이션하는 방법인 가상 머신 배치 모의 실험 방법이 수행되기 위해 필요한 정보가 처리되는 처리부;
    상기 가상 머신 배치 모의 실험 방법이 수행되기 위해 필요한 정보가 저장되는 저장부;
    사용자의 조작에 의해 상기 가상 머신 배치 모의 실험 방법이 수행되는데 필요한 정보와 관련된 신호를 생성시키는 입력부;
    상기 가상 머신 배치 모의 실험 방법이 수행되기 위해 필요한 정보를 송 수신하는 송수신부;
    이미지를 표시하는 디스플레이부; 및
    상기 가상 머신 배치 모의 실험 방법이 수행되기 위해 상기 처리부, 상기 저장부, 상기 입력부, 상기 송수신부와 상기 디스플레이부를 제어하는 제어부;를 포함하고,
    상기 가상 머신 배치 모의 실험 방법은,
    상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 기초로 산출되는 제1 기간 동안의 상기 제1 물리 서버와 상기 제2 물리 서버의 상태와 관련된 정보인 발생 상태 정보가 산출되는 단계;
    상기 저장부에 저장된 상기 제1 물리 서버와 상기 제2 물리 서버의 작동과 관련된 정보를 이용하여 미리 정해진 예측 방법을 통해 제2 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 예측되는 부하와 연관된 최초 예측 가상 로드와 관련된 정보인 최초 예측 가상 로드 정보가 산출되는 단계;
    미리 정해진 머신 배치 산출 방법에 의해 산출된 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 배치인 머신 배치와 관련된 정보인 머신 배치 정보가 산출되는 단계;
    상기 머신 배치대로 상기 가상 머신이 상기 물리 서버에 배치되었을 때의 예측으로서 상기 최초 예측 가상 로드 정보를 기초로 산출되는 복수의 예측 상태 정보를 기초로 산출된 예측 상태 값의 최대값과 최소값 범위 내의 값과 관련된 정보인 후보 예측 상태 정보가 산출되는 단계; 및
    상기 예측 상태 값과 상기 후보 예측 상태 정보를 기초로 산출된 후보 예측 상태 값이 미리 정해진 표시 방법으로 디스플레이부에 표시되는 단계;를 포함하며,
    상기 예측 상태 정보는,
    상기 최초 예측 가상 로드 정보를 기초로 산출되며,
    상기 미리 정해진 머신 배치 산출 방법은,
    상기 최초 예측 가상 로드 정보를 기초로 복수의 목적 함수 값이 최소화될 때 상기 머신 배치를 복 수개 산출하는 방법이며,
    상기 미리 정해진 표시 방법은,
    상기 예측 상태 값과 상기 후보 예측 상태 값을 소정의 범위 형태로 표시하는 방법인,
    가상 머신 배치 모의 실험 장치.
  2. 제1항에 있어서,
    상기 가상 머신 배치 모의 실험 방법은,
    상기 후보 예측 상태 정보가 산출된 후에, 상기 제1 물리 서버와 상기 제2 물리 서버 상의 상기 가상 머신의 새로운 배치로서, 상기 머신 배치 중 하나의 배치로 선택된 배치인 선택 배치와 관련된 선택 배치 정보가 산출되는 단계를 더 구비하는,
    가상 머신 배치 모의 실험 장치.
  3. 제2항에 있어서,
    상기 가상 머신 배치 모의 실험 방법은,
    상기 선택 배치 정보가 산출된 후, 상기 선택 배치로 상기 가상 머신이 배치되었을 경우와, 상기 발생 상태 정보의 기초가 되는 상기 가상 머신의 배치인 과거 배치로 상기 가상 머신이 배치되었을 경우의 차이를 비교하기 위하여, 상기 발생 상태 정보와 상기 예측 상태 정보를 기초로 산출되는 비교 정보가 산출되는 단계;를 더 구비하는,
    상기 디스플레이부에 표시되는 단계는,
    상기 디스플레이부를 통해 상기 비교 정보가 표시되는,
    가상 머신 배치 모의 실험 장치.
  4. 제3항에 있어서,
    상기 발생 상태 정보는,
    상기 제1 기간 동안 상기 가상 머신에 의해 부과되는 상기 물리 서버의 부하와 관련된 정보인 발생 점유율 상태 정보, 상기 제1 기간 동안 상기 가상 머신이 상기 물리 서버 상에서 동작되는 과정에서 미리 정해진 기준의 위반 여부와 관련된 정보인 발생 위반 상태 정보, 상기 제1 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 발생 유휴 상태 정보 및 상기 제1 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 발생 이동 상태 정보 중 적어도 하나의 정보를 포함하고,
    상기 예측 상태 정보는,
    상기 제2 기간 동안 상기 가상 머신에 의해 부과될 것으로 예측되는 상기 물리 서버의 부하와 관련된 정보인 예측 점유율 상태 정보, 상기 제2 기간 동안 임의의 배치로 상기 가상 머신이 상기 물리 서버 상에서 동작된다고 가정할 경우 상기 미리 정해진 기준의 위반 여부와 관련된 정보인 예측 위반 상태 정보, 상기 제2 기간 중에서 상기 물리 서버에 상기 가상 머신이 배치되지 않아 상기 물리 서버가 동작되지 않은 시간과 관련된 정보인 예측 유휴 상태 정보 및 상기 제2 기간 동안 상기 가상 머신의 이동 횟수와 관련된 정보인 예측 이동 상태 정보 중 적어도 하나의 정보를 포함하는,
    가상 머신 배치 모의 실험 장치.
  5. 제4항에 있어서,
    상기 비교 정보는,
    상기 발생 유휴 상태 정보를 기초로 산출된 발생 유휴 상태 값과 상기 예측 유휴 상태 정보를 기초로 산출된 예측 유휴 상태 값을 기초로 산출되는 정보를 포함하는,
    가상 머신 배치 모의 실험 장치.
  6. 삭제
  7. 제3항에 있어서,
    상기 가상 머신 배치 모의 실험 방법은,
    상기 선택 배치 정보가 산출된 후, 상기 가상 머신이 상기 과거 배치에 배치되었을 경우와 비교하여 상기 가상 머신이 상기 선택 배치에 배치되었을 때 획득되는 경제적 이익과 관련된 정보인 경제성 정보가 산출되는 단계;을 더 구비하는,
    가상 머신 배치 모의 실험 장치.
  8. 제7항에 있어서,
    상기 경제성 정보는,
    투자수익률(ROI), 순현재가치(NPV), 내부수익률(IRR), 회수기간(BEP)의 경제적 지표를 포함하는,
    가상 머신 배치 모의 실험 장치.
  9. 제7항에 있어서,
    상기 경제성 정보는,
    상기 가상 머신이 과거 배치로 물리 서버 상에 배치되었을 경우에 상기 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 상기 물리 서버를 운영하는데 발생되는 요금과 상기 가상 머신이 상기 선택 배치로 상기 물리 서버 상에 배치되었을 경우에 상기 물리 서버의 가동 시간과 단위 당 발생되는 전기료를 기초로 상기 물리 서버를 운영하는데 필요한 예상 요금을 기초로 산출되는,
    가상 머신 배치 모의 실험 장치.
  10. 제7항에 있어서,
    상기 디스플레이부는,
    상기 비교 정보를 기초로 산출된 비교 값이 표시되는,
    가상 머신 배치 모의 실험 장치.
  11. 제1항에 있어서,
    상기 가상 머신 배치 모의 실험 방법은,
    복수의 목적 함수 리스트 중에서 상기 미리 정해진 머신 배치 산출 방법에 이용되고자 하는 목적 함수가 선택되는 단계;를 더 구비하는,
    가상 머신 배치 모의 실험 장치.



KR1020200078476A 2019-08-19 2020-06-26 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치 KR102347371B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200078476A KR102347371B1 (ko) 2019-08-19 2020-06-26 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190101200A KR102135209B1 (ko) 2019-08-19 2019-08-19 가상 머신 배치 모의 실험 방법 및 이를 구현하는 가상 머신 배치 모의 실험 장치
KR1020200078476A KR102347371B1 (ko) 2019-08-19 2020-06-26 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190101200A Division KR102135209B1 (ko) 2019-07-31 2019-08-19 가상 머신 배치 모의 실험 방법 및 이를 구현하는 가상 머신 배치 모의 실험 장치

Publications (2)

Publication Number Publication Date
KR20210021907A KR20210021907A (ko) 2021-03-02
KR102347371B1 true KR102347371B1 (ko) 2022-01-05

Family

ID=79348713

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200078476A KR102347371B1 (ko) 2019-08-19 2020-06-26 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치

Country Status (1)

Country Link
KR (1) KR102347371B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170787A (ja) 2010-02-22 2011-09-01 Nippon Telegraph & Telephone West Corp リソース割当装置、リソース割当方法、およびリソース割当制御プログラム
JP2011186701A (ja) 2010-03-08 2011-09-22 Nec Corp リソース割当装置、リソース割当方法、およびリソース割当プログラム
JP2012159928A (ja) 2011-01-31 2012-08-23 Internatl Business Mach Corp <Ibm> 情報処理装置、情報処理システム、配置構成決定方法、プログラムおよび記録媒体
JP2014006739A (ja) 2012-06-25 2014-01-16 Fujitsu Ltd プログラム、管理サーバおよび仮想マシン移動制御方法
KR101867487B1 (ko) 2016-12-23 2018-07-18 경희대학교 산학협력단 클라우드 환경에서 퍼지기반의 마이그레이션 시스템 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5338906B2 (ja) * 2009-06-01 2013-11-13 富士通株式会社 サーバ管理プログラム、管理サーバ、仮想サーバ配置方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011170787A (ja) 2010-02-22 2011-09-01 Nippon Telegraph & Telephone West Corp リソース割当装置、リソース割当方法、およびリソース割当制御プログラム
JP2011186701A (ja) 2010-03-08 2011-09-22 Nec Corp リソース割当装置、リソース割当方法、およびリソース割当プログラム
JP2012159928A (ja) 2011-01-31 2012-08-23 Internatl Business Mach Corp <Ibm> 情報処理装置、情報処理システム、配置構成決定方法、プログラムおよび記録媒体
JP2014006739A (ja) 2012-06-25 2014-01-16 Fujitsu Ltd プログラム、管理サーバおよび仮想マシン移動制御方法
KR101867487B1 (ko) 2016-12-23 2018-07-18 경희대학교 산학협력단 클라우드 환경에서 퍼지기반의 마이그레이션 시스템 및 방법

Also Published As

Publication number Publication date
KR20210021907A (ko) 2021-03-02

Similar Documents

Publication Publication Date Title
US20210224114A1 (en) Capacity Analysis Using Closed-System Modules
Ranjbari et al. A learning automata-based algorithm for energy and SLA efficient consolidation of virtual machines in cloud data centers
Askarizade Haghighi et al. An energy-efficient dynamic resource management approach based on clustering and meta-heuristic algorithms in cloud computing IaaS platforms: Energy efficient dynamic cloud resource management
Bui et al. Energy efficiency for cloud computing system based on predictive optimization
US9501115B2 (en) Optimizing power consumption by dynamic workload adjustment
Xie et al. Real-time prediction of docker container resource load based on a hybrid model of ARIMA and triple exponential smoothing
KR102109088B1 (ko) 가상 머신 예측 워크 로드 산출 방법 및 이를 구현하는 예측 장치
KR102135208B1 (ko) 스케줄링을 통한 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치
CN104781795A (zh) 存储层的动态选择
Wang et al. An energy-aware bi-level optimization model for multi-job scheduling problems under cloud computing
CN102770826A (zh) 虚拟机功耗测量和管理
Riahi et al. A multi-objective decision support framework for virtual machine placement in cloud data centers: a real case study
Sun et al. Energy-efficient and thermal-aware resource management for heterogeneous datacenters
Patel et al. Energy-aware prediction-based load balancing approach with VM migration for the cloud environment
Mohamadi Bahram Abadi et al. Server consolidation techniques in virtualized data centers of cloud environments: a systematic literature review
US20230229487A1 (en) Virtual machine deployment method, virtual machine management method having the same and virtual machine management system implementing the same
KR102347375B1 (ko) 복수의 예측 모델을 기초로 가상 머신 워크 로드 예측 방법
KR102135209B1 (ko) 가상 머신 배치 모의 실험 방법 및 이를 구현하는 가상 머신 배치 모의 실험 장치
KR102062157B1 (ko) 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치
Hirashima et al. Proactive-reactive auto-scaling mechanism for unpredictable load change
Akoglu et al. Putting data science pipelines on the edge
US10002173B1 (en) System and methods for dynamically adjusting between asynchronous and synchronous data replication policies in a networked virtualization environment
KR102347371B1 (ko) 딥러닝을 이용한 가상 머신 배치 시뮬레이션 방법 및 이를 실행하는 가상 머신 배치 모의 실험 장치
KR102316749B1 (ko) 가상 머신 워크로드 예측 방법, 가상 머신 배치 방법 및 이를 구현하는 가상 머신 배치 장치
Kherbache et al. Scheduling live-migrations for fast, adaptable and energy-efficient relocation operations

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right