정의
- 글로벌하게 분산된 서버간의 로드 밸런싱 작업으로 지리적으로 분산된 애플리케이션 서버 간에 트래픽을 효율적으로 분산
- 즉 지리적으로 분산된 위치에 있는 서버 간 부하 분산
사용하는 이유?
- 성능 : 사용자 요청을 가장 가까운 서버로 전달하여 네트워크 지연 및 네트워크 문제를 최소화
- 맞춤형 콘텐츠 : GSLB를 사용하면 기업이 해당 지리적 위치 및 언어의 관련성을 위해 맞춤화된 로컬 서버에서 콘텐츠를 호스팅
- 재해복구(Disater Recovery)용도로도 사용 (ex 지진으로 인한 서울서버 장애시 부산서버로 연결)
- 유지 관리 : 클라이언트 요청을 다른 서버로 간단히 리디렉션할 수 있으므로 데이터 센터 마이그레이션 및 업그레이드를 중단 없이 실행
- 기존 DNS는 사용자에게 최적의 경로를 안내하지 못함, 기반 부하 분산 과 달리 L4/L7 스위치를 이용한 ‘헬스체크’
하지만 국내 서비스는 잘 사용을 잘 안한다.
- 국내는 땅덩어리가 좁아 RTT(Round Trip Time)가 짧기 때문이다.
간단하게 알아보자 (맥OS 기준)
- nslookup 을 사용해보자
- -> 어떤 도메인을 주면 IP 주소를 반환해준다.
네이버의 아이피를 물어보니 요청마다 다른 IP를 알려준다. 이게 GSLB의 역할이다.
GSLB 는 이 IP가 살아 있는지, 죽어 있는지 실시간으로 상태를 확인하는 헬스 체크를 해서 서비스가 제공되기 어려운 상태라면 응답에서 제외시키고 정상적으로 작동하고 있는 다른 IP로 응답하게 해 끊김 없는 서비스를 제공해주기 때문
다양한 로드밸런싱 기법을 수행할 수 있는 DNS라고 이해 하시면 될 것 같습니다.
[참고]
https://avinetworks.com/glossary/global-server-load-balancing-2/
https://smashingpumpkins.tistory.com/entry/Global-server-load-balancing-GSLB-다-쓰는-이유가-있는-구성
'CS' 카테고리의 다른 글
L4, L7 Load Balancer (0) | 2022.06.12 |
---|---|
트랜젝션(Transaction) (0) | 2022.05.03 |
가상메모리(virtual memory) (0) | 2022.04.30 |
교착상태(DeadLock) (0) | 2022.04.22 |
스레드와 멀티스레드 (Thread & Multi Thread) (0) | 2022.04.18 |