카테고리 없음

[TroubleShooting] docker에서 nGrinder 삽질기

DuL2 2024. 2. 21. 22:56

 

문제를 겪은 상황

아래와 같이 1 controller에 10 agent를 붙여 docker로 대용량 부하 테스트를 진행하고 싶었다.

 

 

근데 나를 좌절시킨 것은..

 

nGrinder 테스트를 날리는데 계쏙 ConnectException이 뜬다는 것이다.

 

100개의 테스트를 날렸는데 아래와 같이 로그를 살펴보니 100개 모두가 error 처리가 되었다.

nGrinder web 화면
nGrinder agent log

 

groovy 코드가 문제인 걸까.. 나의 nGrinder 설정의 문제였을까.. 한참을 고민하다가 docker구나! 를 깨달았다.

 

그 이유는 컨테이너에서 돌아간다는 것, 즉, container에서 test code로 localhost에 통신을 보내면 내 컴퓨터(mac m1, local)가 받는 것이 아니라 container 자신이 받는다.

 

(이 부분에서 부끄러움을 느꼈다. 그렇게 인프라를 했어도 아직도.. 부족하구나..)

 

다음의 조악한 그림이 이해하는데 도움이 될지 모르겠다.

Container 8080에는 아무것도 없으므로 당연히 ConnectError 가 터지는게 당연하다.

 

나는 이렇게 만들어야 한다.

해결 방법 1 - ipconfig

 

가장 간단한 방법으로는 내 local의 ip를 사용한다. 다음 명령어로 나의 ip를 확인한다.

ipconfig getifaddr en0

 

다음으로는 이 ip로 테스트 스크립트를 변경했다.

 

실행해보자.

 

성 공 !! ㅜㅜ 눈물겹다.. 이 쉬운걸 왜 나는.. 잠이 부족한 탓인걸까..

docker 설정 변경

 

docker의 설정값이 무엇이 있는지 알아보자!(와중에 사실 튜터님께 이게 문제 진단이 맞는지 확인하러 갔고 키워드를 받아왔다.)