오픈스택 연구하기 : Test Project Rally

반응형

오픈스택 이해하기 : Test Project Rally

안녕하세요 김민욱 입니다.

 

이번 포스팅에서는 Openstack Testing Project인 Rally에 대해 대략적으로만 말씀드리고자 합니다. Rally는 주로 Openstack의 성능을 파악하기 위한 기능을 제공하고 있습니다. 물론 저의 연구 주제로도 많이 사용하기도 하였고 Rally가 제공하는 기능인 Openstack의 최대 성능치 분석 기능을 이용해 클라우드를 점검하는 시스템을 설계하기도 하였습니다.

 

아마 테스팅 툴에 관심이 있으신 분들이 계시면 해당 포스팅을 참고하시고 이런 것이 있구나라고 생각하셔도 될 것 같습니다. 

그림 1. Opnestack Rally Symbol

 

 

* 이미지 출처 : [1] 

 

그럼 지금부터 Openstack Testing Project인 Rally에 대해 대략적으로 알아보도록 하겠습니다. 해당 포스팅은 Rally 문서 Release 2.0.1 ~dev2[2] 및 기존 연구 내용을 바탕으로 작성 되었습니다.  또한 이번 포스팅에서 나온 그림들은 모두 문서에서 참고하는 것 입니다. 

 

Architecture 

Rally는 Openstack 전반적인 성능을 검사하는 프로젝트입니다. Openstack이 제공하는 명령어를 이용하여 어느 정도의 명령 수행 능력을 가지는 가를 테스트하고 이에 대해 HTML로 작성 된 리포트 기능도 제공합니다.  

 

그림 1. Rally High-level 아키텍쳐

그림 1에서는 Rally 하이 레벨 아키텍쳐를 나타냅니다. Rally는 일종의 명령에 대한 시나리오 Task를  Json,Yaml 파일로 작성하여 이를 기반으로 벤치마크를 진행합니다. 예를 들어 Openstack에서 가상머신을 생성하는 것에 대한 성능을 측정하고 싶을 경우에는 해당 Json,Yaml 파일을 작성하고 Verify 즉 문법검사를 실시한 뒤 실제 가상 머신 생성에 대한 테스트를 반복적으로 수행하고 결과를 리포팅하게 됩니다.

 

 

그림 2. Task Example

 

그림 2에서는  Task에 대한 구성을 JSON으로 작성한 예를 나타냅니다.[2] 해당 Task는 Nova 서버가 제공하는 기능에 대해 나타내는 것으로 Rally 코드에서는 샘플로 이러한 JSON, YAML등의 Task를 많이 제공하고 있어서 참고 하시어 진행하시면 좋을 것 같습니다. 해당 Task는 2가지의 명령을 수행하게 되는데 하나는 nova.boot_server와 nova.delete_server를 수행하게 됩니다.  또한 리소스의 크기, 이미지등 서버  생성을 위해 여러가지 옵션을 추가 할 수 있습니다.

 

그림 3. Task 수행 명령

그림 3과 같이 Task 수행 명령인 rally task start [json 파일명]을 시작하게 되면 각 액션을 수행한 결과값이 나오게 됩니다. 이렇게 관리자가 지정한 여러 액션들의 결과를 여러 수치로 분석이 가능 합니다. 

 

그림 4. 결과 리포트

그림 4에서는 결과 리포트를 나타냅니다.  위처럼 rally task report --out= [html 파일명] --open 명령어를 이용하여 결과를 html 파일로 만들어 해당 파일을 열면 위와 같이 깔끔한 GUI 형태로 결과를 확인 하실 수 있습니다. 

 

결론

이번 포스팅에서는 Rally에 대한 간략한 설명을 진행하였습니다. Rally는 테스팅 프로젝트로 사용이 쉽고 굉장히 알아보기 편한 리포팅 기능을 지원하고 있습니다. 추가 내용이 필요하시면 Rally-Document를 참고하시거나 문의를 남겨주시기 바랍니다.

 

감사합니다.

인용글

[1] Openstack Mascots : https://www.openstack.org/project-mascots/

[2] Rally Document : https://buildmedia.readthedocs.org/media/pdf/rally/latest/rally.pdf

업데이트로그

----------------------------------------------------------------------------------------------------------------

 

해당 글은 스스로 연구한 내용을 통한 주관적인 이해를 바탕으로 작성 되었습니다. 수정 할 부분이 있거나, 다른 의견이 있으시다면 언제든지 말씀해주시면 반영하도록 하겠습니다. 읽어 주셔서 감사합니다. 끝으로 불법으로 복제하는 것은 금합니다.

 

반응형

댓글

Designed by JB FACTORY