[storage - 5] 테스트 환경 격리하기

standardChan·2026년 3월 13일

storage-service

목록 보기
5/8
post-thumbnail

격리

테스트 환경 좀 격리하자

매번 로컬 -> 배포 서버에 부하를 걸어서 테스트를 했는데, 이게 너무 불편해서 테스트 전용으로 격리된 VM을 띄웠다. 그 과정에 대한 이야기.

기술적인 이야기는 아니고, 하면서 느꼈던 감정이나 생각을 막 적은 글

구축 계기

실제 배포 서버를 대상으로 하고 싶었는데, 로컬에서 실제 배포 서버로 부하테스트를 진행하기 어려웠다. 왜 어려웠는가 하면…

1. 인터넷 속도

보통 학교나 집에서 개발을 많이 하는데, wifi 가 너무 제한되어있다…

인터넷

테스트 내용이 업로드/다운로드인데… 업로드 대역폭이 20 Mbps 밖에 안된다(심지어 대학교 도서관 wifi 업로드 대역폭이 이렇다 ㅜㅜ → 정말 좀 투자좀 해서 늘려줘라~~). 이 수치는 20Mbps = 2.5MB/s 인데, 초당 2MB정도면 부하 테스트를 서버에 전달하기도 전에 네트워크에서 병목이 발생해버린다.

우리 집 인터넷도 업로드 속도가 빠른 편은 아니다. 9대충 35Mbps 정도 나온다. 심지어 산에 있어서 가끔 가다가 끊기기도 한다… → 서울인데 이게 말인가…)

그래서 테스트를 하려면 대형 카페나 인터넷이 빵빵 터지는 곳에 가서 해야하는데, 매번 가서 테스트하기가 불편하다. (돈도 들고… ****특히 카페는 너무 오래 앉아있기도 불편해서..)

2 변인 통제

로컬에서 부하테스트를 많이 했다. (로컬→로컬) 하지만 할때마다 수치가 다르게 나오는 경우가 빈번했다. Latency의 p(95)가 10s까지도 차이가 났다.

아무래도 window 기반 docker desktop 위에 올려 사용하다 보니, 때때로 docker desktop이 이상하게 작동할 때도 있고, 테스트 하는 순간에 호스트 환경이 다를 수 있기 때문에 테스트가 다르게 나왔던 순간도 많았다.

매번 동일한 환경을 세팅해줘야하는데, 로컬에서 그런 부분까지 신경쓰기가 어려웠다.

3 무튼 결론적으로

무튼 이런 2가지 문제 때문에, Azure VM위에 테스트 용도의 독립된 환경을 구축하려고 한다.

그림으로 그려보면 아래 느낌이겠다.

아키텍처

테스트용 VM을 다른 VPC로 분리해서, 실제 네트워크 대역폭을 적용해볼까도 생각해봤다. 그런데 순수 서버의 성능을 측정하려면 같은 VPC 에 담아서 측정하는 것이 맞다고 생각했다. 네트워크 대역폭에 막혀서 서버의 최대 성능을 확인할 수 없을 수도 있으니 말이다.


테스트용 VM 선택하기

그냥 무난하게 사용하기 좋은 VM을 GPT를 통해 찾아보았다.

Standard_B2s / B2ms

예시

  • vCPU: 2
  • RAM: 4~8GB

음… 근데 Azure Free Tier 사용중이라서, 한국 리전 제한이 걸렸다. (이미 다른 서버 2대를 실행중이라서, 같은 리전에 추가 설치를 못한다)

그래서 가장 가까운 Japan West로 설정했고, RTT를 보니 20-40ms 정도밖에 안되어서, 리전 일본으로 결정해서 진행하였다. 뭐 테스트 할 때, 요청이 여러번 왔다갔다 하는게 아니니 괜찮다고 판단했다.

비용도 크게 걱정이 안되었다. 테스트할 때 잠깐 쓰고 종료시킬 거기도 하고, IP도 public으로 할필요 없다. 어떻게 보면 인터넷 좋은 카페에 가서 테스트하는 것보다 훨씬 저렴할 것 같다. good


비용이 생각보다 많이 나왔다

비용

여기 적혀있는 분홍색 load-test-vm...

5630원이나 나왔는데, 이게 하루치 비용이다. 체감상 한 5시간 안되게 썼던 것 같은데, 생각보다 비용이 많이 나왔다. ㅜㅜ


테스트 해보기

k6로 테스트를 해보았다. (TEST용도의 VM → 배포 서버)

테스트 성공

너무 잘된다 야호 ^^

그냥 하면서 불편했던 점과 (도란도란 이야기)

불편했던 점은..

학교 도서관에서 개발을 자주 한다. (모니터 제공을 해줘서 ㅎㅎ)

그런데 최근 학교 도서관이 리뉴얼을 하면서, wifi의 SSH 아웃바운드를 막아버렸다. 그래서 로컬로 SSH 접속을 못하고, 테스트 할때마다 Azure 웹사이트 터미널로 들어가야한다. 디자인도 조금 구리고… 불편하고…

인터넷 대역폭도 그렇고, 아웃바운드도 그렇고 개발하면서 불편한 사항이 많다.

그래도 재미있었다

하지만 이참에 여러가지 우회하는 방법들을 시도해보면서, 신기한 경험들을 많이 했던 것 같다. SSH로 파일 이동이 불가능해서, google drive link로 옮겼다거나, 500MB 이상 파일은 또 google drive 다운로드가 안되어서(보안 문제), Azure 베스천을 쓴다거나… 그냥 여러모로 신기한 경험을 많이 한 것 같다.

이렇게 예상치 못한 일로 막히거나 지체되는 일이 많아서, 답답함도 느끼고 그랬지만, 막상 지나고 나면 얻어가는게 있다. 그러니 어떤 일을 할 때에도 이런 자세로 하길 스스로에게 바란다.

profile
호기심 많은 개발자

0개의 댓글