검색 상세

이종 서버 환경에서의 고효율 DaaS를 위한 선택적 압축 방식 및 가상머신 할당 기법

A Virtual Machine Allocation Technique and Selective Compression Method for High Efficiency DaaS Services in Heterogeneous Server Environments

초록/요약

클라우드 컴퓨팅은 사용자가 요구하는 IT자원을 사용하는 양 만큼 지불할 수 있는 PAYGO(Pay as you go)방식을 구현할 수 있는 새로운 패러다임이다. 사용자들은 내부 네트워크 혹은 인터넷의 컴퓨터 집합체에 접속하여 OS, App, 저장장치, 보안, 네트워크, 데이터베이스, 주변기기 등 IT자원을 필요한 시점에 요구해서 즉각 제공받을 수 있다. 클라우드 컴퓨팅을 정의할 때 ‘Infra-Platform-Application’영역을 일반적으로 구분하여 설명하고 있다. 데이터센터에서 사용자가 요구하는 네트워크/ 서버(CPU, Memory, Disk)/ 스토리지(SAN) 등의 자원을 서비스로 제공하는 IaaS(Infrastructure as a Service)와 운영체제/ 데이터베이스/ 개발 도구 등의 각종 미들웨어 환경을 제공하는 PaaS (Platform as a Service), 그리고 사용자의 UI/UX를 서비스로서 응용프로그램을 제공하는 SaaS(Software as a Service)영역으로 분류할 수 있다. 2000년대 초반까지 인터넷 서비스의 대표했던 웹 서비스와 클라우드 컴퓨팅의 가장 큰 차이점은 ‘가상화(Virtualization Technology)의 유무’에서 찾을 수 있다. 해당 개념은 1996년 등장하였고, 2006년 유휴 서버 자원 활용하는 방식으로 제안되어 대중에게 널리 알려지기 시작하였다. 제공 가능한 서비스마다 하드웨어 서버가 필요했으나, 가상화 기술의 등장으로 서버의 용량의 한계에 까지 서비스의 수를 늘릴 수 있게 되었다. 하드웨어 자원을 복수의 논리적 장치로 나누거나 하나의 자원으로 통합하여 사용자의 요구조건에 따라 자원의 효율성을 극대화 할 수 있다. 이로 인해 시스템 구매와 유지보수의 비용절감이 가능해졌고, 용량 증설에 따른 요구에 실시간 확장이 가능해져 대규모 서비스를 가능하게 되었다. 초기에는 자원 사용의 효율성을 높이기 위해서 사용되었으나 일시적 대량의 사용자 요구에 즉각적 대응이 가능하기 때문에 클라우드 컴퓨팅이 이른바 ‘Everything as a Service’의 형태로 발전할 수 있게 되었다. VDI(Virtual Desktop Infrastructure)는 물리적 서버당 다수의 운영체제를 가상화하여 인터넷 및 네트워크를 통해서 데스크톱 OS의 실행 화면을 양자화 하여 ‘화면 값’을 전송하는 방식을 통해 실행은 원격에서 이뤄지더라도 마치 로컬장치에서 컴퓨팅 환경이 제공되는 것과 동일한 사용자 경험을 제공한다. DaaS(Desktop as a Service)는 가상화된 데스크톱을 인터넷을 통해 서비스로서 제공해주는 방식을 일컫는다. 데스크톱을 서비스로서 제공하여 가장 적극적이고 현실적인 클라우드 컴퓨팅을 제공하는 방식으로 자리매김하고 있다. 사용자 요청에 대한 결과만 브라우저를 통해서 보여주는 SaaS(Software as a Service)의 환경을 넘어서서 저장 장치 제공과 사용자 응용프로그램 요구에 대응할 수 있기 때문에 궁극의 스마트 환경을 구현할 수 있게 되었다. DaaS 환경의 경우 동시에 수백만 명까지 서비스를 해야 하기 때문에 대량의 하드웨어 서버가 구축이 되고, 벤더와 구매 시기에 따른 성능의 상이함과 지역별 배치된 IDC간 동일한 서비스 품질을 제공해야 하는 문제가 발생하게 된다. 본 논문은 이종 서버 환경에서 지역별 데이터센터를 구성하고 있는 물리서버와 가상머신의 부하를 감소시키고 자원 사용량을 균등하게 분산 및 유지하여 고효율 DaaS를 제공하는데 목적을 둔다. 목적 달성을 위하여 고화질 화면 전송 시 가상머신의 부하를 감소시키기 위한 방법으로 선택적 압축 방법과 점진적 전송 방법을 제시하여 고화질 화면 전송을 위한 영상 품질, 지연시간과 대역폭을 성능 지표로 삼아 제안한 기법의 유효성을 확인한다. 제안하는 기법을 적용하여 모바일용 SHD급(480P)부터 대형 디스플레이용 FHD급(1080p)의 고화질 동영상을 가상머신에서 재생하여 화면 전송에 따른 자원 사용량의 변동 값 분석 및 타 가상화 솔루션의 프로토콜과의 성능을 평가하기 위한 실험을 통해 실효성에 대한 결과를 비교 분석하였다. 해당 기법을 적용한 경우 화면 전송 시 발생하는 평균 Network Traffic은 3.2Mbps를 기록하였고, 적용하지 않은 타 화면전송 프로토콜이 발생시키는 5.6Mbps보다 약 40% 감소하였다. 평균 Disk Latency는 1ms로 타 화면전송 프로토콜의 평균 Disk Latency 3ms 대비 약 20% 감소하였다. 평균 CPU 부하 또한 30%를 기록하여 타 프로토콜의 40%보다 감소하는 결과를 보여주며, 제안하는 기법의 효율성을 증명하였다. 이종 서버 환경에서 데이터센터내의 물리서버들의 부하를 분산하여 효율적인 서비스를 제공하기 위한 가상머신 할당 기법을 제안하였다. 이를 위하여 이종 서버 환경에서 DaaS 사용자들의 생성 요구 및 사용 패턴에 따른 자원 요구량의 변동성을 분석 저장하고, 저장된 정보를 기반으로 가상머신을 수행 하여 물리서버를 탐색 및 결정하여 할당한다. 데이터센터간 부하 분산을 위한 물리서버와 가상머신의 자원 사용량을 모니터링하여 로그 데이터를 축적하고, 축적한 로그 데이터 기반으로 자원 요구량을 계산 및 예측한다. 가상머신의 생성 및 서비스 요청 시 자원 요구량 예측 데이터를 바탕으로 물리서버에 가상머신을 배치하거나 사용자에게 가상머신을 할당한다. 실제 이종 서버 운영 환경에서 수집한 데이터를 기반으로 가상머신 할당 기법을 적용하여 기존 부하 분산 기법 대비 최대 자원 이용률은 11% 이상 감소하는 결과를 확인할 수 있다. 특정 물리서버에 과부하가 발생하는 위험성을 낮춤으로써 자원 요구 상황에서 발생할 수 있는 시스템 장애(Fail Over)를 방지하는 결과를 보여주었다. 또한, 물리서버들 간의 자원 사용률 표준편차도 6% 이상 감소하는 결과를 기록하여 데이터센터 내 물리서버들의 부하가 공정하게 분산되는 결과를 보여주었다. 이종 서버환경의 경우에도 자원 사용량에 대하여 전체 물리서버들의 평균 표준편차가 균등하게 나타나서 8.84%에서 4.87%로 기존 대비 절반 수준으로 감소하는 결과를 확인하였다. 이로써 이종 서버 환경의 데이터센터간 부하 분산에 대해 유효함을 검증하였다. 본 논문에서 제안한 기법은 DaaS 및 대규모 로컬 VDI 서비스 환경에서 고효율 화면 전송 및 균등한 성능을 보장하는 시스템 구성 및 운영에 효과적으로 사용할 수 있을 것이다.

more

초록/요약

Cloud computing is a new paradigm that can implement PAYGO (Pay as you GO) approaches that allow users to pay as much as they require. Users can access an internal network or a set of computers on the Internet and immediately receive IT resources, such as OS, applications, storage, security, network, database, and peripherals, at the time of need. When defining cloud computing, the 'Infra-Platform-Application' area is typically described separately. It can be classified as IaaS(Infrastructure as a Service) that provides resources such as network/ server (CPU, memory, disk) / storage (SAN) that data centers require, PaaS (Platform as a Service), which provides various middleware environments such as operating systems/ databases/development tools, etc., and SaaS (Software as a Service) that provides applications as a service to users’ UI/UX. The biggest difference between Web services and cloud computing, which were representative of Internet services until the early 2000s, can be found in 'whether or not virtualization technology exists'. The concept emerged in 1996 and was proposed in 2006 to utilize idle server resources and became widely known to the public. Although hardware servers were required for each service, the advent of virtualization technology allowed the number of services to be increased to the limit of the server's capacity. Hardware resources can be divided into multiple logical devices or consolidated into a single resource to maximize the efficiency of resources according to user requirements. As a result, it was possible to reduce cost of system purchase and maintenance, and to expand the demands of capacity expansion in real time, enabling large-scale services. It was initially used to increase the efficiency of resource use, but it was able to respond immediately to a large number of temporary user needs, enabling cloud computing to evolve into a so-called 'everything as a service'. Virtual Desktop Infrastructure (VDI) virtualizes multiple operating systems per physical server to quantify the desktop OS's execution screen over the Internet and network to deliver a 'screen value' providing the same user experience as if running remotely provided by a local device. Desktop as a Service (DaaS) refers to the way virtualized desktops are delivered as services over the Internet. It has established itself to provide the most active and realistic cloud computing by providing desktops as a service. Beyond the software as a service (SaaS) environment where only the results of user requests can be shown through the browser, the ultimate smart environment can be implemented because it can respond to the needs of storage devices and user applications. In a DaaS environment, a large number of hardware servers are deployed because they have to serve millions of people simultaneously, and there is a problem of providing the same quality of service between vendors and locally deployed IDCs depending on the timing of the purchase. This paper aims to provide high efficiency DaaS by reducing the load of physical servers and virtual machines that make up regional data centers in heterogeneous server environment and equally distributing and maintaining resource usage. To achieve the goal, an optional compression method and a gradual transfer method are presented as a way to reduce the load of the virtual machine in high-definition screen transmission to verify the validity of the proposed technique by using image quality, latency and bandwidth as performance indicators for high-definition screen transmission. By applying the proposed technique, high-definition video of SHD-class (480P) for mobile and FHD-class (1080p) for large displays was played on virtual machines to analyze the value of changes in resource usage due to screen transmission and to compare the results of experiments to evaluate performance with protocols in other virtualization solutions. When applying this technique, the average network traffic generated during screen transmission recorded 3.2Mbps, which is about 40% less than 5.6Mbps generated by other unapplied screen transmission protocols. The average disk latency was 1ms, down about 20% from the average disk latency of 3ms for other screen transport protocols. The average CPU load also recorded 30%, showing a decrease from 40% of the other protocols, proving the efficiency of the proposed technique. A virtual machine allocation technique was proposed to distribute the load of physical servers in the data center in a heterogeneous server environment to provide efficient service. For this purpose, the physical servers are discovered, determined, and allocated by analyzing and storing the variability in resource requirements according to the generation needs and usage patterns of DaaS users in a heterogeneous server environment, and performing a virtual machine based on stored information. By monitoring resource usage of physical servers and virtual machines for load balancing between data centers, log data is accumulated, and resource requirements are calculated and predicted based on accumulated log data. Place virtual machines on physical servers or assign virtual machines to users based on resource demand forecast data when creating virtual machines and requesting services. Based on the data collected from the actual heterogeneous server operating environment, the application of virtual machine allocation techniques can confirm that the maximum resource utilization rate is reduced by more than 11% compared to the existing load balancing techniques. The results were shown to prevent possible system failures (Fail Over) in resource demand situations by reducing the risk of overloading specific physical servers. In addition, the standard deviation of resource utilization rate among physical servers also recorded a decrease of more than 6%, showing the result of fairly dispersing the load of physical servers in the data center. In the case of heterogeneous server environments, the average standard deviation of all physical servers for resource usage was shown to be even, decreasing from 8.84% to 4.87%. This ensures that load balancing between datacenters in heterogeneous server environments is valid. The techniques proposed in this paper will be able to be used effectively in the configuration and operation of systems that ensure high efficiency screen transmission and even performance in DaaS and large local VDI service environments.

more