본문바로가기

닫기

[IT KEYWORD] 로드밸런싱이란?

2022.07.29




- 로드밸런싱이란? + 로드밸런서
로드밸런싱(=부하 분산)은 처리해야 할 업무나 요청을 중앙처리장치 또는 저장 장치와 같은 컴퓨터 자원에 작업을 분산하는 것을 의미합니다. 클라이언트의 요청을 일관성 있게 응답하기 위해 외부로부터 들어오는 요청을 서버에 적절히 배분하여 요청을 처리하도록 합니다. 예를 들어, 이지미디어에서 외부로부터 처리해야 할 업무를 받아 나누어 주는 행위도 로드밸런싱이라고 볼 수 있습니다. 다수의 사람들이 작업을 나누어 처리하기 때문에 지연 없이 작업을 처리하고 속도를 낼 수 있습니다. 우리가 외부로부터의 요청을 처음부터 직접 받지 않는 것처럼, 서버도 직접 요청을 받는 것이 아닌 ‘로드밸런서’가 받아 서버에 적절히 나누어 줍니다.


로드밸런싱


서버는 하나인데 많은 사람들이 서버에 동시 접속할 경우, 부하를 감당하지 못할 가능성이 높습니다. 이 경우 장비를 업그레이드하는 Scale-up 방식과 Scale-out 방식 중 한 가지로 해결합니다.
Scale-up의 경우에는 서버 자체의 성능을 확장하는 것을 의미하기 때문에 문제없지만, Scale-out의 경우 기존 서버와 동일하거나 더 낮은 서버를 두 대 이상 증설하는 것을 의미합니다. Scale-out 방식으로 서버를 증설하기로 했다면, 여러 대의 서버로 트래픽을 균등하게 분산하는 로드밸런싱이 반드시 필요한 상황이 됩니다. 


스케일업다운
 

만약 로드밸런싱 없이 Scale-out 방식을 사용한다면 어떻게 될까요?
100명의 사용자가 2대의 서버에 접속한다고 가정했을 때 99명의 사용자가 서버 1에 접속, 1명의 사용자가 서버 2에 접속하는 이슈가 발생할 수도 있습니다. 이러한 현상을 방지하기 위해서는 서버에 가해지는 부하를 적절히 분산하는 작업인 로드밸런싱이 필요합니다. 


로드밸런싱2


- 로드밸런서의 종류
로드밸런서는 OSI 7 계층을 기준으로 어떻게 부하를 분산하는지에 따라 종류를 나눕니다.
종류는 L1~L7까지 다양한 계층이 존재하는데, 상위계층에서 사용하는 장비는 하위 계층의 기능을 모두 가지고 있고 상위계층으로 갈수록 섬세한 로드밸런싱이 가능한 만큼 가격도 비싸집니다. 이중 L4, L7 로드밸런서를 가장 많이 사용합니다. 한 대의 서버에서 다수의 서버 프로그램을 운영하는 경우라면 최소 L4 이상을 사용해야 한다고 하니 L4과 L7 두 가지 로드밸런서에 대해 알아보겠습니다.

L4 로드밸런서 : L4 계층에서 동작하며, 네트워크 계층이나 트랜스포트 계층의 정보를 바탕으로 로드밸런싱 합니다. IP 주소, 포트 번호, MAC 주소, 전송 프로토콜에 따라 트래픽을 나눌 수 있습니다.
L7 로드밸런서 : 애플리케이션에서 로드밸런싱 하기 때문에 HTTP 헤더, 쿠키 같은 사용자의 요청을 기준으로 요청을 보다 세분화해 서버에 전달할 수 있습니다. 특정 패턴을 지닌 바이러스를 감지하고 비정상적인 트래픽을 필터링 할 수 있어 네트워크 보안 분야에서도 활용하고 있습니다.


- 로드밸런싱의 방법
서버에 부하를 고르게 분산하는 것에도 여러 가지 방법이 있습니다. 서버의 능력을 고려해서 분배해야 서버가 다운되지 않으니, 주어진 상황에 맞춰 적절한 방법을 선택하면 됩니다.

- L4 로드밸런싱
1) Round Robin (라운드 로빈)
기본 로드밸런싱 설정이며 서버에 들어온 요청을 순서대로 배정합니다. 여러 대의 서버가 동일한 스펙을 가지고 있고, 서버 연결(세션)이 오래 지속되지 않는 경우에 사용합니다. 서버를 순회하면서 서비스하는데 만약 A, B, C 3개의 서버가 있을 경우 A => B=> C => A 순서로 순회합니다.

2) Least Connection (최소 연결 방식)
요청이 들어온 시점에서 연결 개수가 가장 적은 서버에 우선적으로 배분합니다. 트래픽으로 인해 세션이 자주 길어지는 경우에 사용합니다. 로드밸런싱 방법 중 가장 많이 사용되는 방식입니다. 

3) Fastest Response Time (가장 빠른 응답 시간)
응답속도가 가장 빠른 서버에 우선적으로 배분합니다. 각 서버들의 가용 가능한 리소스와 성능, 처리 중인 데이터가 다를 경우에 적합한 방식입니다. 조건이 잘 들어맞는 서버가 있을 시에는 여유 있는 서버보다 먼저 할당됩니다.

Ex) A : 할당된 서버 5개, 요청 5개 (o)
B : 할당된 서버 10개, 요청 5개 (x)

4) Ratio (가중치)
라운드 로빈 방식으로 분배하되 가중치가 높은 서버일수록 더 많은 일을 처리하게 됩니다. 여러 서버가 같은 사양이 아니고, 특정 서버의 스펙이 월등히 좋은 경우 해당 서버의 가중치를 높게 줘 처리량을 늘릴 수 있습니다.

5) Source hash Scheduling (해시 기반 스케줄링)
사용자의 IP를 *해싱한 후 그 결과에 따라 서버로 요청을 분배하기 때문에 특정 클라이언트는 특정 서버로만 할당하는 방식입니다. 
*해싱 : 원본 문자열을 알아볼 수 없는 문자열로 정의하는 과정으로, 데이터의 위조/변조를 막기 위해 전자서명이나 보안 알고리즘에 사용함


- L7 로드밸런싱
1) URL Switching (URL 스위칭 방식)
URL 주소를 확인해 설정에 알맞은 서버로 부하를 분산하는 방식입니다. '.../images' 혹은 '.../video' 와 같은 URL은 서버가 아닌 별도의 스토리지에 있는 객체 데이터로 바로 연결되도록 구성할 수 있습니다.

2) Context Switching (컨텍스트 스위칭 방식)
클라이언트가 요청한 특정 리소스에 따라 특정 서버로 연결할 수 있습니다. 이미지 파일에 대해서는 확장자를 참조해 별도로 구성된 이미지 파일이 있는 서버 또는 스토리지에 직접 연결해 줄 수 있습니다. 

3) Persistence with Cookies (쿠키 지속성)
쿠키 정보를 바탕으로 클라이언트가 연결했던 서버에 계속 할당해 주는 방식입니다. HTTP header의 쿠키 값 설정에 따라 스위칭 할 서버를 결정합니다.


- 로드밸런싱의 단점과 해결 방
로드밸런서를 사용할 때 한 대의 로드밸런스 서버가 여러 대의 서버로 요청을 분산하기 때문에 로드밸런스 서버에서 장애를 일으키면 서비스 전체가 정지된다는 단점이 있습니다. 
로드밸런싱에서 보편적으로 사용하는 위와 같은 형태 외에 고가용성 로드밸런서를 사용하면 단점을 해결할 수 있습니다. 고가용성 로드밸런서는 두 대의 로드밸런스 서버가 마스터와 스탠바이 역할을 가집니다. 마스터 서버가 로드밸런스를 담당하다가 장애를 일으키면, 대기 상태의 스탠바이 서버가 로드밸런스를 담당하게 됩니다. 마스터 서버가 복구되면 스탠바이 서버는 다시 대기 상태가 되는 안정적인 형태입니다. 




[출처]

목록으로
맨 위로

개인정보처리취급방침

개인정보 수집 및 이용에 대한 안내

(주)이지미디어(이하 회사)는 이용자의 개인정보보호를 매우 중요시하며, 『정보통신망 이용촉진 및 정보보호에 관한 법률』, 『개인정보보호법』 등 개인정보보호 관련 규정을 준수하고 있습니다.회사는 본 개인정보취급방침을 통하여 이용자에게서 제공 받은 개인정보가 어떠한 용도 및 방식으로 이용되고 있으며, 개인정보보호를 위해 어떤 조치를 취하고 있는지 알려드립니다.
회사의 개인정보취급방침은 다음과 같은 내용을 담고 있습니다.

1. 개인정보의 수집 및 이용 목적
2. 수집하는 개인정보의 항목 및 수집방법
3. 개인정보의 제3자 제공
4. 개인정보의 보유 및 이용기간
5. 개인정보 파기절차와 방법
6. 이용자의 권리, 의무 및 행사방법
7. 개인정보의 기술적/관리적 보호 대책
8. 개인정보 자동수집 장치의 설치/운영 및 거부에 관한 사항
9. 개인정보보호 책임자 및 담당자
10. 기타 부가방침

1. 개인정보의 수집 및 이용 목적

회사는 다음과 같은 목적을 위해 개인정보를 수집하고 이용합니다.
- 서비스 제공, 콘텐츠 제공, 웹 컨설팅 기초 자료 확보, 마케팅 활용, 상담 신청 처리 등을 위한 원활한 의사소통 경로 확보

2. 수집하는 개인정보의 항목 및 수집방법

회사는 다음과 같은 항목들을 수집하여 처리합니다.
- 필수항목 : 회사명, 담당자명, 핸드폰, 연락처, 이메일

3. 개인정보의 제3자 제공

회사는 이용자의 동의 없이 개인정보를 제3자에게 제공하지 않습니다. 다만, 관련 법령에 의한 경우는 예외로 합니다.

4. 개인정보의 보유 및 이용기간

회사는 원칙적으로 이용자의 개인정보 수집 및 이용목적이 달성되면 지체 없이 파기합니다.
관계법령의 규정에 의하여 보존할 필요가 있는 경우에는 일정기간 동안 보존합니다.
- 문의하기 : 1년(정보통신망법)

5. 개인정보 파기절차와 방법

회사가 보유하고 있는 개인정보에 대한 파기절차와 방법은 다음과 같습니다.

ㆍ파기절차 이용자가 견적 문의 등을 위해 입력하신 정보는 목적이 달성된 후 내부 방침 및 기타 관련 법령에 의한 정보보호 사유에 따라(보유 및 이용기간 참조) 일정 기간 저장된 후 파기합니다.

ㆍ파기방법 전자적 파일형태로 저장된 개인정보는 기록을 재생할 수 없는 기술적 방법을 사용하여 삭제합니다. 종이에 출력된 개인정보는 분쇄기로 분쇄하거나 소각을 통하여 파기합니다.

6. 이용자의 권리, 의무 및 행사방법

1) 정보주체는 회사에 대해 언제든지 다음 각 호의 개인정보 보호 관련 권리를 행사할 수 있습니다.
- 개인정보 열람 요구
- 오류 등이 있을 경우 정정 요구
- 삭제 요구
- 처리정지 요구

2) 제1항에 따른 권리 행사는 회사에 대해 서면, 전화, 전자우편, 모사전송(FAX) 등을 통하여 하실 수 있으며 회사는 이에 대해 지체 없이 조치하겠습니다.

3) 정보주체가 개인정보의 오류 등에 대한 정정 또는 삭제를 요구한 경우에는 회사는 정정 또는 삭제를 완료할 때까지 당해 개인정보를 이용하거나 제공하지 않습니다.

4) 제1항에 따른 권리 행사는 정보주체의 법정대리인이나 위임을 받은 자 등 대리인을 통하여 하실 수 있습니다. 이 경우 개인정보 보호법 시행규칙 별지 제11호 서식에 따른 위임장을 제출하셔야 합니다.

5) 정보주체는 개인정보보호법 등 관계법령을 위반하여 회사가 처리하고 있는 정보주체 본인이나 타인의 개인정보 및 사생활을 침해하여서는 아니 됩니다.

7. 개인정보의 기술적/관리적 보호 대책

회사는 개인정보보호법 제29조에 따라 이용자의 개인정보가 분실, 도난, 누출, 변조 또는 훼손되지 않도록 다음과 같은 기술적 대책을 마련하고 있습니다.

1) 회사는 해킹이나 컴퓨터 바이러스 등에 의해 이용자의 개인정보가 유출되거나 훼손되는 것을 막기 위해 최선을 다하고 있습니다. 개인정보의 훼손에 대비해서 자료를 수시로 백업하고 있고, 최신 백신프로그램을 이용하여 이용자들의 개인정보나 자료가 누출되거나 손상되지 않도록 방지하고 있으며, 암호화 통신 등을 통하여 네트워크상에서 개인정보를 안전하게 전송할 수 있도록 하고 있습니다.그리고 침입차단시스템을 이용하여 외부로부터의 무단 접근을 통제하고 있으며, 기타 시스템적으로 보안성을 확보하기 위한 가능한 모든 기술적 장치를 갖추려 노력하고 있습니다.

2) 담당자를 지정해 개인정보를 취급하는 직원을 최소화하며, 이를 위한 별도 비밀번호를 부여해 정기적으로 갱신하고 있습니다. 또한 담당자에 대한 수시 교육을 통하여 개인정보보호 준수를 강조하고 있습니다.

8. 개인정보 자동수집 장치의 설치/운영 및 거부에 관한 사항

회사는 이용자에게 맞춤 서비스 등을 제공하기 위해 이용자의 정보를 수시로 저장하고 불러오는 쿠키(Cookie)를 사용합니다.쿠키란 웹사이트를 운영하는 데 이용되는 서버가 이용자의 컴퓨터 브라우저에 보내는 소량의 정보며, 이용자의 컴퓨터 하드디스크에 저장됩니다. 쿠키는 이용자의 컴퓨터를 식별하지만 이용자 개개인을 식별하지 않습니다.
이용자는 쿠키 설치에 대한 선택권을 가지고 있습니다. 이용자가 사용하는 웹 브라우저의 옵션을 설정함으로써 모든 쿠키를 허용하거나, 쿠키를 저장할 때마다 확인을 거치거나, 모든 쿠키의 저장을 거부할 수 있습니다.

설정 방법의 예

1) Internet Explorer의 경우 : 웹 브라우저 상단의 도구 > 인터넷 옵션 > 개인정보 > 설정

2) Chrome의 경우 : 웹 브라우저 우측의 설정 > 화면 하단의 고급 설정 표시 > 개인정보의 콘텐츠 설정 버튼 > 쿠키

9. 개인정보보호 책임자 및 담당자

이용자는 언제든지 회사에게 개인정보 열람, 수정, 정보삭제, 처리정지를 요청할 수 있습니다. 정보삭제 또는 처리정지를 원하시는 경우 개인정보보호 담당자에게 서면, 전화, 이메일로 연락하시면 신속하게 조치하겠습니다.

개인정보 관리책임자

성명 이지성

직위 이사

E. lezis@easymedia.net

T. 02-869-3434

개인정보 관리담당자

성명 안진수

직위 과장

E. ajs0720@easymedia.net

T. 02-869-3434(134)

기타 개인정보 침해에 관한 상담이 필요한 경우에는 아래 기관에 문의하실 수 있습니다.
- 한국인터넷진흥원 개인정보침해신고센터 (privacy.kisa.or.kr / 국번 없이 118)
- 대검찰청 사이버수사과 (http://www.spo.go.kr / 국번 없이 1301)
- 경찰청 사이버안전국 (http://www.ctrc.go.kr / 국번 없이 182)

10. 기타 부가방침

회사는 본 개인정보취급방침의 내용 추가, 삭제 및 수정을 하는 경우 개정 최소 7일 전 홈페이지에 변경 사유 및 내용을 고지하겠습니다.

- 시행일자 : 2022년 6월 10일
닫기닫기