본문 바로가기
T.I.L. :: Today I Learned/항해99 14기 본과정

Day 73. 로드(부하) 밸런서 (분산)

by DaSsom 2023. 6. 15.

아 계속 CI/CD 때문에 삽질을 하고 있는데 계속 BlockTraffic에서 멈추고 실패가 뜬다. 이거 아무리 찾아봐도 로드밸런서 활성화 때문에 발생하는 문제여서 로드밸런서의 임계치 설정을 아무리 낮춰줘도 소용이 없다. 그래서 하루종일 로드밸런서 욕을 하고 있는데, 문득 로드밸런서가 뭐길래? 하는 의문이 들었고 정리해보려고 한다.

 

https://m.post.naver.com/viewer/postView.naver?volumeNo=27046347&memberNo=2521903 

 

로드밸런서(Load Balancer)의 개념과 특징

[BY 가비아] 현대의 모든 정보는 인터넷을 통해 연결되어있습니다. 인터넷의 발달은 데이터 통신을 보다...

m.post.naver.com

 

서버 한 대에서 모든 트래픽을 받다보면 당연히 부하가 걸리고 서버는 다운될 것이다. 그래서 이 로드밸런서가 다량의 트래픽을 여러 서버로 분산을 시켜주며 서버의 부하를 줄여주는 역할을 한다. 클라이언트가 서버에 접속하기 위해서는 로드밸런서를 거치고 해당하는 대상 그룹으로 분산시켜준다.

 



흠 그럼 나의 인스턴스에서는 어떤 것을 분산시켜주는건가? 내가 설정해준 로드밸런서의 대상 그룹에는 3가지가 있다. 80, 8080,443. 80포트의 경우 8080포트로 redirect, 8080요청은 443으로 redirect, 443은 그대로. 그리고 Health check의 경우 HTTP 요청이 "/" 이 경로로 요청이 들어왔다면 200 ok를 던져주기 때문에 80, 8080 포트는 health, 443은 unhealth가 뜬다. 그리고는 정상작동.

분명 로드밸런서가 여러 서버로 분산을 시켜준다고 했는데 나의 경우는 그냥 한 서버에서 여러 포트로 들어오는 트래픽을 분산시켜주는 것인가? 인스턴스가 하나일 경우에는 로드밸런서의 역할이 "여러 서버로 부하 분산"이라기보다  HTTP/HTTPS 포트 redirect가 더 맞을 것 같다.

그리고나서 다시 처음 로드밸런서를 생성할 때 그림을 자세히 살펴보니 ALB라는 녀석이 HTTP/HTTPS 요청을 처리하고 있었다. 그러니까 여러 서버로 부하를 분산시켜주는 경우랑은 조금 다른 것 같다는 생각을 하게 되었다. 뭐 어쨌든 분산은 맞지만 여러 서버로 부하 분산이 아닌..ㅇㅇㅇ!!

 

https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-ELB-Elastic-Load-Balancer-%EA%B0%9C%EB%85%90-%EC%9B%90%EB%A6%AC-%EA%B5%AC%EC%B6%95-%EC%84%B8%ED%8C%85-CLB-ALB-NLB-GLB

 

☁️ ELB(Elastic Load Balancer) 구성 & 사용법 가이드

ELB (Elastic Load Balancer) 이란 ELB(Elastic Load Balancer)란 애플리케이션 트래픽을 여러 대상에 자동으로 분산시켜 안정적인 AWS서버 환경을 운용하는데에 도움을 주는 서비스다. EC2뿐만 아니라 컨테이너(

inpa.tistory.com

 

역시 갓인파넴..!!