관리 메뉴

피터의 개발이야기

[nGrinder] Docker로 nGrinder 구성 과정 정리 본문

DevOps/nGrinder

[nGrinder] Docker로 nGrinder 구성 과정 정리

기록하는 백앤드개발자 2021. 3. 3. 11:30
반응형

 

ㅁ 개요

 ㅇ 프로젝트의 부하테스트를 수행하기 위하여  부하테스트 환경을 세팅해야만 했다. 

 ㅇ nGrinder에 대해 설명하고, Docker로 설치하는 과정을 정리하였다.

 

 

ㅁ nGfinder란?

 ㅇ nGrinder는 부하테스트를 위한 플랫폼으로 웹 애플리케이션 Controller와 자바 애플리케이션 Agent로 구성 되어있다.
 ㅇ 네이버에서 성능 테스트를 위해 개발된 오픈 프로젝트이며, The Grinder라는 오픈소스를 기반으로 개발되었다.

 

 

ㅁ nGrinder Architecture

 ㅇ nGrinder는 두 가지 주요 구성 요소로 이루어진다.

    ㄴ Controller

       - 성능 테스트를 위한 웹기반의 GUI 서비스이다.

       - 부하를 발생하는 에이전트를 관리한다.

       - 테스트를 실시하고 모니터링한다.

       - 테스트 스크립트를 작성 저장하여 반복적인 테스트를 수행한다.

    ㄴ  Agent

       - Agent 모드에서 Target 시스템에 부하를 주는 프로세스와 스레드를 실행한다.

       - Monitor 모드에서는 Target 시스템의 performance를 모니터한다.

       - 복수의 Agent를 조직하여 Controller의 지시에 따라 일시에 부하를 발생한다.

 

 

ㅁ 방화벽 확인

 ㅇ Agent: Any ==> Controller: 16001

 ㅇ Agent: Any ==> Controller: 12000 ~ 12000+(동시 테스트 허용수만큼)

 ㅇ Controller: Any ==> Monitor: 13243

 ㅇ Web Admin: 8080

 

 

ㅁ Controller 설치

docker run -d -v ~/ngrinder-controller:/opt/ngrinder-controller -p 8080:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller:3.4

 ㅇ GUI Admin을 위한 8080

 ㅇ Controller 연동을 위한 16001

 ㅇ Agent 10대를 위한 1200X 

 ㅇ 도커 컨테이너 생성 성공

 

 

ㅁ Controller Admin 접속

 ㅇ 어드민 접속 시 계정과 비밀번호는 admin이다.

 ㅇ 언어는 한국어, English, 중국어가 있다.

 

 

ㅁ Agent 설치

docker run -v ~/ngrinder-agent:/opt/ngrinder-agent -d ngrinder/agent:3.4 192.168.33.20:16001

 ㅇ Controller와 연동을 위한 IP:PORT를 환경값으로 전달한다.

 

 

 ㅇ Agent가 Controller와 잘 연동됨을 확인 할 수 있다.

 

 

 ㅇ 승인된 Agent는 에이전트 관리에서 확인 할 수 있다.

 ㅇ 에이전트 관리는  오른쪽 상단의 admin 아코디언 > 에이전트 관리에서 확인 할 수 있다.

 

 

ㅁ 함께 보면 좋은 사이트

 ㅇ 리눅스 서버에 ngrinder 설치하기  테스트

 ㅇ nGrinder 아키텍쳐

 ㅇ docker hub Controller 설명

 ㅇ 사용자 가이드 

반응형

'DevOps > nGrinder' 카테고리의 다른 글

[nGrinder] 간단 실행 방법  (0) 2022.06.02
Comments