로드 밸런서의 종류
- 일반적으로 우리가 아는 로드 밸런서라 함은 주로 L7 계층에서 응용 계층의 요청의 컨텍스트(HTTP의 헤더등)를 기반으로 분배하는 L7 로드 밸런서와 IP나 포트 번호를 기반으로 분배하는 L4 로드 밸런서가 존재합니다.
L4 로드 밸런서
- 목적: 주로 IP 주소 및 포트 번호와 같은 전송 계층 헤더 정보를 기반으로 트래픽을 분산합니다.
- 동작: 주로 TCP 및 UDP와 같은 전송 계층 프로토콜을 기반으로 동작하며, 패킷의 목적지 IP 주소와 포트 번호를 확인하여 서버 그룹 간에 트래픽을 분산합니다.
- 로드 밸런싱 방식: 주로 라운드 로빈, 최소 연결, 최소 부하, 세션 지속성 등의 알고리즘을 사용하여 트래픽을 분배합니다.
L7 로드 밸런서
- 목적: 애플리케이션 계층에서 동작하며, 사용자 요청의 내용과 애플리케이션 프로토콜을 기반으로 트래픽을 분산합니다.
- 동작: HTTP 헤더, 쿠키, URL 경로 등과 같은 애플리케이션 계층 헤더 및 데이터를 분석하여 트래픽을 관리합니다. 따라서 더 높은 수준의 지능을 가지고 있어서 애플리케이션 특정 기능을 수행할 수 있습니다.
- 로드 밸런싱 방식: 주로 HTTP/HTTPS 프로토콜을 기반으로 한 로드 밸런싱 알고리즘을 사용합니다. 예를 들어, 요청의 유형, 사용자의 지역, 쿠키 정보 등을 고려한 로드 밸런싱이 가능합니다.
로드 밸런서는 어떻게 요청을 분배하는가?
다양합니다. 이에 맞는 알고리즘들이 여럿 존재합니다. 대표적인 몇가지 알고리즘을 나열해보면 다음과 같습니다.
- 라운드 로빈 (Round-Robin)
- 가중치 기반 라운드 로빈 (Weighted Round-Robin)
- 최소 연결 (Least Connection)
- 가중치 기반 최소 연결
- 최소 응답 시간
시각적으로 잘 설명한 게시글이 있어 참조합니다.
요약
요약: