JMeter 이용한 AWS ALB 부하 테스트

2019-08-04

AWS ALB를 구성해 Private 인스턴스의 Nginx web 서버를 이중화 하였다.
실제로 클라이언트가 2곳으로 분산돼 접속하는지 JMeter를 통해 HTTP Request를 보내고 Response를 확인해 본 기록을 남긴다.

JMeter 설치

  • Apache JMeter 홈페이지에 접속하여 원하는 바이너리를 다운받는다.
  • 나의 경우 zip파일을 다운 받았다.
  • 압축 해제하면 apache-jmeter-$VERSION이라는 디렉토리가 생성되고 그 안의 bin디렉토리의 jmeter를 실행하면 된다.
  • 현재 최신 버전은 5.1.1이다.

Java 8 버전 이상 설치

  • jmeter를 실행해도 정상작동하지 않는데, 자바 8버전 이상이 깔려있지 않기 때문이다.
  • Ubuntu 에서 apt로 설치한다.
    sudo apt install openjdk-8-jre-headless -y
    
  • 설치 완료 하면 /usr/lib/jvm/java-8-openjdk-amd64 경로가 생성된다.
  • 해당 경로를 JAVA_HOME으로 환경변수에 export 한다.
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    
  • 다시 jmeter를 실행하면 정상 작동 한다.

테스트 진행

  • 쓰레드 그룹 설정 image
  • HTTP GET 할 ALB 주소와 80포트 설정 image
  • 정상 응답 확인
    • 웹서버 1 image
    • 웹서버 2 image
  • 실제 AWS CloudWatch에도 요청갯수가 증가한 것이 확인된다. image