KR102283364B1 - 가상화 환경에서, 대역폭 조절 방법 - Google Patents

가상화 환경에서, 대역폭 조절 방법 Download PDF

Info

Publication number
KR102283364B1
KR102283364B1 KR1020190156282A KR20190156282A KR102283364B1 KR 102283364 B1 KR102283364 B1 KR 102283364B1 KR 1020190156282 A KR1020190156282 A KR 1020190156282A KR 20190156282 A KR20190156282 A KR 20190156282A KR 102283364 B1 KR102283364 B1 KR 102283364B1
Authority
KR
South Korea
Prior art keywords
bandwidth
virtual disk
calculating
allocated
target
Prior art date
Application number
KR1020190156282A
Other languages
English (en)
Other versions
KR20210067051A (ko
Inventor
노재춘
김태훈
최수미
Original Assignee
세종대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 세종대학교산학협력단 filed Critical 세종대학교산학협력단
Priority to KR1020190156282A priority Critical patent/KR102283364B1/ko
Publication of KR20210067051A publication Critical patent/KR20210067051A/ko
Application granted granted Critical
Publication of KR102283364B1 publication Critical patent/KR102283364B1/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/45579I/O management, e.g. providing access to device drivers or storage

Abstract

가상 머신에 대한 대역폭 자원이 효율적으로 이용될 수 있도록, 가상 머신에 할당된 가상 디스크와, 가상 디스크에 할당된 파티션의 대역폭을 조절하는 방법이 개시된다. 개시된 가상화 환경에서, 대역폭 조절 방법은 적어도 하나의 가상 디스크에 할당된 복수의 파티션 중에서, 대역폭이 회수되는 적어도 하나의 타겟 파티션을 미리 설정된 제1대역폭 조절 주기에 따라서 결정하는 단계; 상기 타겟 파티션에 할당된 대역폭에서 회수할 제1회수 대역폭을 계산하는 단계; 상기 제1회수 대역폭에서, 상기 복수의 파티션에 대한 제1추가 할당 대역폭을 계산하는 단계; 및 상기 제1추가 할당 대역폭을, 상기 복수의 파티션에 할당하는 단계를 포함한다.

Description

가상화 환경에서, 대역폭 조절 방법{METHOD FOR CONTROLLING BANDWIDTH IN VIRTUALIZED ENVIRONMENT}
본 발명은 가상화 환경에서, 대역폭을 조절하는 방법에 관한 것으로서, 더욱 상세하게는 가상 머신에 할당된 가상 디스크와, 가상 디스크에 할당된 파티션의 대역폭을 조절하는 방법에 관한 것이다.
가상화는 호스트 서버의 물리적 자원을 공유하여 다수의 가상 머신을 운영할 수 있는 기술이다. 가상화의 핵심인 하이퍼바이저는 서버의 자원을 에뮬레이션하여 가상머신에 공유한다.
가상 머신은 호스트 서버에서 동작하는 가상의 시스템으로 가상 머신의 운영체제는 물리적 장치 위에서 동작하는 운영체제와 동일한 구조를 가진다. 이때 물리적 컴퓨팅 환경의 운영체제와 구분하기 위해서 가상머신에서 동작하는 운영체제를 게스트 운영체제(Guest OS)로 명칭한다.
사용자는 가상화를 이용하여 다수의 서비스들을 독립적인 시스템으로 분산시켜 단일 시스템에서의 환경보다 안정성과 성능 향상을 이룰 수 있다.
호스트 서버의 물리적 자원인 스토리지는 다수의 가상 디스크로 분할되어 다수의 가상 머신 각각에 할당될 수 있으며, 이러한 가상 디스크는 또한 복수의 파티션으로 분할될 수 있다. 그리고 각각의 가상 디스크 및 파티션 별로 데이터의 입출력을 위한 대역폭이 할당되는데, 가상 머신의 자원 사용률에 따라서 특정 가상 머신에 병목현상이 발생할 수 있다.
따라서 이러한 병목 현상없이 안정적이고 효율적으로 가상화 시스템이 운용될 수 있도록, 가상 머신에 대한 대역폭을 조절하는 다양한 연구들이 진행되고 있다.
관련 선행문헌으로 특허 문헌인 대한민국 등록특허 제10-1899719호, 제10-1883599호 및 제10-1583129호가 있다.
본 발명은 가상 머신에 대한 대역폭 자원이 효율적으로 이용될 수 있도록, 가상 머신에 할당된 가상 디스크와, 가상 디스크에 할당된 파티션의 대역폭을 조절하는 방법을 제공하기 위한 것이다.
상기한 목적을 달성하기 위한 본 발명의 일 실시예에 따르면, 적어도 하나의 가상 디스크에 할당된 복수의 파티션 중에서, 대역폭이 회수되는 적어도 하나의 타겟 파티션을 미리 설정된 제1대역폭 조절 주기에 따라서 결정하는 단계; 상기 타겟 파티션에 할당된 대역폭에서 회수할 제1회수 대역폭을 계산하는 단계; 상기 제1회수 대역폭에서, 상기 복수의 파티션에 대한 제1추가 할당 대역폭을 계산하는 단계; 및 상기 제1추가 할당 대역폭을, 상기 복수의 파티션에 할당하는 단계를 포함하는 가상화 환경에서, 대역폭 조절 방법이 제공된다.
또한 상기한 목적을 달성하기 위한 본 발명의 다른 실시예에 따르면, 적어도 하나의 가상 머신에 할당된 적어도 하나의 가상 디스크 중에서, 대역폭이 회수되는 적어도 하나의 제1타겟 가상 디스크를 대역폭 조절 주기에 따라서 결정하는 단계; 상기 제1타겟 가상 디스크로부터 회수할 회수 대역폭을 계산하는 단계; 상기 제1타겟 가상 디스크 중에서, 상기 회수 대역폭을 할당할 제2타겟 가상 디스크를 결정하는 단계; 상기 회수 대역폭에서, 상기 제2타겟 가상 디스크에 대한 추가 할당 대역폭을 계산하는 단계; 및 상기 추가 할당 대역폭을, 상기 제2타겟 가상 디스크에 할당하는 단계를 포함하는 가상화 환경에서, 대역폭 조절 방법이 제공된다.
본 발명의 일실시예에 따르면, 블록 입출력이 집중되어 평균 대역폭 사용률이 높은 가상 디스크 및 파티션에 보다 많은 대역폭이 할당될 수 있으므로, 블록 입출력이 집중되어 발생하는 병목현상이 감소할 수 있으며, 안정적이 효율적으로 가상화 시스템이 운용될 수 있다.
도 1은 가상 머신에 할당된 가상 디스크와 가상 디스크에 할당된 파티션을 도시하는 도면이다.
도 2는 본 발명의 일실시예에 따른, 대역폭을 조절하는 가상화 시스템을 설명하기 위한 도면이다.
도 3은 본 발명의 일실시예에 따른 가상화 환경에서, 대역폭을 조절하는 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 다른 실시예에 따른 가상화 환경에서, 대역폭을 조절하는 방법을 설명하기 위한 도면이다.
도 5 및 도 6은 본 발명의 일실시예에 따른, 가상 디스크에 대한 회수 대역폭 계산 방법을 설명하기 위한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
이하에서, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 가상 머신에 할당된 가상 디스크와 가상 디스크에 할당된 파티션을 도시하는 도면이다.
도 1에 도시된 바와 같이, 하나의 가상 디스크(Virtual Disk)는 복수의 파티션(partition)으로 분할될 수 있으며, 파티션의 자원은 가상 디스크의 자원에 종속된다. 즉, 파티션의 전체 용량과 전체 대역폭은 가상 디스크에 할당된 용량과 대역폭을 초과할 수 없다.
본 발명의 일실시예에 따른 대역폭 조절 방법은 이러한 가상 디스크 및 파티션에 대한 대역폭을 주기적으로 조절하는 방법으로서, 가상 디스크 및 파티션의 평균 대역폭 사용률과 목표 대역폭 사용률을 비교하여 가상 디스크 및 파티션의 대역폭을 조절한다.
이 때, 전술된 바와 같이, 파티션의 자원은 가상 디스크의 자원에 종속되기 때문에, 파티션의 대한 대역폭 조절 주기는 가상 디스크의 대역폭 조절 주기보다 짧으며, 파티션과 가상 디스크에 대한 대역폭 조절은 각각 독립적으로 수행된다.
본 발명의 일실시예에 따르면, 블록 입출력이 집중되어 평균 대역폭 사용률이 높은 가상 디스크 및 파티션에 보다 많은 대역폭이 할당될 수 있으므로, 블록 입출력이 집중되어 발생하는 병목현상이 감소할 수 있으며, 안정적이 효율적으로 가상화 시스템이 운용될 수 있다.
도 2는 본 발명의 일실시예에 따른, 대역폭을 조절하는 가상화 시스템을 설명하기 위한 도면이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 가상화 시스템은, 하이퍼바이저(210), 적어도 하나의 가상 머신(220, 230), 자원 모니터링 모듈(240) 및 스토리지(250)를 포함한다.
호스트 서버의 스토리지 자원은 복수의 가상 디스크 형태로 가상 머신에 할당되며, 이러한 가상 디스크는 도 1에서 설명된 바와 같이, 복수의 파티션으로 분할될 수 있다.
하이퍼바이저(210)는 호스트 서버 상에서 구동되며, 가상 머신(220, 230)은 하이퍼바이저(210) 상에서 구동된다. 가상 머신(220, 230)에서 데이터의 입출력 요청이 발생하면, 가상 머신 별로 할당된 가상 디스크에 저장된 파일이 가상 머신으로 리드(read)되거나 또는 가상 디스크에 파일이 라이트(write)될 수 있다.
자원 모니터링 모듈(240)은 가상 머신(220, 230), 즉 가상 디스크 및 파티션에 대역폭 사용량을 모니터링하며 모니터링 결과를 하이퍼바이저(210)로 제공한다. 자원 모니터링 모듈(240)은 미리 설정된 모니터링 주기에 따라서 대역폭 사용량을 모니터링한다.
하이퍼바이저(210)는 자원 모니터링 모듈(240)로부터 제공되는 모니터링 결과를 이용하여, 대역폭 조절에 필요한 다양한 파라미터를 계산한다. 실시예에 따라서 이러한 파리미터는 자원 모니터링 모듈(240)에서 계산되어 하이퍼바이저(210)로 제공될 수 있다.
하이퍼바이저(210)는 전술된 파라미터의 일예로서, 가상 디스크 및 파티션에 대한 평균 대역폭 사용률을 계산하며, 평균 대역폭 사용률과 가상 디스크 및 파티션에 미리 설정된 목표 대역폭 사용률을 비교한다. 그리고 비교 결과에 따라서, 대역폭 조절이 필요한 가상 디스크 및 파티션을 결정하고, 대역폭을 조절한다.
일실시예로서, 하이퍼바이저(210)는 평균 대역폭 사용률이 목표 대역폭 사용률보다 낮은 가상 디스크나 파티션으로부터 대역폭을 회수하고, 회수된 대역폭을 평균 대역폭 사용률이 높은 가상 디스크나 파티션에 추가적으로 할당할 수 있다.
이하, 본 발명의 일실시예에 따른 대역폭 조절 방법이 보다 자세히 설명된다. 이하에서는, 하이퍼바이저에서 수행되는 대역폭 조절 방법이 일실시예에서 설명되나, 실시예에 따라서 대역폭 조절 방법은 별도의 모듈에서 수행될 수 있다.
도 3은 본 발명의 일실시예에 따른 가상화 환경에서, 대역폭을 조절하는 방법을 설명하기 위한 도면으로서, 파티션의 대역폭을 조절하기 위한 방법을 설명하기 위한 도면이다.
본 발명의 일실시예에 따른 하이퍼바이저는 적어도 하나의 가상 디스크에 할당된 복수의 파티션 중에서, 대역폭이 회수되는 적어도 하나의 타겟 파티션을 결정(S310)하며, 미리 설정된 제1대역폭 조절 주기에 따라서 결정할 수 있다.
단계 S310에서 하이퍼바이저는 파티션의 평균 대역폭 사용률과 목표 대역폭 사용률을 비교하여, 타겟 파티션을 결정할 수 있으며, 일실시예로서, 평균 대역폭 사용률이 목표 대역폭 사용률보다 낮은 파티션을 타겟 파티션으로 결정할 수 있다.
그리고 하이퍼바이저는 타겟 파티션에 할당된 대역폭에서 회수할 제1회수 대역폭을 계산(S320)하며, 타겟 파티션의 평균 대역폭 사용률과 목표 대역폭 사용률의 차이에 따라서, 제1회수 대역폭을 계산할 수 있다.
일실시예로서, 하이퍼바이저는 [수학식 1]과 같이, 제1대역폭 조절 주기에 따른 대역폭 조절 시점(t)에서, 타겟 파티션의 평균 대역폭 사용률(AU(Pi)t)과 목표 대역폭 사용률(GU)의 차이에, 타겟 파티션(Pi)에 할당된 대역폭(B(Pi)t)을 곱하여 제1회수 대역폭(RcB(Pi)t)을 계산할 수 있다.
Figure 112019123278861-pat00001
하이퍼바이저는 타겟 파티션으로부터 제1회수 대역폭을 회수하며, 가상 머신의 평균 대역폭 사용률을 높이기 위해, 여분의 대역폭없이 미사용 대역폭을 모두 회수한다. 제1회수 대역폭의 회수에 의해 타겟 파티션의 평균 대역폭 사용률은 목표 대역폭 사용률과 일치하게 된다.
그리고 본 발명의 일실시예에 따른 하이퍼바이저는 제1회수 대역폭에서, 복수의 파티션 전체에 대한 제1추가 할당 대역폭을 계산(S330)하고, 제1추가 할당 대역폭을 복수의 파티션에 할당(S340)한다.
즉, 본 발명의 일실시예에 따른 하이퍼 바이저는 타겟 파티션으로부터 대역폭을 회수한 후, 파티션 전체에 대해 회수한 대역폭을 재분배한다. 복수의 파티션 중 타겟 파티션으로 선택되지 않은 파티션은, 평균 대역폭 사용률이 높은 파티션이기 때문에, 이러한 파티션으로부터는 대역폭을 회수하지는 않되 대역폭을 추가적으로 할당함으로써, 전체 파티션에 대한 대역폭이 균등하게 재분배될 수 있다.
보다 구체적으로 단계 S330에서, 하이퍼바이저는 복수의 파티션에 할당된 대역폭에서 제1회수 대역폭을 차감하여, 제1잔여 대역폭을 계산한다. 그리고 복수의 파티션의 제1잔여 대역폭 총합에 대한 제1잔여 대역폭 각각의 비율에 따라서, 제1추가 할당 대역폭을 계산한다. 이를 수학식으로 표현하면, [수학식 2]와 같다.
Figure 112019123278861-pat00002
여기서, AAB(Pk)t는 제1추가 할당 대역폭을 나타내며, k는 파티션(P)의 인덱스를 나타낸다. 그리고 TRcB는 타겟 파티션의 제1회수 대역폭의 총합을 나타내며, RmB(Pk)t)는 파티션 k의 제1잔여 대역폭을 나타낸다. 그리고
Figure 112019123278861-pat00003
는 전체 m개인 복수개의 파티션의 제1잔여 대역폭의 총합을 나타낸다.
[표 1]은 가상 머신(VM1)의 가상 디스크에 할당된 3개의 파티션에 대한 대역폭 조절 방법의 구체적 실시예를 설명하기 위한 표로서, 목표 대역폭 사용률이 1이며, 파티션 각각에 할당된 대역폭(Bt)이 100MB/s로 설정된 경우의 실시예이다.
Figure 112019123278861-pat00004
파티션 P1, P2, P3의 평균 대역폭 사용률은 각각 1, 0.7, 0.4이므로 파티션 P2, P3가 타겟 파티션으로 결정된다. 타겟 파티션 P2 및 P3의 평균 대역폭 사용률(AUt)과 목표 대역폭 사용률의 차이는 각각 0.3, 0.6이므로, 타겟 파티션 P2 및 P3에 대한 제1회수 대역폭(RCBt)은 30 및 60이다. 따라서, 제1회수 대역폭의 총합(TRcBt)은 90이 된다.
이러한 제1회수 대역폭의 회수 이후, 파티션 P1, P2, P3의 제1잔여 대역폭(RmBt)은 100, 70, 40이다, 파티션 P1에 대해서는 대역폭 회수가 없었으므로, 이전에 할당된 대역폭 100이 그대로 잔여 대역폭이 된다.
하이퍼바이저는, 제1회수 대역폭의 총합인 90을 파티션 P1, P2, P3의 잔여 대역폭의 비율 100:70:40에 따라서, 파티션 P1, P2, P3 각각에 추가로 할당하며, 파티션 P1, P2, P3 각각에 대한 제1추가 할당 대역폭(AABt)은 43, 30, 17이 된다.
이와 같이 대역폭이 조절된 이후 파티션 P1, P2, P3의 대역폭(Bt+1)은 143, 100, 57로 조절되며, 이에 따른 파티션 P1, P2, P3의 평균 대역폭 사용률(AUt+1)은 0.68, 0.7, 0.7로서, 파티션별로 대역폭이 균등하게 재분배되었음을 확인할 수 있다.
본 발명의 일실시예에 따른 하이퍼바이저는 이러한 파티션의 대역폭 조절과 독립적으로 가상 디스크에 대한 대역폭을 조절할 수 있으며, 가상 디스크에 대한 대역폭 방법은 도 4에서 자세히 설명된다.
도 4는 본 발명의 다른 실시예에 따른 가상화 환경에서, 대역폭을 조절하는 방법을 설명하기 위한 도면으로서, 가상 디스크의 대역폭을 조절하기 위한 방법을 설명하기 위한 도면이다. 그리고 도 5 및 도 6은 본 발명의 일실시예에 따른, 가상 디스크에 대한 회수 대역폭 계산 방법을 설명하기 위한 도면이다.
본 발명의 일실시예에 따른 하이퍼바이저는 적어도 하나의 가상 머신에 할당된 적어도 하나의 가상 디스크 중에서, 대역폭이 회수되는 적어도 하나의 제1타겟 가상 디스크를 대역폭 조절 시점에 따라서 결정(S410)한다. 가상 디스크의 대역폭 조절 시점에 대응되는 제2대역폭 조절 주기는, 제1대역폭 조절 주기의 길이보다 길다.
단계 S410에서 하이퍼바이저는 가상 디스크의 평균 대역폭 사용률과 목표 대역폭 사용률을 비교하여, 제1타겟 가상 디스크를 결정하며, 일실시예로서, 평균 대역폭 사용률이 목표 대역폭 사용률보다 낮은 가상 디스크를 제1타겟 가상 디스크로 결정할 수 있다. 이 때, 파티션과 가상 디스크의 특성을 고려하여, 가상 디스크에 대한 목표 대역폭 사용률은 파티션에 대한 목표 대역폭 사용률보다 작게 설정될 수 있다.
그리고 본 발명의 일실시예에 따른 하이퍼바이저는 제1타겟 가상 디스크로부터 회수할 제2회수 대역폭을 계산(S420)한다.
보다 구체적으로 단계 S420에서 하이퍼바이저는 제1타겟 가상 디스크의 평균 사용 대역폭 및 최소 평균 사용 대역폭을 계산하고, 제1타겟 가상 디스크에 할당된 대역폭에서, 평균 사용 대역폭 및 최소 평균 사용 대역폭 중 큰 대역폭을 차감하여, 제2회수 대역폭을 계산한다. 그리고 제2회수 대역폭을 제1타겟 가상 디스크로부터 회수한다.
도 5는 제2대역폭 조절 주기(λ)를 나타내는 도면으로서, 평균 사용 대역폭은 제2대역폭 조절 주기에 따른 현재 대역폭 조절 시점(510)과 제1이전 대역폭 조절 시점(520) 사이에서 모니터링된 대역폭 사용량으로부터 산출된다. 즉, 하이퍼바이저는 현재 대역폭 조절 시점(510)과 제1이전 대역폭 조절 시점(520) 사이에서 모니터링된 대역폭 사용량을 평균하여, 평균 대역폭 사용률을 계산할 수 있다. 그리고 제1타겟 가상 디스크에 할당된 대역폭에, 평균 대역폭 사용률을 곱하여, 평균 사용 대역폭을 산출할 수 있다.
대역폭 사용량의 모니터링은 전술된 자원 모니터링 모듈로부터 수행될 수 있으며, 자원 모니터링 모듈은 미리 설정된 모니터링 주기에 따라서 대역폭 사용량을 수집한다.
또한 최소 평균 사용 대역폭은 제1이전 대역폭 조절 시점(520)에서 제1이전 대역폭 조절 시점(520) 보다 과거의 제2이전 대역폭 조절 시점(530) 사이에서, 모니터링된 대역폭 사용량으로부터 산출된다. 최소 평균 사용 대역폭을 위한 모니터링 구간, 즉 제2이전 대역폭 조절 시점(530)과, 제1이전 대역폭 조절 시점(520) 사이의 거리(n-1, n은 자연수)는 실시예에 따라서 다양하게 결정될 수 있다. 또한 최소 평균 사용 대역폭의 산출을 위해 이용되는 대역폭 사용량은, 제1타겟 가상 디스크의 대역폭 사용량에 대한 이동 평균선보다 작은 대역폭 사용량이다.
도 6은 최소 평균 사용 대역폭의 계산에 이용되는 대역폭 사용량을 설명하기 위한 도면으로서, x축은 모니터링 시점을 나타내며, y축은 대역폭 사용량을 나타낸다. 도 6과 같이 모니터링된 대역폭 사용량(A 내지 E)이 시간 흐름에 따라서 20, 10, 20, 30, 20일 경우, 최소 평균 사용 대역폭을 위한 모니터링 구간(610, n-1)에서의 이동 평균선(620)은 도 6과 같이 그려질 수 있다. 이동 평균선은 이전 측정값과 현재 측정값을 현재 측정 시점에 대한 평균값으로 계산하고, 이러한 평균값을 이은 라인으로서, 예컨대 현재 측정 시점인 λ-n에서의 측정값은 10이고, 이전 측정 시점인 λ-n-1에서의 이전 측정값은 20이므로, 현재 측정 시점인 λ-n에서의 평균값은 15가 된다.
도 6의 모니터링 구간(610)에서, 이동 평균선(620)보다 아래에 있는 즉, 이동 평균선보다 작은 대역폭 사용량(B, E)은 10 및 20이므로, 이러한 대역폭 사용량을 평균함으로써, 최소 평균 대역폭 사용률이 계산될 수 있다.
이와 같이, 하이퍼바이저는 모니터링 구간에서 모니터링된 대역폭 사용량을 이용하여 이동 평균선을 생성하고, 모니터링된 대역폭 사용량중에서, 이동 평균선보다 작은 대역폭 사용량을 평균하여 최소 평균 대역폭 사용률을 계산한다. 그리고 제1타겟 가상 디스크에 할당된 대역폭에, 최소 평균 대역폭 사용률을 곱하여, 최소 평균 사용 대역폭을 산출한다.
평균 자원 사용률만을 이용하여 회수 대역폭을 계산할 경우, 최근 사용량에 따라서 대역폭의 변화가 커질 수 있기 때문에, 본 발명의 일실시예에 따른 하이퍼바이저는 최소 평균 자원 사용률을 함께 이용하여 회수 대역폭을 계산한다.
본 발명의 일실시예에 따른 하이퍼바이저는 제1타겟 가상 디스크 중에서, 제2회수 대역폭을 할당할 제2타겟 가상 디스크를 결정(S430)한다.
하이퍼바이저는 일실시예로서, 제1타겟 가상 디스크 중에서, 평균 사용 대역폭을 통해 제2회수 대역폭이 계산된 제3타겟 가상 디스크 및 평균 대역폭 사용률이 목표 자원 사용률보다 높은 제4타겟 가상 디스크를, 제2타겟 가상 디스크로 결정할 수 있다.
그리고 본 발명의 일실시예에 따른 하이퍼바이저는 제2회수 대역폭에서, 제2타겟 가상 디스크에 대한 제2추가 할당 대역폭을 계산(S440)하고, 제2추가 할당 대역폭을 제2타겟 가상 디스크에 할당(S430)한다.
이 때, 단계 S440에서 하이퍼바이저는 제3타겟 가상 디스크에 대한 제2추가 할당 대역폭을 우선적으로 계산하며, 제2회수 대역폭에서 제3타겟 가상 디스크에 대한 제2추가 할당 대역폭을 차감한 나머지 대역폭에 기반하여, 제4타겟 가상 디스크에 대한 제2추가 할당 대역폭을 계산할 수 있다.
또한 일실시예로서, 하이퍼바이저는 평균 대역폭 사용률이 목표 대역폭 사용률에 대응되도록, 제3타겟 가상 디스크에 대한 제2추가 할당 대역폭을 계산할 수 있다. 이를 위해 하이퍼바이저는 먼저 [수학식 3]을 이용하여 제3타겟 가상 디스크에 대한 최종 대역폭(B(VMj)λ+1)을 계산하고, 최종 대역폭에서 제3타겟 가상 디스크에 대한 제2잔여 대역폭을 차감하여 제2추가 할당 대역폭을 계산할 수 있다.
Figure 112019123278861-pat00005
여기서, AU(VMj)λ는 현재 대역폭 조절 주기(λ)의 대역폭 조절 시점에서의 제3타겟 가상 디스크의 평균 대역폭 사용률이며, B(VMj)λ는, 대역폭 회수전 제3타겟 가상 디스크에 할당된 대역폭이다.
우선순위가 높은 제3타겟 가상 디스크에 대한 제2추가 할당 대역폭이 계산된 이후, 하이퍼바이저는 제2회수 대역폭에서, 제3타겟 가상 디스크에 대한 제2추가 할당 대역폭을 차감한다. 그리고 제4타겟 가상 디스크의 평균 대역폭 사용률 및 목표 대역폭 사용률, 차감된 회수 대역폭에 기반하여, 제4타겟 가상 디스크에 대한 제2추가 할당 대역폭을 계산한다.
하이퍼바이저는 [수학식 4]를 이용하여, 제4타겟 가상 디스크에 대한 제2추가 할당 대역폭(AAB(VMk)λ)을 계산할 수 있다.
Figure 112019123278861-pat00006
여기서, TRcB는 차감된 회수 대역폭을 나타내며, AU(VMk)λ는 제4타겟 가상 디스크 k의 평균 대역폭 사용률을 나타낸다. 그리고
Figure 112019123278861-pat00007
는 복수의 제4타겟 가상 디스크의 평균 대역폭 사용률의 합을 나타내며, GU는 제4타겟 가상 디스크 k의 목표 대역폭 사용률을 나타낸다.
[표 2]는 서로 다른 3개의 가상 머신에 할당된 가상 디스크에 대한 대역폭 조절 방법의 구체적 실시예를 설명하기 위한 표이다.
Figure 112019123278861-pat00008
제1가상 머신의 제1가상 디스크에는 150, 제2가상 머신의 제2가상 디스크에는 300, 제3가상 머신의 제3가상 디스크에는 200의 대역폭(Bλ)이 할당된 상태이며, 각 가상 디스크의 평균 대역폭 사용률(AUλ)은 0.6, 0.3, 0.85이다. 그리고 목표 대역폭 사용률은 0.8이다.
따라서, 제1 및 제2가상 디스크가 대역폭이 회수될 타겟 가상 디스크로 선정된다. 제1가상 디스크의 평균 사용 대역폭(ABλ)은 90, 최소 평균 사용 대역폭(MAB)은 45이며, 제2가상 디스크의 평균 사용 대역폭은 90, 최소 평균 사용 대역폭은 137이므로, 제1가상 디스크의 제2회수 대역폭(RcBλ)은 대역폭 150에서 90을 차감하여 60이 되며, 제2가상 디스크의 제2회수 대역폭은 300에서 137을 차감하여, 163이 된다.
이후 하이퍼바이저는 제1 및 제2가상 디스크로부터 회수한 대역폭을 추가로 할당할 가상 디스크로 제1 및 제3가상 디스크를 선정한다. 제1가상 디스크의 경우, 평균 사용 대역폭이 차감되어 제2회수 대역폭이 계산되었으며, 제3가상 디스크의 경우, 평균 대역폭 사용률이 목표 자원 사용률보다 높기 때문이다.
하이퍼바이저는 평균 사용 대역폭이 차감되어 제2회수 대역폭이 계산된 제1가상 디스크에 대한 추가 할당 대역폭을 우선적으로 계산하며, [수학식 3]에 따라 제1가상 디스크에 대한 최종 대역폭을 112.5로 계산한 이후, 최종 대역폭에서 제2잔여 대역폭(RMBλ) 90을 차감하여, 22.5를 추가 할당 대역폭(AABλ)으로 결정한다.
그리고 하이퍼바이저는 전체 회수 대역폭(TRcB) 223에서 제1가상 디스크에 대한 제2추가 할당 대역폭 22.5를 차감하고, 평균 대역폭 사용률과 목표 대역폭 사용률의 차이인 0.05와, 평균 대역폭 사용률의 비율(0.05/0.85)을, 차감한 대역폭 200.5에 곱하여 11.8을 제3가상 디스크에 대한 제2추가 할당 대역폭으로 결정한다.
결국, 최종적으로 제1 및 제3가상 디스크에 각각 22.5 및 11.8만큼의 대역폭이 추가로 할당되며, 하이퍼바이저는 나머지 대역폭 188.7을 호스트 서버에 반납한다.
앞서 설명한 기술적 내용들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (15)

  1. 가상화 환경에서, 하이퍼바이저를 포함하는 가상화 시스템의 대역폭 조절 방법에 있어서,
    적어도 하나의 가상 디스크에 할당된 복수의 파티션 중에서, 대역폭이 회수되는 적어도 하나의 타겟 파티션을 미리 설정된 제1대역폭 조절 주기에 따라서 결정하는 단계;
    상기 타겟 파티션에 할당된 대역폭에서 회수할 제1회수 대역폭을 계산하는 단계;
    상기 제1회수 대역폭에서, 상기 복수의 파티션에 대한 제1추가 할당 대역폭을 계산하는 단계; 및
    상기 제1추가 할당 대역폭을, 상기 복수의 파티션에 할당하는 단계를 포함하며,
    상기 제1추가 할당 대역폭을 계산하는 단계는
    상기 복수의 파티션에 할당된 대역폭에서 상기 제1회수 대역폭을 차감하여, 제1잔여 대역폭을 계산하는 단계; 및
    상기 제1회수 대역폭에, 상기 복수의 파티션의 제1잔여 대역폭 총합에 대한 상기 제1잔여 대역폭 각각의 비율을 곱하여, 상기 제1추가 할당 대역폭을 계산하는 단계
    를 포함하는 가상화 환경에서, 대역폭 조절 방법.
  2. 제 1항에 있어서,
    상기 타겟 파티션을 결정하는 단계는
    상기 파티션의 평균 대역폭 사용률과 목표 대역폭 사용률을 비교하여, 상기 타겟 파티션을 결정하는
    가상화 환경에서, 대역폭 조절 방법.
  3. 제 1항에 있어서,
    상기 제1회수 대역폭을 계산하는 단계는
    상기 타겟 파티션의 평균 대역폭 사용률과 목표 대역폭 사용률의 차이에 따라서, 상기 제1회수 대역폭을 계산하는
    가상화 환경에서, 대역폭 조절 방법.
  4. 삭제
  5. 제 1항에 있어서,
    상기 가상 디스크 중에서, 대역폭이 회수되는 제1타겟 가상 디스크를 미리 설정된 제2대역폭 조절 주기에 따라서 결정하는 단계;
    상기 제1타겟 가상 디스크로부터 회수할 제2회수 대역폭을 계산하는 단계;
    상기 가상 디스크 중에서, 상기 제2회수 대역폭을 할당할 제2타겟 가상 디스크를 결정하는 단계;
    상기 제2회수 대역폭에서, 상기 제2타겟 가상 디스크에 대한 제2추가 할당 대역폭을 계산하는 단계; 및
    상기 제2추가 할당 대역폭을, 상기 제2타겟 가상 디스크에 할당하는 단계
    를 더 포함하는 가상화 환경에서, 대역폭 조절 방법.
  6. 제 5항에 있어서,
    상기 제2대역폭 조절 주기의 길이는,
    상기 제1대역폭 조절 주기의 길이보다 긴,
    가상화 환경에서, 대역폭 조절 방법.
  7. 가상화 환경에서, 하이퍼바이저를 포함하는 가상화 시스템의 대역폭 조절 방법에 있어서,
    적어도 하나의 가상 머신에 할당된 적어도 하나의 가상 디스크 중에서, 대역폭이 회수되는 적어도 하나의 제1타겟 가상 디스크를 대역폭 조절 주기에 따라서 결정하는 단계;
    상기 제1타겟 가상 디스크로부터 회수할 회수 대역폭을 계산하는 단계;
    상기 제1타겟 가상 디스크 중에서, 상기 회수 대역폭을 할당할 제2타겟 가상 디스크를 결정하는 단계;
    상기 회수 대역폭에서, 상기 제2타겟 가상 디스크에 대한 추가 할당 대역폭을 계산하는 단계; 및
    상기 추가 할당 대역폭을, 상기 제2타겟 가상 디스크에 할당하는 단계를 포함하며,
    상기 제1타겟 가상 디스크를 결정하는 단계는
    상기 가상 디스크의 평균 대역폭 사용률과 목표 대역폭 사용률을 비교하여, 상기 제1타겟 가상 디스크를 결정하며,
    상기 회수 대역폭을 계산하는 단계는
    상기 제1타겟 가상 디스크의 평균 사용 대역폭 및 최소 평균 사용 대역폭을 계산하는 단계; 및
    상기 제1타겟 가상 디스크에 할당된 대역폭에서, 평균 사용 대역폭 및 최소 평균 사용 대역폭 중 큰 대역폭을 차감하여, 상기 회수 대역폭을 계산하는 단계
    를 포함하는 가상화 환경에서, 대역폭 조절 방법.
  8. 삭제
  9. 삭제
  10. 제 7항에 있어서,
    상기 평균 사용 대역폭 및 최소 평균 사용 대역폭을 계산하는 단계는
    상기 대역폭 조절 주기에 따른 현재 대역폭 조절 시점과 제1이전 대역폭 조절 시점 사이에서, 모니터링 주기에 따라서 모니터링된 대역폭 사용량을 평균하여, 상기 평균 대역폭 사용률을 계산하는 단계; 및
    상기 제1타겟 가상 디스크에 할당된 대역폭에, 상기 평균 대역폭 사용률을 곱하여, 상기 평균 사용 대역폭을 산출하는 단계
    를 포함하는 가상화 환경에서, 대역폭 조절 방법.
  11. 제 10항에 있어서,
    상기 평균 사용 대역폭 및 최소 평균 사용 대역폭을 계산하는 단계는
    상기 제1이전 대역폭 조절 시점에서 상기 제1이전 대역폭 조절 시점 보다 과거의 제2이전 대역폭 조절 시점 사이에서, 상기 모니터링된 대역폭 사용량을 이용하여 이동 평균선을 생성하는 단계;
    상기 모니터링된 대역폭 사용량중에서, 상기 이동 평균선보다 작은 대역폭 사용량을 평균하여 최소 평균 대역폭 사용률을 계산하는 단계; 및
    상기 제1타겟 가상 디스크에 할당된 대역폭에, 상기 최소 평균 대역폭 사용률을 곱하여, 상기 최소 평균 사용 대역폭을 산출하는 단계
    를 포함하는 가상화 환경에서, 대역폭 조절 방법.
  12. 제 7항에 있어서,
    상기 제2타겟 가상 디스크를 결정하는 단계는
    상기 제1타겟 가상 디스크 중에서, 상기 평균 사용 대역폭을 통해 상기 회수 대역폭이 계산된 제3타겟 가상 디스크 및 상기 평균 대역폭 사용률이 상기 목표 대역폭 사용률보다 높은 제4타겟 가상 디스크를, 상기 제2타겟 가상 디스크로 결정하는
    가상화 환경에서, 대역폭 조절 방법.
  13. 제 12항에 있어서,
    상기 추가 할당 대역폭을 계산하는 단계는
    상기 제3타겟 가상 디스크에 대한 추가 할당 대역폭을 우선적으로 계산하는
    가상화 환경에서, 대역폭 조절 방법.
  14. 제 13항에 있어서,
    상기 추가 할당 대역폭을 계산하는 단계는
    상기 평균 대역폭 사용률이 상기 목표 대역폭 사용률에 대응되도록, 상기 제3타겟 가상 디스크에 대한 추가 할당 대역폭을 계산하는
    가상화 환경에서, 대역폭 조절 방법.
  15. 제 13항에 있어서,
    상기 추가 할당 대역폭을 계산하는 단계는
    상기 회수 대역폭에서, 상기 제3타겟 가상 디스크에 대한 추가 할당 대역폭을 차감하는 단계; 및
    상기 제4타겟 가상 디스크의 평균 대역폭 사용률 및 목표 대역폭 사용률, 상기 차감된 회수 대역폭에 기반하여, 상기 제4타겟 가상 디스크에 대한 추가 할당 대역폭을 계산하는
    가상화 환경에서, 대역폭 조절 방법.
KR1020190156282A 2019-11-29 2019-11-29 가상화 환경에서, 대역폭 조절 방법 KR102283364B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190156282A KR102283364B1 (ko) 2019-11-29 2019-11-29 가상화 환경에서, 대역폭 조절 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190156282A KR102283364B1 (ko) 2019-11-29 2019-11-29 가상화 환경에서, 대역폭 조절 방법

Publications (2)

Publication Number Publication Date
KR20210067051A KR20210067051A (ko) 2021-06-08
KR102283364B1 true KR102283364B1 (ko) 2021-07-29

Family

ID=76399145

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190156282A KR102283364B1 (ko) 2019-11-29 2019-11-29 가상화 환경에서, 대역폭 조절 방법

Country Status (1)

Country Link
KR (1) KR102283364B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016113642A1 (en) 2015-01-12 2016-07-21 International Business Machines Corporation Dynamic sharing of unused bandwidth capacity of virtualized input/output adapters
KR101883599B1 (ko) * 2017-04-24 2018-08-30 세종대학교산학협력단 클라우드 컴퓨팅 환경에서 가상화 자원 분배 방법 및 장치
KR101899719B1 (ko) * 2017-04-26 2018-09-17 세종대학교산학협력단 가상 머신에 대한 입출력 성능 제한 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100944912B1 (ko) * 2007-12-14 2010-03-03 한국전자통신연구원 서버 가상화 환경을 위한 디스크 입출력 스케쥴러 및 그의스케쥴링 방법
KR101583129B1 (ko) * 2014-02-27 2016-01-07 단국대학교 산학협력단 가상화 환경에서의 대역폭 할당 방법 및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016113642A1 (en) 2015-01-12 2016-07-21 International Business Machines Corporation Dynamic sharing of unused bandwidth capacity of virtualized input/output adapters
KR101883599B1 (ko) * 2017-04-24 2018-08-30 세종대학교산학협력단 클라우드 컴퓨팅 환경에서 가상화 자원 분배 방법 및 장치
KR101899719B1 (ko) * 2017-04-26 2018-09-17 세종대학교산학협력단 가상 머신에 대한 입출력 성능 제한 방법

Also Published As

Publication number Publication date
KR20210067051A (ko) 2021-06-08

Similar Documents

Publication Publication Date Title
JP7138126B2 (ja) リソース配置を最適化するための適時性リソース移行
JP6957431B2 (ja) Hci環境でのvm/コンテナおよびボリューム配置決定方法及びストレージシステム
US10108460B2 (en) Method and system for integrated deployment planning for virtual appliances
JP5412599B2 (ja) 計算機システム、および、計算機システムにおける仮想計算機の最適配置方法
US20160156568A1 (en) Computer system and computer resource allocation management method
EP3186760B1 (en) Dynamic load-based merging
US10990433B2 (en) Efficient distributed arrangement of virtual machines on plural host machines
US20170262196A1 (en) Load monitoring method and information processing apparatus
JP7035858B2 (ja) マイグレーション管理プログラム、マイグレーション方法およびマイグレーションシステム
JP2021026659A (ja) ストレージシステム及びリソース割当て制御方法
JP2019079334A (ja) 情報処理装置、情報処理システムおよび情報処理方法
JP6293683B2 (ja) 計算機システム及び計算機システムの性能障害の対処方法
CN112948279A (zh) 管理存储系统中的访问请求的方法、设备和程序产品
JP6617461B2 (ja) 制御装置、制御プログラム、及び制御方法
JP5515889B2 (ja) 仮想マシンシステム、自動マイグレーション方法および自動マイグレーションプログラム
US10782922B2 (en) Storage device volume selection for improved space allocation
KR102283364B1 (ko) 가상화 환경에서, 대역폭 조절 방법
US9916096B2 (en) Increasing data storage capacity
KR101661475B1 (ko) 이기종 클러스터 상에서 하둡 부하 분산 방법, 이를 수행하기 위한 기록 매체 및 하둡 맵리듀스 시스템
KR102438916B1 (ko) 컨테이너 기반의 가상화 시스템 및 가상화 시스템에서 컨테이너의 자원을 확장하는 방법
KR102483422B1 (ko) 클라우드 서비스 융복합 시스템
JP6686976B2 (ja) 仮想テープ管理装置、仮想テープ管理方法、及びプログラム
EP2642379A2 (en) Information processing apparatus, program, and data allocation method
US11797729B2 (en) Hyper-converged infrastructure (HCI) operation predictor
JP2016012166A (ja) ストレージ管理装置,ストレージ管理プログラム,及び制御方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right