본문 바로가기
넓고 얕은 네트워크 지식

로드밸런싱 1분 요약 정리

by 황원용 2023. 1. 10.
728x90

로드 밸런서, 로드 밸런싱이 뭘까?

  • 로드 밸런싱(Load Balancing)
    • 두 개 이상의 컴퓨터 자원에 작업을 나누어 트래픽을 분산시키는 것을 의미한다.
    • 로드 밸런서
      • 로드 밸런싱 기술을 제공하는 서비스 또는 장치를 말한다.
      • AWS의 ELB는 아마존에서 제공하는 로드밸런서이다.
      • 지속적으로 IP주소가 바뀌기 때문에 도메인 기반으로 사용해야 한다.
    • 로드밸런싱의 장점
      • 고성능, 고비용의 서버로 확장하는 대신 저렴한 비용에 다수의 서버를 증설하여 비용 절감을 할 수 있다.
      • 다수의 서버를 사용하므로 1대의 서버에 장애가 발생하여도 다른 서버로 자동 분배하여 무중단 서비스를 제공할 수 있다.
💡 잠깐 생각해 볼 내용
 서버가 하나일 때를 생각해 보자. 하나의 서버로 감당할 수 없는 양의 트래픽이 발생한다면 서버는 다운되고 서비스 공급은 중단될 것이다. 이 문제를 해결하기 위해서는 크게 두 가지 방법이 있다. 하나는 서버의 인스턴스 성능을 올리는 스케일 업(Scale-Up), 또 하나는 트래픽을 여러 대의 서버로 나눠 처리하는 스케일 아웃(Scale-Out).

느낌이 왔는가?

그렇다. 로드 밸런싱은 스케일 아웃 방식이다.

 

로드밸런싱에서 사용하는 주요 기능

네트워크 주소 변환(NAT, Network Address Translation)

  • 사설 IP 주소를 공인 IP 주소로 변경한다.

동적 소스 라우팅 프로토콜(DSR, Dynamic Source Routing Protocol)

  • 서버에서 클라이언트로 되돌아갈 때 목적지 주소를 클라이언트의 IP 주소로 전달해 네트워크 스위치를 거치치 않고 바로 클라이언트를 찾아간다.

터널링(Tunneling)

  • 인터넷 상에서 눈에 보이지 않는 통로를 만들어 통신할 수 있게 한다.

 

로드밸런싱 알고리즘

  • 로드밸런싱 의사결정을 수행하기 위한 알고리즘이다.
    • 라운드 로빈(RR, Round Robin)
      • 서버에 들어온 요청의 순서대로 돌아가며 배정한다.
      • 균등하게 분산이 이루어진다.
      • 서버와 연결이 오래가지 않는 경우 적합하다.
    • 가중 라운드 로빈(Weighted Round Robin)
      • 각 서버에 가중치를 부여해 정숫값을 통해 처리 용량을 결정한다. 
      • 요청에 대한 부하가 많으면 서버 사이에 부하 불균형이 생길 수 있다.
      • 라운드 로빈은 가중 라운드 로빈에서 모든 가중치가 동일한 경우이다.
    • IP 해시 방식
      • 클라이언트의 IP 주소를 특정 서버로 매핑하여 요청을 처리한다.
      • 사용자가 항상 동일한 서버로 연결된다.
    • 최소 연결 방식(Least Connection Method)
      • 연결 수가 가장 적은 서버에 트래픽을 배정한다.
      • 서버에 들어온 트래픽이 일정하지 않을 때 적합하다.

 

728x90