카테고리 없음

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

seunjang 2022. 5. 8. 18:02
728x90

로드밸런서 : 서버에 가해지는 부하(=로드)를 분산(=밸런싱)해주는 장치 또는 기술
- 주로 클라이언트와 서버풀(Server Pool, 분산 네트워크를 구성하는 서버들의 그룹) 사이에 존재
- 한 대의 서버로 부하가 집중되지 않도록 트래픽을 관리하여 각각의 서버가 최고의 퍼포먼스를 낼 수 있도록 도움

Scale-up : 서버 자체의 성능을 확장하는 것
Scale-out : 기존 서버와 동일하거나 낮은 성능의 서버를 두 대 이상 증설하여 운영하는 것
- 서버 정설 시 여러 대의 서버로 균등하게 트래픽을 분산하기 위해 로드밸런싱 기술이 필요

다양한 로드밸런싱 알고리즘

  1. 라운드로빈 방식
    • 서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식
  2. 가중 라운드로빈 방식
    • 각각의 서버마다 가중치를 매기고 가중치가 높은 서버에 클라이언트 요청을 우선적으로 배분하는 방식
  3. IP 해시 방식
    • 클라이언트의 IP 주소를 특정 서버로 매핑하여 요청을 처리하는 방식
  4. 최소 연결 방식
    • 요청이 들어온 시점에 가장 적은 연결상태를 보이는 서버에 우선적으로 트래필을 배분하는 방식
  5. 최소 리스폰타임
    • 서버의 현재 연결 상태와 응답시간을 모두 고려하여 트래픽을 배분하는 방식

L4 로드밸런서와 L7 로드밸런서
- L4 로드밸런서부터 포트정보를 바탕으로 로드를 분산하는 것이 가능하기 때문에, 부하 분산에는 L4와 L7 로드밸런서가 가장 많이 활용됨
- L4 로드밸런서는 네트워크 계층이나 트랜스포트 계층의 정보를 바탕으로 로드를 분산(TCP/UDP 포트 정보를 바탕)
- L7 로드밸런서는 애플리케이션 계층에서 로드를 분산(TCP/UDP 정보는 물론 HTTP의 URI, FTP의 파일명, 쿠키 정보 등을 바탕)
- L7 로드밸런서의 경우 특정한 패턴을 지닌 바이러스를 감지해 네트워크를 보호할 수 있으며, DoS/DDoS와 같은 비정상적인 트래픽을 필터링할 수 있어서 네트워크 보안 분야에서도 활용

728x90