컴퓨터공학과 21411861 신수형

1. 부하분산기의 역할과 목적

로드밸런싱은 여러 대의 서버를 두고 서비스를 제공하는 분산 처리 시스템에서 필요한 기술이다.

로드밸런싱은 항상 필요한가?

서비스의 제공 초기 단계라면 적은 수의 클라이언트로 인해 서버 한 대로 요청에 응답하는 것이 가능하다. 하지만 사업의 규모가 확장되고, 클라이언트의 수가 늘어나게 되면 기존 서버만으로는 정상적인 서비스가 불가능하게 된다. 이처럼 증가한 트래픽에 대처할 수 있는 방법은 크게 두 가지이다.

scale-up 의 경우 서버 자체의 성능을 확장하는 것을 의미한다. 비유하자면 CPU가 i3인 컴퓨터를 i7으로 업그레이드하는 것과 같다.

scale-out의 경우 기존 서버와 동일하거나 낮은 성능의 서버를 두 대 이상 증설하여 운영하는 것을 의미한다. CPU가 i3인 컴퓨터를 여러 대 추가 구입해 운영하 것에 비유할 수 있다.

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

Untitled

2. 부하분산기 생성 과정

부하분산기를 운영하려면, 실제로 서비스를 제공할 인스턴스를 만들어야 한다. ‘분산’이 목표이기 때문에 하나의 인스턴스가 아니라 여러개의 인스턴스에 동일한 서비스를 배포해서 하나의 그룹으로 묶어주는 과정이 필요하다. 하지만 지금은 로드밸런서가 정상적으로 동작하는지 확인하는 과정이기 때문에 두개의 인스턴스에 각각 다른 서비스를 배포하려고 한다.