[nGrinder ] Docker를 이용한 nGrinder 설치하기

Docker를 이용한 nGrinder 설치하기

nGrinder 란

controller

  • 성능 테스트를 위한 웹 인터페이스를 제공
  • 테스트 프로세스를 조정
  • 테스트 통계를 수집하고 표시
  • 사용자가 스크립트를 생성하고 수정할 수 있는 기능 지원

Agent

  • Agent Mode가 실행될 때 Target 서버에 프로세스 및 스레드를 실행 시켜 부하 발생
  • Moniter 모드에서 실행 시 대상 시스템 성능 (예 : CPU / 메모리) 모니터링

Docker를 통한 nGrinder 설치하기

  • nGrinder를 파일로 설치할 수도 있지만, docker로 설치해보자
  • https://hub.docker.com/r/ngrinder/controller/
  • nGrinder 에서는 controller와 Agent가 나누어져 있으며 물리적으로 다른 서버에 설치하는 것을 강력히 권고하고 있다.

controller 설치

  1. controller image pull
docker pull ngrinder/controller
  1. controller 실행하기
    기본적으로 80 port로 외부에 접속할 수 있다
docker run -d -v ~/ngrinder-controller:/opt/ngrinder-controller --name controller -p 80:80 -p 16001:16001 -p 12000-12009:12000-12009 ngrinder/controller

만약 다른 port 로 접속하고 싶다면 아래와 같이 80을 원하는 port 로 바꾼다 ex) 8081

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

agent 설치

  1. agent 이미지 pull
docker pull ngrinder/agent
  1. agent 실행하기
docker run -d -v ~/ngrinder-agent:/opt/ngrinder-agent --name agent ngrinder/agent controller_ip:controller_web_port

controller가 192.168.0.17:80 라면 아래와 같이 설치 가능하다

docker run -d -v ~/ngrinder-agent:/opt/ngrinder-agent --name agent ngrinder/agent 192.168.0.17:80

UI 접속

admin/admin 으로 로그인 가능하다.

    http://localhost:80/login

둘러보기

로그인 완료 후 아래와 같은 화면이 뜬다.

설치한 Agent 도 확인 가능하다
필자는 두 개의 Agent 를 등록해 둔 상태이다

이제 스크립트와 테스트를 등록하여 테스트를 시작하면 된다.

주의

로컬에서 간단하게 테스트 하는 것이 아니라면 controller 와 agent 는 물리적으로 다른 서버에 두자. 성능이 나오지 않아 원하는 만큼의 부하를 줄 수 가 없다.
controller 와 agent 중 agent 서버의 성능이 더 중요하다.


참고

http://naver.github.io/ngrinder/
https://docs.docker.com/engine/reference/run/
https://jmlim.github.io/ngrinder/2019/07/01/ngrinder-docker-setup/
https://brownbears.tistory.com/25

반응형

댓글

Designed by JB FACTORY