본문 바로가기

가상 머신/Clustering & Duplication

[ HA ] Load Balancer 알아보기

반응형

로드 밸런서(Load Balancer)는 여러 서버에 걸쳐 네트워크 트래픽을 분산시켜, 하나의 서버가 과부하 되지 않도록 하는 네트워크 장치입니다. 이는 시스템의 가용성, 성능, 확장성 및 안정성을 높이는 데 중요한 역할을 합니다. 로드 밸런서는 다양한 형태와 기능을 가지며, 다음과 같은 주요 기능 및 이점이 있습니다:

1. 로드 밸런서의 주요 기능:

  1. 트래픽 분산(Distribution of Traffic):
    • 로드 밸런서는 들어오는 요청을 여러 서버에 분산시켜 각 서버의 부하를 줄이고, 응답 시간을 최적화합니다.
  2. 고가용성 및 장애 조치(High Availability and Failover):
    • 서버 중 하나가 실패하더라도 로드 밸런서는 자동으로 트래픽을 다른 가용한 서버로 재분배하여 시스템의 연속성을 유지합니다.
  3. 세션 지속성(Session Persistence):
    • 특정 클라이언트가 동일한 서버와 지속적으로 통신할 수 있도록 보장하는 기능입니다. 이는 사용자 세션을 유지하는 데 중요합니다.
  4. 헬스 체크(Health Check):
    • 로드 밸런서는 주기적으로 서버 상태를 확인하여 비정상적인 서버를 트래픽 분산 대상에서 제외합니다.
  5. SSL 종료(SSL Termination):
    • SSL/TLS 암호화 트래픽을 해독하여 백엔드 서버로 전달하기 전에 암호화를 해제하는 기능입니다. 이는 서버의 부하를 줄이고 성능을 향상시킵니다.

2. 로드 밸런서의 종류:

  1. 하드웨어 로드 밸런서(Hardware Load Balancer):
    • 물리적인 장치로 구현된 로드 밸런서입니다. 고성능과 안정성을 제공하지만, 설치와 유지 비용이 높습니다.
  2. 소프트웨어 로드 밸런서(Software Load Balancer):
    • 소프트웨어 형태로 제공되며, 서버나 클라우드 환경에서 실행됩니다. 설치가 용이하고 확장성이 높습니다. 예로는 Nginx, HAProxy 등이 있습니다.
  3. 클라우드 로드 밸런서(Cloud Load Balancer):
    • 클라우드 서비스 제공자가 제공하는 로드 밸런싱 서비스입니다. 관리와 확장이 용이하며, AWS Elastic Load Balancing (ELB), Google Cloud Load Balancing, Azure Load Balancer 등이 있습니다.

3. 로드 밸런싱 알고리즘:

  1. 라운드 로빈(Round Robin):
    • 각 서버에 순서대로 요청을 분산하는 가장 단순한 방법입니다.
  2. 가중 라운드 로빈(Weighted Round Robin):
    • 서버마다 가중치를 부여하여 요청을 분산합니다. 더 강력한 서버에 더 많은 요청을 보낼 수 있습니다.
  3. 최소 연결(Least Connections):
    • 현재 가장 적은 연결을 유지하고 있는 서버에 요청을 보냅니다. 동적인 트래픽 분산에 유리합니다.
  4. IP 해싱(IP Hashing):
    • 클라이언트의 IP 주소를 기반으로 특정 서버에 요청을 보냅니다. 이는 세션 지속성을 유지하는 데 유리합니다.

로드 밸런서는 현대의 웹 서비스 및 애플리케이션에서 필수적인 구성 요소로, 적절한 설정과 관리가 시스템의 성능과 안정성에 크게 기여합니다.

반응형