로드밸런서

25tutmmu·2022년 3월 1일
0

로드밸런서

클라이언트가 많아져 서버가 원하는 결과를 응답해 줄 수 없을 때 해결 방법은 두 가지가 있다.
scale-up: 하드웨어의 성능을 올린다. -고성능장비로 대체하는 것
- 비용대비 효과가 낮다.
scale-out: 사용중비 장비를 대용량의 장비로 교체하는 것이 아니라, 같은 수준이거나 낮은 장비를 여러대로 재구성하는 방식 - 추가 확장도 용이하다.
- 설계 및 운영을 담당하는 엔지니어가 경험과 노하우가 있고 필요시 소프트웨어 코드 및 설계를 변경해야한다.

그의 반대 경우는 scale-Down , scale-In이다.

Scale-out의 방식으로 서버를 증설하기로 결정했다면 여러 대의 서버로 트래픽을 균등하게 분산해주는 로드밸런싱이 반드시 필요합니다.

로드밸런싱이란? - 부하분산

  • 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산처리하여 서버의 로드율 증가, 부하량, 속도저하 등을 고려하여 적절히 분산처리하여 해결해주는 서비스

    여러 대의 서버에 균등하게 트래픽을 분산시켜주는 역할을 하는 것이 로드 밸런서 이다.

로드밸런서가 서버를 선택하는 기준

라운드로빈 방식(Round Robin Method)

서버에 들어온 요청을 순서대로 돌아가며 배정하는 방식
여러 대의 서버가 동일한 스펙을 가지고있고, 서버와의 연결이 오래 지속되지 않는 경우에 활용하기 적합

가중 라운드로빈 방식(Weighted Round Robin Method)

각 서버마다 가중치를 매기고 가중치가 높은 서버에 요청을 우선적으로 배분 가중치를 매기고 라운드로빈방시긍로 요청 전달
서버의 트래픽 처리 능력이 상이한 경우 사용

IP 해시 방식(IP Hash Method)

클라이언트의 IP 주소를 특정 서버로 매핑하여 요청을 처리하는 방식
해싱해 로드분배
사용자가 항상 동일한 서버로 연결된다.

최소 연결 방식 (Least Connection Method)

요청이 들어온 시점에 가장 적은 연결상태를 보이는 서버에 우선적으로 트래픽을 배분합니다.
자주 세션이 길어지거나, 서버에 분배된 트래픽들이 일정하지 않은 경우에 적합한 방식

최소 리스폰타임(Least Response Time Method)

서버의 현재 연결 상태와 응답시간을 모두 고려하여 트래픽을 배분
가장 적은 연결 상태와 가장 짧은 응답시간을 보이는 서버에 우선적으로 로드를 배분하는 방식

*패킷: 네트워크 전송단위

L4와 L7 로드밸런서가 가장 많이 활용된다. L4부터 포트정보를 바탕으로 분산하는 것이 가능하다.
다수의 서버 프로그램을 운영하는 경우라면 최소 L4 로드밸런서 이상을 써야함

L3 : IP주소를 바탕으로 로드밸런싱합니다.
L4 : Transport 계층을 사용, IP 주소와 포트 번호 부하 분산이 가능
L7 : Application 계층을 사용, URL 또는 HTTP 헤더에서 부하 분산이 가능

참고1
참고2

0개의 댓글