아마존 ec2 설정 페이지에 들어가 보면 "로드 밸런싱"이라는 섹터가 있는데
이 로드 밸런싱이란 대체 무엇일까?
얻어갈 지식
- 로드 밸런싱
"로드 밸런싱"
로드 밸런싱이란?
로드 밸런싱( 부하 분산 )은 둘 혹은 셋 이상의 자원들에게 작업을 나누는 것을 의미한다. 이로써 가용성 및 응답 시간을 최적화시킬 수 있다. 예를 들어 여러 대의 서버로 하나의 애플리케이션을 서비스할 때 사용자의 요청을 어느 서버로 보낼지 정해주는 것을 로드 밸런싱이라고 한다.
로드 밸런서의 동작 순서
로드 밸런서는 보통 아래와 같은 순서로 동작한다.
- 클라이언트가 브라우저에서 naver.com이라고 입력하여 DNS로 해당 IP 문의
- DNS는 로드밸런서의 VIP ( Virtual IP ) 주소를 알려줌
- 클라이언트는 로드 밸런서의 VIP로 https 요청
- 로드밸런서는 별도 로드밸런싱 알고리즘을 통해 서버에게 요청을 전송
- 서버의 작업 결과를 받은 로드밸런서는 전달받은 https 결과를 클라이언트에게 전송
로드밸런싱 알고리즘
- 라운드 로빈 방식
- 서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식
- 요청을 순서대로 분배하기 때문에 여러 대의 서버가 동일한 스펙을 갖고 있고 서버와의 연결이 길지 않을 때 적합하다
- 가중 라운드 로빈 방식
- 서버마다 가중치를 매기고 가중치가 높은 서버에 우선적으로 요청을 배분하는 방식
- IP 해시 방식
- 클라이언트의 IP 주소를 특정 서버로 매핑하여 오청을 처리하는 방식
- 같은 IP는 항상 같은 서버와 연결된다.
- 최소 연결 방식
- 요청이 들어온 시점에 가장 적은 세션을 갖고 있는 서버로 트래픽을 보내는 방식
- 최소 응답 시간 방식
- 가장 빠른 응답 시간을 갖는 서버로 트래픽을 우선 보내주는 방식이다.
로드 밸런서의 종류
L4 로드밸런서와 L7 로드밸런서가 있다.
- L4 로드밸런싱
- L4 로드밸런서는 네트워크 계층, 트랜스포트 계층의 정보를 바탕으로 로드를 분산한다.
IP주소나 포트번호, 전송 프로토콜에 따라 트래픽을 나누는 것이 가능하다.
- L4 로드밸런서는 네트워크 계층, 트랜스포트 계층의 정보를 바탕으로 로드를 분산한다.
- L7 로드밸런싱
- L4의 기능 + OSI 7 계층 프로토콜 ( HTTP, SMTP, FTP 등 )을 기준으로도 분산 처리 가능하다.
"정리"
로드밸런싱이란 여러 대의 서버가 있을 때 어느 서버에 요청을 가져다 줄지 정해주는 것이고
요청을 어느 서버에 배분할지 정하는 여러 알고리즘이 있으며 로드밸런서는 그중 하나를 채택하여 요청을 배분한다.
참고 문서
https://ko.wikipedia.org/wiki/%EB%B6%80%ED%95%98%EB%B6%84%EC%82%B0
'네트워크' 카테고리의 다른 글
컴퓨터 네트워크 기본 5 (0) | 2023.01.09 |
---|---|
컴퓨터 네트워크 기본 4 (0) | 2023.01.09 |
컴퓨터 네트워크 기본 3 (0) | 2023.01.07 |
컴퓨터 네트워크 기본 2 (0) | 2023.01.07 |
컴퓨터 네트워크 기본 1 (0) | 2022.11.05 |