카테고리 없음

로드밸런서Load Balancer

기기디 2024. 2. 29. 11:58

배경

  • 서버에 많은 클라이언트의 요청을 응답하기 어려울 경우, 문제해결 방법으로는 크게 두가지가 있다.
    • scale-up : 서버가 더 빠르게 동작하도록 단일서버의 하드웨어의 성능을 올리는 방법
    • scale-out : 하나의 서버보다는 여러대의 서버가 나눠서 일을 하는 방법. 무중단서비스를 재공할 수 있다.
  • 로드밸런서는 이 중 scale-out에 관한 방법이다.

정의

  • 클라이언트의 요청에 대하여 각각 서버의 부하,속도저하를 고려하여 적절히 분산처리해주는 것을 말한다.
  • 트래픽을 여러대의 서버에 균등하게 분산시켜주는 역할을 한다.

분산방식

  • Round Robin라운드로빈
    • 서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식을 말한다.
  • Least Connections최소 연결 방식
    • 연결개수가 가장 작은 서버를 선택하는 방식
    • 트래픽으로 인하여 하나의 세션이 길어지는 경우 권장하는 방식
  • IP해시방식 Source
    • 사용자의 IP를 Hashing하여 분배하는 방식
    • 사용하는 항상 같은서버로 연결된다.

분류

  • L2 : Mac Address를 기반으로 Load Balancing
  • L3 : IP주소를 기반으로 Load Balancing
  • L4 : Transport Level(전송계층 ex>TCP, UDP)에서 Load Balancing.
  • L7 : Application Layer Level(HTTP Request)에서 Load Load Balancing.

부가기능

  • NAT
    • 사설IP주소를 공인IP주소로 바꾸는데 사용하는 통신망의 주소변조기
  • Tunneling
    • 눈에 보이지 않는 통로를 만들어 통신할 수 있게 하는 개념
    • 데이터를 캡슐화하여 연결된 상호간에만 캡슐화된 패킷을 구별해 캡슐화를 해제할 수 있다.
  • DSR
    • 로드 밸런서 사용시 서버에서 클라이언트로 되돌아가는 경우 목적지 주소를 스위치의 IP주소가 아닌 클라이언트의 IP주소로 전달해서 네트워크 스위치를 거치지 않고 바로 클라이언트를 찾아가는 개념