본문 바로가기

IT-도서 정리/따라하며 배우는 부하분산 입문

1. 서버 부하분산 개요

1. 서버부하분산 개요

1.1. 서버부하분산 기술이란?

1) 서버에 걸리는 부하를 분산하는 기술

 

1.2. 서버 부하분산이란

1) 서버관리 그 자체를 의미

2) Client Server간에 데이터 이동이 발생하는 client-server 시스템에 있어서, 서버 처리가 처음 발생하는 것은 Client가 접속 시작부터 발생한다.

 

1.3. 분산이란?

1) 동일한 서비스(HTTP FTP)를 제공하고 있는 복수의 서버에 작업을 분배하는 것

2) Client 접속을 복수의 서버에 분배함으로써 복수의 서버에 처리를 분산하게 되며, 결과적으로 서버 부하를 각 서버가 나누어 가지게 된다.

 

1.4. 서버 부하분산 기술의 이점

1) 처리능력 향상

(1) Scale Up : 서버 자체의 성능을 향상 시키는 방법 (서버 교체 또는 부품 교체)

(2) Scale Out : 처리 서버 수를 증가 시키는 방법

(3) 최근 추세는 유연성이 높은 Scale Out이 주류이며, 서버 부하분산이 중심에 있다.

 

2) 장애대처 능력 향상

(1) 기존에 한대의 서버로 서비스를 제공하고 있는 경우 Down 되면 Service를 제공하지 못함.

(2) 서버 부하분산 기술을 사용하면 한 대의 서버가 다운되어도 그 서버를 격리 시켜 다른 서버가 서비스를 제공할 수 있다.

 

3) 유지관리 효율 향상

(1) 서버 패치 적용이나 소프트웨어 업데이트 등의 서비스 유지 관리는 서비스를 제공하고 있으면 정비 작업을 하는 동안은 서비스를 제공할 수 없다.

(2) 서버 부하분산 기술을 이용하면 한 대씩 작업을 하는 것이 가능해지며, 작업을 하는 동안에도 다른 서버가 지속적으로 제공할 수 있다

 

1.5. 세 가지 서버 부하분산 기술

(1) Client가 서버에 접속하면 서버가 알아서 부하분산을 해주는 것이다.

(2) 서버 측에서 부하분산 하기 위해서 DNS 라운드로빈, OS 타입, Appliance 타입이 있다.

 

1) DNS 라운드 로빈

(1) DNS 서버 자체 기능으로 부하분산을 구현

 DNS : 각각의 IP주소에 도메인 네임이라고 하는 이름을 붙여서 알기 쉽게 한 것

(2) DNS 동작방식 : Client 도메인 요청 -> DNS는 데이터베이스로부터 DN과 매칭되는 IP주소 검색하여 Client에게 전달 -> 클라이언트는 전달받은 IP주소에 접속

(3) DNS 라운드 로빈은 하나의 이름에 대한 복수의 IP주소를 DNS서버에 등록하고, Client 요청이 오면 등록된 IP주소를 순서대로 전달하는 방식

(4) 전달되는 IP주소가 바뀌기 때문에 개별 Client가 접속하는 IP주소도 서로 달라지게 됨.

(5) 도메인 네임이 동일해도 접속하는 서버는 달라진다.

(6) 단점

- 서버 장애가 발생해도 알기 어렵다

- 균등하게 부하분산 하지 않는다. (DNS는 일정시간 Cache를 갖고 있다. Cache 기능으로 인해 트래픽이 발생한다)

 

2) OS 타입

(1) OS 타입은 OS가 가지고 있는 자체 기능(서비스)으로 부하분산을 구현하는 방법

(2) WIN2008 에는 NLB 라고 하는 기능이 Cluster 서비스의 하나로 탑재되어 있으며, 리눅스는 LVS (Linux Virtual Server)라고 하는 패키지를 무료로 설치

 

3) Appliance 타입

(1) 어플라이언스 타입은 부하분산 장치라는 부하분산 전용 장비를 사용해 구현하는 방식

(2) 장비를 별도로 준비해야 하므로 비용이 들지만, 부하분산 기능에 특화된 장비로 부하분산을 구현하기에 복잡한 트래픽을 유연하게 처리하는 것이 가능

 

1.6. 서버 부하분산의 진화

(1) 회선 부하분산과 광역 부하분산이 있다.

1) 회선 부하분산

(1) 복수의 인터넷 회선을 전부 사용하고 싶을 때 적용 가능한 기술

(2) 양쪽 인터넷 회선을 A-A로 사용하는 방식. 방화벽 부하분산이라고도 한다.

 

2) 광역 부하분산

(1) 물리적으로 다른 장소에 있는 부하분산하는 기술

(2) DNS 라운드 로빈의 문제점을 해결하고 기능을 향상시킨 기술

(3) 부하분산 장치가 DNS 서버가 되어 각 사이트의 상태를 감시하고 그 결과를 기반으로 IP주소를 변경하여 부하분산을 구현한다.

(4) 광역 부하분산 기술은 부하분산이라기 보다 재해복구(Disaster Recovery)를 목적으로 사용하는 경우가 많아지고 있다.