일기장

GSLB 복습1. 언제 사용할까? 특징 정리

graph-dev 2025. 1. 16. 17:05
728x90

 

GRM

Global Server Load Balancing

 

 

 

GSLB에 대해 지난 글을 보면서, 복기를 해보았습니다.

 

우연한 계기로 이 기능에 대해 다시 생각해볼 수 있었습니다. 개념은 잘 모르는 채로, 이것이 어떤 부하분산을 하는데, 글로벌하게 할 수 있겠다고만 생각했습니다. 로드밸런서의 기능 중 하나 정도로 생각하고, 과거 교육 들을 때 느낌처럼 어떤 이중화와 재해 복구(DR)에 사용할 수 있다는 사실만 기억만 했지, 세부적인 기능은 간과했었네요.

 

먼저 생성형 AI 의 도움을 받아 GSLB의 주요 기능을 정리 해보았습니다.

GSLB(Global Server Load Balancing)는 전 세계에 분산된 서버 간의 부하를 분산하고, 최적의 서버로 트래픽을 라우팅하는 기술입니다. 주요 기능은 다음과 같습니다:

1. 트래픽 분산
   - 여러 데이터 센터 또는 서버 간에 트래픽을 분산하여 특정 서버나 데이터 센터에 과부하가 걸리지 않도록 합니다.

2. 사용자 위치 기반 라우팅
   - 사용자의 지리적 위치를 기준으로 가장 가까운 서버에 트래픽을 전달하여 지연(latency)을 최소화합니다.

3. 고가용성
   - 특정 데이터 센터나 서버가 다운되거나 응답하지 않을 경우, 다른 가용한 서버로 트래픽을 자동으로 전환(failover)합니다.

4. 성능 기반 라우팅
   - 서버의 상태(응답 시간, 가용성 등)를 실시간으로 모니터링하고 가장 성능이 좋은 서버로 트래픽을 라우팅합니다.

 

 

가장 기본적인 트래픽 분산, 사용자 위치 기반 라우팅, 고가용성, 성능 기반 라우팅을 할 수 있씁니다. 트래픽 부하 분산은 기본이고, 다만 데이터 센터나 서버 간에 트래픽을 분산하니까 좀 큰 단위에서 트래픽 분산이 가능하다고 보면 되겠습니다.

 

사용자 위치 기반 라우팅은, 기존에 사용하는 CDN 서비스와 유사하네요. 가까운 서버로 트래픽을 보내서 지연 시간을 최소화한다는 점이 그렇습니다.

 

고가용성 측면은, 이게 이제 이중화/재해복구와 관련이 있습니다. 특정 데이터 센터 및 서버가 다운되더라도, 다른 가용 서버에서 페일오버로 전환할 수 있어, "서비스의 연속성"을 가져갈 수 있을 것이라 생각 합니다. 성능 기반 라우팅은 좀 새롭네요. 실시간 모니터링 후 가장 성능 좋은 서버로 트래픽을 라우팅한다니, 신기합니다.

 

5. DNS 기반 부하 분산
   - DNS 쿼리를 활용하여 클라이언트에게 최적의 서버 IP 주소를 제공하고, 부하를 분산합니다.

6. 컨텐츠 분배 최적화
   - 특정 서버가 제공할 수 있는 컨텐츠 유형(예: 지역별 규정에 따른 컨텐츠 차별화)을 기반으로 트래픽을 분배합니다.

7. 재해 복구 지원
   - 데이터 센터 간 이중화 구성으로, 하나의 데이터 센터가 장애를 겪더라도 다른 데이터 센터를 통해 서비스를 지속적으로 제공할 수 있습니다.

8. 보안 강화
   - DDoS 공격 및 기타 보안 위협으로부터 네트워크를 보호하기 위해 트래픽을 필터링하거나 특정 서버로 제한적으로 라우팅합니다.

이 기능들은 주로 대규모 웹 서비스, 클라우드 애플리케이션, 글로벌 비즈니스 환경에서 높은 안정성과 성능을 보장하는 데 사용됩니다.

 

DNS 기반 부하 분산으로 최적의 서버 IP 주소를 제공하고, 콘텐츠 유형 분배는 지역(리전)에 따라 콘텐츠를 나누어 분배한다는 것인데, 이 점이 확실히 특정 서비스를 글로벌로 출시할 때, 규제에 맞게 분배한다면 유용할 것으로 보입니다. 재해 복구는 앞에서 이중화, 고가용성 측면에서 다루었고, 보안 강화를 위한 제한적인 라우팅을 할 수 있어 유익해 보입니다.

 

대규모 웹 서비스, 특히 글로벌한 서비스 출시를 위해서 높은 안정성과 성능을 보장한다면 GSLB가 필수적이라고 생각이 듭니다.

 

다음 글은, 이와 관련된 클라우드 상품을 정리하고, 비교해보겠습니다.