클라우드의 사용이 보급화 됨에 따라 가상화 기술에 다양한 요구사항이 접목, 적용되고 있다. 클라우드 컴퓨팅의 대표적인 특징은 사용자가 원하는 자원 요구사항에 따라 최적화 된 환경을 구축할 수 있으며, 나아가 확장성에도 유연하게 대처할 수 있다. 이런 장점으로 인해 다양한 분산컴퓨팅 분야에 클라우드 컴퓨팅이 적용, 활용되고 있는 실정이다. 이를 위해 클라우드 환경의 성능 안정성을 보장하는 것이 무엇보다 중요하다. 본 연구에서는 구축된 클라우드 교육 시스템 테스트베드 환경에서 시스템의 성능을 보장하기 위한 다양한 요소성능(metric) 측정을 오픈소스 기반의 툴들을 이용하여 분석하였다. 이를 위해 프로세서, 메모리, 캐시, 네트워크 등 가상화 환경에 영향을 주는 요소 성능을 구분하고, 그 성능을 호스트머신(Host Machine) 및 가상머신(Virtual Machine)에서 각각 측정하였다. 이로서 시스템의 상태를 명확하게 파악할 수 있으며, 문제점을 빠르게 진단하여 가용성을 증대시키고 나아가 클라우드 컴퓨팅의 SLA(Service Level Agreement) 수준을 보장할 수 있다.
클라우드의 사용이 보급화 됨에 따라 가상화 기술에 다양한 요구사항이 접목, 적용되고 있다. 클라우드 컴퓨팅의 대표적인 특징은 사용자가 원하는 자원 요구사항에 따라 최적화 된 환경을 구축할 수 있으며, 나아가 확장성에도 유연하게 대처할 수 있다. 이런 장점으로 인해 다양한 분산컴퓨팅 분야에 클라우드 컴퓨팅이 적용, 활용되고 있는 실정이다. 이를 위해 클라우드 환경의 성능 안정성을 보장하는 것이 무엇보다 중요하다. 본 연구에서는 구축된 클라우드 교육 시스템 테스트베드 환경에서 시스템의 성능을 보장하기 위한 다양한 요소성능(metric) 측정을 오픈소스 기반의 툴들을 이용하여 분석하였다. 이를 위해 프로세서, 메모리, 캐시, 네트워크 등 가상화 환경에 영향을 주는 요소 성능을 구분하고, 그 성능을 호스트머신(Host Machine) 및 가상머신(Virtual Machine)에서 각각 측정하였다. 이로서 시스템의 상태를 명확하게 파악할 수 있으며, 문제점을 빠르게 진단하여 가용성을 증대시키고 나아가 클라우드 컴퓨팅의 SLA(Service Level Agreement) 수준을 보장할 수 있다.
As the increasing use of the cloud computing, virtualization technology have been combined and applied a variety of requirements. Cloud computing has the advantage that the support computing resource by a flexible and scalable to users as they want and it utilized in a variety of distributed computi...
As the increasing use of the cloud computing, virtualization technology have been combined and applied a variety of requirements. Cloud computing has the advantage that the support computing resource by a flexible and scalable to users as they want and it utilized in a variety of distributed computing. To do this, it is especially important to ensure the stability of the cloud computing. In this paper, we analyzed a variety of component measurement using open-source tools for ensuring the performance of the system on the education system to build cloud testbed environment. And we extract the performance that may affect the virtualization environment from processor, memory, cache, network, etc on each of the host machine(Host Machine) and a virtual machine (Virtual Machine). Using this result, we can clearly grasp the state of the system and also it is possible to quickly diagnose the problem. Furthermore, the cloud computing can be guaranteed the SLA(Service Level Agreement).
As the increasing use of the cloud computing, virtualization technology have been combined and applied a variety of requirements. Cloud computing has the advantage that the support computing resource by a flexible and scalable to users as they want and it utilized in a variety of distributed computing. To do this, it is especially important to ensure the stability of the cloud computing. In this paper, we analyzed a variety of component measurement using open-source tools for ensuring the performance of the system on the education system to build cloud testbed environment. And we extract the performance that may affect the virtualization environment from processor, memory, cache, network, etc on each of the host machine(Host Machine) and a virtual machine (Virtual Machine). Using this result, we can clearly grasp the state of the system and also it is possible to quickly diagnose the problem. Furthermore, the cloud computing can be guaranteed the SLA(Service Level Agreement).
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서는 사용자의 요구사항에 따른 다양한 클라우드 환경에서 서비스를 안정성 있게 제공할 수 있도록 SLA 보장을 위한 시스템 성능을 요소별로 측정하고자 한다. 이를 위해 기존에 구축된 가상화 기반 실습환경 테스트베드를 활용하여 시스템 안정성 측정에 필요한 요소들을 구분하였다[5][6].
본 논문에서는 가상화를 통해 구축된 클라우드 컴퓨팅 교육용 실습 환경의 시스템 성능을 보장하고 가용성을 확보하기 위해 오픈 소스 기반의 벤치마크 도구를 이용하여 요소성능을 분석하였다. 여기에는 분산-메모리 환경에서의 시스템 성능, 네트워크 응답/지연 시간, 공용의 파일시스템을 사용하는 경우에는 I/O 대역폭(Bandwidth) 등에 대한 요소 성능을 측정하게 된다.
제안 방법
본 논문에서는 가상화 환경에서 성능 분석시 필요한 요소들을 파악한 후 과 같은 오픈소스기반의 벤치마크 도구를 이용하여 성능 분석을 수행하였다.
본 논문에서는 사용자의 요구사항에 따른 다양한 클라우드 환경에서 서비스를 안정성 있게 제공할 수 있도록 SLA 보장을 위한 시스템 성능을 요소별로 측정하고자 한다. 이를 위해 기존에 구축된 가상화 기반 실습환경 테스트베드를 활용하여 시스템 안정성 측정에 필요한 요소들을 구분하였다[5][6]. 이후 선택된 요소별 성능을 측정할 수 있는 오픈소스 기반의 벤치마크 도구들을 선정하였다.
본 논문에서는 가상화를 통해 구축된 클라우드 컴퓨팅 실습환경 테스트베드를 활용하여 실험을 수행하였다. 시스템 성능을 측정하기 위한 다양한 벤치마크 도구들이 존재하며 CPU, 메모리, 네트워크 등의 요소성능부터 시스템의 연산(부동소수점), 파일시스템의 I/O 성능까지 다양하게 시스템의 성능을 추출할 수 있다.
이 벤치마크는 스칼라 루프와 벡터 연산을 수행하면서 메모리에 과도한 부하를 주어 성능을 얻게 된다[10]. STRID3, VECOP, CACHE, STRIDOT, CACHEDOTS의 테스트를 수행하며 MFLOPS로 측정된다.
IOR은 공용 병렬파일시스템의 I/O 성능을 측정하는 도구이다. POSIX, MPIIO와 같은 인터페이스와 액세스 패턴을 사용하여 병렬파일시스템의 성능을 측정한다[12]. MPI를 통해 파일시스템이 마운트 된 클러스터 환경에서 읽기(read), 쓰기(write) 성능을 측정한다.
POSIX, MPIIO와 같은 인터페이스와 액세스 패턴을 사용하여 병렬파일시스템의 성능을 측정한다[12]. MPI를 통해 파일시스템이 마운트 된 클러스터 환경에서 읽기(read), 쓰기(write) 성능을 측정한다. 이 테스트에서는 수행되는 프로세스가 하나의 파일을 생성(Single Shared File)하는 방식과 각 프로세스마다 각자 파일을 생성(File Per Process)방식의 두 가지 형태로 수행하게 된다.
MPI를 통해 파일시스템이 마운트 된 클러스터 환경에서 읽기(read), 쓰기(write) 성능을 측정한다. 이 테스트에서는 수행되는 프로세스가 하나의 파일을 생성(Single Shared File)하는 방식과 각 프로세스마다 각자 파일을 생성(File Per Process)방식의 두 가지 형태로 수행하게 된다.
성능 실험은 크게 클라우드가 구성된 호스트 머신(HostMachine)과 그 위에서 동작하는 가상화 환경(Virtual Machine)의 두 형태로 구분하여 실험하게 된다. 두 환경에서 각각 시스템을 구성하고 있는 개별 구성요소(메모리, 스토리지, 네트워크 등)와 전체 실측 성능을 테스트하였다. 측정된 실측 성능은 클라우드 실습 환경의 성능을 측정하는 기준이 된다.
본 실험에선 STRID3 테스트를 수행하였는데 이 테스트에서는 일정한 크기의 배열에 접근 길이(stride)를 최대 1,024까지 늘려가면서 테스트를 수행하였고 배열의 길이는 256×stride로 설정하였다.
성능 테스트는 Quad-Core CPU를 장착한 노드에서OMP_NUM_THREADS 환경변수를 1부터 4까지 변경하면서 테스트 하였다.
수행결과는 <표 6>과 같이 ring patterns, random patterns의 대역폭, 지연시간, ping-pong 대역폭 등의 결과를 얻게 된다. 본 실험에서는 호스트 머신의 프로세서 수를 4개에서 16개까지 늘려가면서 테스트를 수행하였다.
본 연구에서는 구축된 클라우드 환경의 실습 시스템에서 호스트 머신과 가상 머신으로 구분하여 다각도로 성능분석을 수행하였다. 이를 위해 오픈소스 기반의 벤치마크 도구들을 사용하였고 시스템 사양과 환경 등을 반영하여 성능측정을 수행하였다.
본 연구에서는 구축된 클라우드 환경의 실습 시스템에서 호스트 머신과 가상 머신으로 구분하여 다각도로 성능분석을 수행하였다. 이를 위해 오픈소스 기반의 벤치마크 도구들을 사용하였고 시스템 사양과 환경 등을 반영하여 성능측정을 수행하였다. 최대성능 보다는 시스템의 안정적인 환경을 제공할 수 있는지를 판단하기 위해 각 성능측정마다 적정한 설정 값 등을 지정하여 수행하였다.
이를 위해 오픈소스 기반의 벤치마크 도구들을 사용하였고 시스템 사양과 환경 등을 반영하여 성능측정을 수행하였다. 최대성능 보다는 시스템의 안정적인 환경을 제공할 수 있는지를 판단하기 위해 각 성능측정마다 적정한 설정 값 등을 지정하여 수행하였다. 수행측정은 예방정비기간 또는 시스템의 주기적인 수행도구를 사용해서 사전에 클라우드 환경의 안정적인 성능을 보장할 수 있다.
대상 데이터
이를 위해 기존에 구축된 가상화 기반 실습환경 테스트베드를 활용하여 시스템 안정성 측정에 필요한 요소들을 구분하였다[5][6]. 이후 선택된 요소별 성능을 측정할 수 있는 오픈소스 기반의 벤치마크 도구들을 선정하였다. 이 도구들을 통해 얻은 성능 결과를 이용하여 안정화된 가상화 실습환경을 보장할 수 있으며, 장애 발생 시 이슈를 보다 빠르게 파악할 수 있어 서비스 전체의 가용성을 향상시키게 된다.
이론/모형
HPL 벤치마크는 MPI를 기반으로 동작하며 정밀한 수학 계산을 위한 라이브러리 패키지를 필요로 한다. 수학 라이브러리패키지로는 위의 표와 같이 BLAS library를 생성하는 프로그램인 ATLAS(Automatically Tuned Linear Algebra Software)를 사용하였다[14][15]. 실험을 위해 설치된 소프트웨어 패키지는 n 차 선형방정식 Ax=B의 n by n+1 계수행렬(Coefficient Matrix)을 LU 인수분해(LU factorization)를 통해 계산하게 된다.
성능/효과
본 실험에서는 성능테스트에 소요되는 시간을 줄이기 위해 문제의 사이즈를 줄여서 수행하였고, 이때 호스트머신과 가상머신에서 이론대비 실측성능이 50% 이상인 경우 시스템의 성능이 정상범위라 볼 수 있다.
이 실험은 공용 파일시스템의 단일 디렉터리에서 수행하였고, 실험에서 보는 것과 같이 creation, removal 동작의 경우 파일에 대한 락킹(locking) 메커니즘의 영향으로 인해 성능이 증가하지 않고 일정함을 볼 수 있다[16]. 디렉터리 파일의 초당 I/O오퍼레이션이 3000~4000인 반면에 stat의 초당 I/O오퍼레이션 16노드까지는 비례적으로 증가하였다.
후속연구
향후, 다양한 시스템 성능요소에 따라 필요한 벤치마크 도구를 추가적으로 적용 및 사용자의 응용코드를 사전에 테스트 해봄으로써 클라우드 컴퓨팅 성능의 SLA를 좀 더 견고하게 보장할 수 있다. 나아가 crontab(cron table)과 같은 시스템의 스케줄러 도구를 통해 주기적으로 성능 점검하고 로그들을 분석함으로써 클라우드 서비스 가용성을 더더욱 높일 수 있다.
질의응답
핵심어
질문
논문에서 추출한 답변
STREAM이란 무엇인가?
STREAM은 단일노드에서 프로세서와 메모리 간의 대역폭을 측정하는 도구로 네가지 타입의 벡터 커널 연산(Copy, Scale,Add, Triad)을 OpenMP 프로그래밍 모델을 사용하여 수행하게 된다[9]. 최초 STREAM 소스 코드를 다운로드 받은 후(V.
클라우드의 특징은 무엇인가?
클라우드는 컴퓨팅 자원뿐만 아니라 어플리케이션 서비스까지도 사용자의 요구사항에 맞게 구성하여 제공할 수 있는 특징을 가지고 있다. 클라우드 컴퓨팅은 가상화 기술을 기반으로 실제 구현 및 서비스가 가능하다[1].
STRIDE의 특징은 무엇인가?
STRIDE는 단일노드에서 메모리와 캐시의 성능을 측정하는 도구이다. 이 벤치마크는 스칼라 루프와 벡터 연산을 수행하면서 메모리에 과도한 부하를 주어 성능을 얻게 된다[10]. STRID3, VECOP, CACHE, STRIDOT, CACHEDOTS의 테스트를 수행하며 MFLOPS로 측정된다.
참고문헌 (17)
J. Diaz, G. v. Laszewski, F. Wang, and G. Fox, " Abstract Image Management and Universal Image Registration for Cloud and HPC Infrastructures", IEEE Cloud. 2012.
Rad, P., et al. "Benchmarking Bare Metal Cloud Servers for HPC Applications." 2015 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM). IEEE, pp. 153-159, 2015.
HWANG, Kai, et al., "Cloud performance modeling with benchmark evaluation of elastic scaling strategies", IEEE Transactions on Parallel and Distributed Systems,27.1, pp. 130-143, 2016.
"Introduction of cloud SLA guide", Korea Communications Commission, Oct, 2011.
Y JunWeon, S Ui-Sung, "Build the Teaching Practice System based on Cloud Computing for Stabilization through Performance Evaluation", Journal of Digital Contents Society, 15.5, pp. 595-602, 2014.
Y JunWeon, P ChanYeol, S Ui-Sung, "Building the Educational Practice System based on Open Source Cloud Computing." Journal of Digital Contents Society 14.4, pp. 505-511, 2013.
J. HanGu, "Standard technology trend of cloud service performance measurement", TTA Journal,v.164,pp.45-49, Mar, 2016.
PETITET, Antoine., "HPL-a portable implementation of the high-performance Linpack benchmark for distributed-memory computers", http://www.netlib.org/benchmark/hpl/, 2004.
J. D. McCalpin, "STREAM: Sustainable memory bandwidth in high performance computers", University of Virginia, Charlottesville, Virginia, Tech. Rep., 1991-2007, a continually updated technical report. http://www.cs.virginia.edu/stream/.
Whaley, R. C., & Dongarra, J. J., (1998, November). "Automatically tuned linear algebra software", In Proceedings of the 1998 ACM/IEEE conference on Supercomputing, pp. 1-27, 1998.
Alexander Oltu UniBCCS, "Performance Analysis-Synthetic benchmarks: IOR, bonnie++, mdtest", 2010.
S. Hongzhang, S. John, "Using IOR to Analyze the I/O performance for HPC Platforms", Lawrence Berkeley National Laboratory, 2007.
이 논문을 인용한 문헌
저자의 다른 논문 :
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
활용도 분석정보
상세보기
다운로드
내보내기
활용도 Top5 논문
해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다. 더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.