검색 상세

General-Purpose Scheduling Framework for Container in Cloud Environment

초록/요약

In cloud computing, virtualization technology has been used to divide a single physical resource into logical resources to create an environment in which multiple systems can operate in parallel. Container technology also provides a parallel execution environment like virtualization, using isolation technique. Furthermore, container technology has significantly less overhead than traditional virtualization technology because there is no hardware abstraction procedure. Therefore, the container technology has increasingly grown up in cloud environment currently and is becoming more widespread as a means of replacing existing hypervisors. However, the research related to resource management for containers has not been studied actively. In this paper, we analyze the problems that occur when introducing the commercial container technology, the Docker, into the existing cloud-virtualization environment, and propose a solution and compare the effects through experiments. Existing docker only supports static resource allocation, which has the disadvantage that it can not cope with rapid changes in the cloud environment. Therefore, we apply the dynamic resource allocation technique to the docker to compensate the existing shortcomings and improve the operational efficiency of the container technology in the cloud environment. We also present the GPSF, General-Purpose Scheduling Framework to manage resources in cloud with container efficiently. This framework provides useful resource management functions, and more importantly it is possible to apply customized scheduling in the local environment. By using the framework, cloud providers or researchers can optimize resources for their purpose. We implement a prototype of the GPSF and evaluate it by applying customized scheduling. Our results show that it works correctly and it is easy to use enough. So we believe that it has a great potential as optimizing resources for container technology.

more

초록/요약

클라우드 컴퓨팅을 이루는 핵심적인 기술 중 하나인 가상화는 물리적인 자원을 논리적인 자원으로 분할하여 다수의 시스템이 하나의 물리 머신에서 병행적으로 실행가능한 환경을 구현하는 기술이다. 최근 각광받고 있는 컨테이너 기술 또한 가상화와 같이 병행 환경을 구현하는데, 전통적인 가상화 기법이 하드웨어의 추상화를 통해 병행 환경을 구현하는데 반해 컨테이너 기술은 프로세스의 격리를 이용한다는 차이가 있다. 이 방식은 하드웨어를 추상화하는 절차가 없기 때문에 기존 가상화와 동일한 효과를 가지면서도 오버헤드가 현저히 작다는 장점을 갖는다. 이러한 이유로 현재 클라우드 환경에서 컨테이너 기술이 활발하게 적용되고 있으며, 기존의 하이퍼바이져를 대체할 수단으로 그 가능성이 점쳐지고 있다. 하지만 현재 컨테이너 기술의 자원 관리 연구는 미비한 수준이다. 현재 컨테이너 기술의 기초적인 자원 관리 기법으로 인해 클라우드-가상화 환경에 이 기술이 적용될 때 비효율이 야기된다. 본 논문에서는 이러한 문제를 분석하고, 그 해결책을 제시하며, 일련의 실험을 통해 그 효과를 입증하였다. 상용화 된 컨테이너 기술의 대표 주자인 도커(Docker)는 현재 정적 자원 할당 만을 지원하는데 이는 클라우드 환경에서 급격한 변화에 유연하게 대처하지 못한다는 문제를 야기한다. 이러한 문제를 해결하기 위하여 본 논문에서는 동적 자원 할당 기법을 제안하였다. 제안하는 동적 자원 할당으로 기존의 문제를 해결하고 자원 활용률을 효과적으로 증대시킬 수 있다. 또한 동적 자원 할당 연구를 확장하여 범용 스케줄링 프레임워크(GPSF)를 제안하였다. 이 프레임워크를 통해 클라우드 서비스 프로바이더 혹은 클라우드 연구자들이 각 목적에 맞는 커스터마이즈드 스케줄링을 적용하여 효과적인 자원 관리를 수행할 수 있다. 본 연구에서는 제안하는 프레임워크의 프로토타입을 구현하여 커스터마이즈드 스케줄링의 효과를 분석하였다. 실험 결과, 제안하는 프레임워크를 이용하여 커스터마이즈드 스케줄링을 손쉽게 구현할 수 있을 뿐만 아니라 구현한 커스터마이즈드 스케줄링 기법이 기존 시스템에 이상 없이 적용되는 것을 확인하였다. 따라서 본 논문에서 제안하는 연구가 클라우드 환경에서 컨테이너 기술을 적용할 때 자원 최적화 관점에서 높은 잠재력을 갖을 것으로 사료된다.

more

목차

1. Introduction 1
2. Background and Related Work 3
2.1 Docker 3
2.2 Virtualization and Container 4
2.3 Architecture of Docker 6
2.4 Cgroups 7
2.5 Related Researches 9
3. Dynamic Resource Allocation 12
3.1 Static Resource Allocation 12
3.2 Implementing Dynamic Resource Allocation with Cgroups 13
3.3 Effect of Dynamic Resource Allocation 13
3.3.1 Comparing Resource Reallocation times 14
3.3.2 Comparing Guarantee SLA 15
4. GPSF: General-Purpose Scheduling Framework 19
4.1 Design of the Framework 21
4.1.1 Background 21
4.1.2 Architecture 22
4.1.3 GPSF API 25
4.2 Evaluation 26
5. Conclusion 31
Reference 33

more