GSLB

2021. 4. 9. 23:21네트워크, 통신

728x90

GSLB란

GSLB의 개념

GSLB(Global Service Load Balancing)란 DNS 기반의 로드 밸런싱 서비스를 말합니다.

GSLB의 주요 기술

Health Check
등록된 호스트 들에 대해 주기적으로 Health Check를 수행합니다. 호스트가 Check되지 않을 경우 DNS 응답에서 해당 호스트를 제거합니다. 실패한 호스트로의 접근을 막아 서버의 가용성을 높일 수 있습니다.

TTL
DNS에서 권한을 가진 네임서버는 특정 레코드에 대해서 TTL을 설정할 수 있습니다. 캐시 네임 서버는 TTL 시간 동안 캐시에 저장하고, Client로부터 요청이 오면 캐시에 저장된 값을 반환합니다. TTL 값이 너무 길면 GSLB의 상태 정보가 제때 동기화되지 못 합니다. TTL 값이 너무 짧으면 네임서버에 가해지는 부담이 커집니다.

네트워크 거리 & 지역
주기적으로 성능을 측정하고 그 결과를 저장합니다. DNS 질의에 대해 지리적으로 가까운 서버를 반환하거나 네트워크 거리가 가까운 서버를 반환합니다. 지리적으로 가까운 서버는 RRT(Round Trip Time)도 짧기 때문에 동일한 결과를 반환하는 경우가 많다고 합니다.

GSLBvs DNS

GSLB의 동작 프로세스

  1. 사용자가 도메인에 접속하기 위해 Local DNS 서버로 DNS Query를 보냅니다.
  2. DNS Query는 Root DNS, .com DNS를 거쳐 GSLB로 보내집니다.
  3. GSLB는 DNS Proxy로 동작하며, 따라서 이 DNS Query를 그대로 호스트의 DNS 서버로 전달합니다.
  4. 호스트의 DNS 서버는 도메인에 대한 IP 주소가 미리 등록되어 있어 그 값을 GSLB로 전달해 줍니다.
  5. GSLB는 정책들을 통해 최적의 사이트를 결정하고 TTL을 작은 값으로 변경해줍니다.
  6. GSLB의 정책을 통해 웹 서버 IP와 변경된 TTL 값이 Local DNS로 전달됩니다.
  7. Local DNS가 사용자 단말에 값을 전달합니다.
728x90

'네트워크, 통신' 카테고리의 다른 글

L4 스위치 vs L7 스위치  (0) 2021.12.06
API Gateway  (0) 2021.04.20
CDN  (0) 2021.04.08
Sticky Session  (1) 2021.03.09
STOMP  (0) 2021.03.06