로드밸런서란 무엇인가?
로드밸런서는 서버나 네트워크 장치에 오는 요청을 분산시켜 전체의 처리량을 증가시키고, 부하를 균등하게 처리하여 시스템의 안정성을 높이는 기능을 한다.
L4 로드밸런서와 L7 로드밸런서의 차이
-
L4 로드밸런서:
- 네트워크의 4계층(전송 계층)에서 동작한다.
- TCP, UDP 포트 번호와 IP 주소를 이용해 트래픽을 관리한다.
-
L7 로드밸런서:
- 애플리케이션 계층에서 동작한다.
- HTTP 헤더, URI, SSL 세션 ID 등 애플리케이션 데이터를 분석하여 트래픽을 관리한다.
로드밸런서 알고리즘
- 라운드 로빈(Round Robin)
- 가중 라운드 로빈(Weighted Round Robin)
- 최소 연결(Least Connections)
- 가중 최소 연결(Weighted Least Connections)
- IP 해시(IP Hash)
로드밸런서를 사용하지 않고, DNS를 활용한 로드밸런싱 방법
DNS 로드밸런싱은 도메인 이름에 대한 요청에 대해 여러 서버의 IP 주소를 번갈아 가며 응답함으로써 요청을 분산시키는 방식이다. 이 방법은 구현이 간단하고 비용 효율적이지만, DNS 캐싱으로 인해 로드밸런싱의 효율이 떨어질 수 있고, 세션 지속성을 보장하기 어렵다는 단점이 있다.