안녕하세요. ManVSCloud 김수현입니다.
오늘은 GSLB가 무엇인지, 어떤 용도로 사용되는지 등 내용을 포스팅 해보려합니다.
우선 GSLB를 알아보기 전에 DNS와 DDNS가 무엇인지 정도만 간단하게 짚어보겠습니다.

? DNS
Domain Name System의 약자로 분산 네이밍 시스템입니다.
즉, 이 도메인 네임을 IP 주소로 매핑 해주는 서비스는 인터넷에 존재하는 수많은 네임서버는 각각 도메인 계층상의 일부분을 관리하고, 정보를 요구하는 클라이언트입니다.

? DDNS
DDNS, 즉 Dynamic DNS는 실시간으로 DNS를 갱신하며
동적 DNS라고도 불립니다.
DDNS를 사용한다면 IP주소가 변경되더라도 DNS에 IP를 바뀐 IP주소로 갱신해주어 IP가 변경되더라도 문제없이 사용이 가능하게 됩니다.

GSLB
GSLB를 알기 전에 DNS와 DDNS가 무엇인지 간단하게 알아보았습니다.
왜냐? GSLB는 DNS 기반 로드밸런싱 서비스입니다.
GSLB는 DNS를 동적으로 만들고 IP주소와 관련된 응용 프로그램 및 컨텐츠의 상태와 특성을 이해하도록 설계되었습니다. SLB가 실제 서버의 상태 점검과 모니터링을 수행하는 것과 마찬가지로 GSLB 시스템은 IP 주소 뒤에 있는 응용 프로그램과 콘텐츠의 가용성을 모니터링할 수 있었습니다. GSLB가 Health Check에 실패한 경우 해당 IP 주소가 DNS 응답 풀에서 제외됩니다.

GSLB는 지역별로 서버에 대한 Latency 정보를 가지고 있어 사용자가 접근했을 때
사용자의 지역으로부터 Latency가 낮은 서버로 연결하게 됩니다.
(장애없이 정상적인 경우 지리적으로 가까울수록 Latency 값이 낮습니다.)
서버 상태를 체크하지 못하는 DNS와 달리 장애가 발생하거나 부하 발생 시 서버의 트래픽을 분석하고 근접한 정상 서버로 분산을 할 수 있습니다.
? GSLB Policy

이런 GSLB는 클라우드의 초기 개념을 만드는 핵심 기술 중 하나라고 합니다.
DNS(Round Robin) VS GSLB
▶ 재해 복구 (Disaster Recovery)
[DNS / GSLB의 Disaster Recovery 차이]
DNS는 Health Check가 되지 않아 서버 장애가 발생해도 장애 서버로 연결 요청을 하지만 GSLB는 주기적인 Health Check를 통해 장애 서버가 체크되면 장애 서버로 연결되지 않도록 도와주고 있습니다.
DNS가 Round Robin 방식의 로드밸런싱을 사용하고 있었다면 50%의 사용자들은 장애 서버로 연결될 것입니다.
▶ 사이트 부하 분산 (Site Load Balancing)
[DNS / GSLB의 Disaster Recovery 차이]
DNS는 Health Check 할 수 없어 오버로드 상태가 되어도 사용자들은 과부하 서버로 연결을 요청할 것입니다.
반면 GSLB는 SLB의 부하 상태를 주기적으로 체크하여 오버로드 상태의 서버로 연결되지 않도록 도와줍니다.
▶ 네트워크 근접성 (Network Proximity)
[DNS / GSLB의 Network Proximity 차이]
DNS는 클라이언트와 서버 사이 Network 구간의 Round Trip Time을 측정하지 않습니다.
GSLB는 클라이언트와 서버 사이 Round Trip Time을 측정하여 클라이언트가 보다 응답이 빠른 서버로 연결되도록 도와줍니다.
(정확히는 Local DNS 서버와 SLB 사이 Round Trip Time을 측정한다고 하네요)
* Latency : 단방향 지연 시간
* Round Trip Time(RTT) : 왕복 지연 시간
▶ 지리적 근접성 (Geographic Proximity)
[DNS / GSLB의 Geographic Proximity 차이]
DNS가 Round Robin 방식을 사용하고 있다면 사용자는 지리적 위치를 고려하지 않고
해외의 서버에 연결될 수 있는 확률을 가지게 됩니다.
반면 GSLB는 사용자의 지리적 위치를 고려합니다.
그러므로 사용자는 지리적으로 가장 가까운 서버와 접속할 수 있습니다.
The End
AWS의 [Route53], NCP(Naver Cloud Platform)의 [Global Route Manager],
Azure의 [Traffic Manager] 각 클라우드사 마다 GSLB 기능을 사용할 수 있는 제품들이 존재합니다.
기회가 된다면 GSLB를 이용한 테스트를 해본 후 추가 포스팅을 써보도록 하겠습니다.
마지막으로 KT Cloud 메뉴얼에 GSLB의 작동 원리나 추가적인 설명이 잘 되어있어 링크로 남깁니다.

쓰다보니 다소 내용이 부족한듯하나 곧 CloudFront에 관련된 포스팅에 참고하기엔
내용이 충분한듯 합니다.
긴 글 읽어주셔서 감사합니다.







