JMeter, 원격 분산 테스트 수행 방법

구성도

 

Controller 역할

  • Worker들의 시작과 종료를 관리한다.
  • Worker들의 테스트 결과를 수집한다.

Worker 역

  • 부하를 발생시킨다.
  • 2-3GHz CPU 기준 1,000에서 2,000 쓰레드가 적당하다.
  • 테스트 결과를 Controller로 보낸다.

실행 방법

성능테스트는 CLI 모드에서 실행한다.
Worker 노드에 있는 JMeter 들을 server 모드로 실행한다.

[pluto@pluto jmeterWorker1]$ SERVER_PORT=2001 ./jmeter-server
Created remote object: UnicastServerRef2 [liveRef: [endpoint:[192.168.100.11:35825](local),objID:[-30cxxx5a:188xxxx9e1a:-7fff, 106xxxx542xxx03868]]]

기본 포트(1099)를 다른 프로그램이 사용하고 있는 경우, SERVER_PORT로 다른 포트를 지정하여 실행할 수 있다. 또한 하나의 노드에서 포트 정보를 달리해서 여러 개의 JMeter를 실행할 수도 있다. 

[pluto@pluto jmeterController]$ ./jmeter.sh -n -r -t /ptest/jmeterController/IMC_0001.jmx -e -l /ptest/jmeterController/log/IMC_0001_$postfix.log -o /ptest/jmeterController/result/report_$postfix

Creating summariser <summary>

Created the tree successfully using /ptest/jmeterController/IMC_0001.jmx

Configuring remote engine: 192.168.100.11:2001

Configuring remote engine: 192.168.100.12:2001

Configuring remote engine: 192.168.100.13:2001

Starting distributed test with remote engines: [192.168.100.11:2001, 192.168.100.12:2001, 192.168.100.13:2001] @ April 11, 2023 10:12:42 AM KST (1684458762700)

Remote engines have been started:[192.168.100.11:2001, 192.168.100.12:2001, 192.168.100.13:2001]

Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445

summary +   1704 in 00:00:16 =  104.4/s Avg:  2205 Min:   322 Max:  7368 Err:     0 (0.00%) Active: 2183 Started: 2183 Finished: 0

…. (생략)

결과 확인

테스트가 종료되면 Controller는 결과 보고서를 자동으로 생성한다. 

브라우저에서 index.html 파일을 열어 보고서를 확인한다.

참고

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤