본문 바로가기

Infra/네트워크

2. GSLB 공부 - GSLB는 어떻게 돌아가는가?

0. GSLB의 서버/사이트 선택 정책 (GSLB Policy)

 

  ① Server Health -  살아있는 사이트 선택

  ② SLB Session & Network Capacity Threshold - 과부하 상태가 아닌 사이트 선택

   Network Proximity - 응답 속도가 빠른(Low Latency) 사이트 선택

   Geographic Proximity - 지리적으로 가까운 사이트 선택

   SLB Connection Load - 새로운 연결 요청이 적은 사이트 선택

   Site Preference - 운영자의 정책에 의해 특정 사이트 선택

   Least Selected - 균등하게 사이트 선택

   Static Load Balancing - 균등하게 사이트 선택

 

1. Server Health

SLB가 아래와 같이 서버들로 Health Check를 지속적으로 한다 :

  • Layer 3 : ICMP
  • Layer 4 : TCP or UDP
  • Layer 7 : HTTP

2. SLB Session & Network Capacity Threshold

Health Check로 모든 서버가 살아있음이 확인된다면 아래값을 고려하여 과부하(Over-Load) 상태를 확인한다.

  1. SLB의 현재 Session 수 (TCP 또는 UDP 연결 수)
  2. SLB의 Network Usage 값 (송수신 중인 대역폭 [bps])

 

3. Network Proximity

Network Capacity에도 문제가 없다면(임계치가 넘지 않는다면) 네트워크 관점에서(RTT)를 기반으로 사이트를 선택한다.

Latency가 적은 사이트로 연결해준다.

(RTT를 측정할 때 ICMP를 사용한다)

 

(1~2과정과는 달리 3번은 미리 상태 Check를 해두는 것이 아니라 DNS Query가 발생했을 때 확인한다.)

만약 ICMP 요청을 막아 놓은 Local DNS 서버의 경우에는 RTT측정이 불가능 하며 해당 경우에는 다음 단계로 넘어가게 된다.

 

4. Geographic Proximity

3과정에서 RTT 측정이 불가능하거나 RTT 값이 유사하면 지리적인 요소를 고려하게 된다(IP Geolocation DB를 통하여).

 

(이 과정 또한 DNS Query가 발생되었을 때 조사를 시작한다)

 

5. SLB Connection Load

만약 4 과정에서 적절한 사이트를 고르지 못한 경우 Connection Load를 고려한다. 

Connection Load란 "일정 시간 동안 SLB에 생성되는 새로운 TCP 또는 UDP 연결수"를 의미한다.

 

예를 들어, SLB의 주기가 5초로 설정되어 있고, 각 초별로 새로운 연결이 100개, 110개, 120개, 130개, 140개가 생성되었다면 SLB Connection Load는 (100 + 110 + 120 + 130 + 140) / 5초 = 120개가 됩니다.

 

 

 

6. Site Preference

5단계에서 Connection Load 임계치를 넘지 않았다면 운영자가 설정한 Site Preference 값에 의해 사이트를 선택한다.

 

7. Least Selected

6단계에서 동일한 Preference로 설정되어 있다면 사이트 부하를 균등하게 나누기 위해 선택이 덜 된 사이트(Least Selected Site)를 선택한다.

 

8. Static Load Balancing

7번과 8번 단계는 둘 중에 하나만 사용이 가능한 최종 선택 단계이다. 8번 과정은 Round-Robin 혹은 사이트에 가중치를 적용한 Weighted Round-Robin 방식으로 사이트를 선택한다. Round-Robin의 경우 한국 -> 미국 -> 한국 -> 미국 ... 순으로 번갈아 가며 사이트를 선택하고, Weighted Round-Robin 방식의 경우 한국과 미국의 Weight 값 비율이 2:1로 되어 있다면 한국 -> 한국 -> 미국 -> 한국 -> 한국 -> 미국 ... 순으로 한국 사이트를 2배 더 선택하도록 하는 방식이다. (예. 한국 사이트에 서버가 더 많음)

 

 

9. 결론 및 요약

아래 표는 "GSLB + SLB 방식", "GSLB only 방식" 그리고 "DNS 방식"에 대한 비교 테이블입니다. GSLB + SLB 방식의 경우 지금까지 설명한 8가지 Policy를 모두 지원하지만, GSLB only 방식의 경우 사이트에 SLB가 없어 사이트 부하나 Network Proximity를 알 수 없으며, 마지막으로 DNS 방식의 경우 Round-Robin 기반의 Static Load Balancing 밖에 지원하지 못합니다.

 

 

 

출처 -

https://www.netmanias.com/ko/?m=view&id=blog&no=5622

 

Enterprise를 위한 GSLB 서비스 - 2편: Site/Server 선택 정책 (1)

지난 시간에 이어 오늘은 "GSLB가 어떤 기준으로 사이트/서버를 선택하는지?" GSLB Policy에 대해서 설명 드리도록 하겠습니다.

www.netmanias.com

https://www.netmanias.com/ko/?m=view&id=blog&no=5624

 

Enterprise를 위한 GSLB 서비스 - 2편: Site/Server 선택 정책 (2)

지난 시간에 이어 GSLB Policy에 대한 설명입니다.

www.netmanias.com