test.gyeo.me

Load Balancer

Cloudflare Load Balancing의 두 가지 대표 구성을 같은 origin 풀로 시연합니다.

같은 origin worker 두 개(alpha, beta)를 두 LB가 서로 다른 방식으로 사용합니다. 아래 카드의 호출 버튼은 서버에서 해당 LB hostname을 N번 병렬 호출해 어느 endpoint가 응답했는지 분포로 보여줍니다.

gcp-a → origin-gcp-a.gyeo.megcp-b → origin-gcp-b.gyeo.me

🔀 Round-Robin · 1 Pool / 2 Endpoints

lb-rr.gyeo.me

같은 tier의 origin 여러 대를 묶은 가장 흔한 구성. 모든 endpoint에 트래픽이 골고루 분산되고, 한 endpoint가 죽으면 같은 pool 안의 다른 endpoint들이 자연스럽게 흡수.

대시보드 구성 안내

대시보드: 1개 Pool (예: pool-main) 안에 endpoint 2개 (alpha + beta). Steering: Random.

정상 상태 alpha / beta 약 50:50 분산
Failover 상태 한 endpoint disable → 100% 나머지 endpoint

🛡️ Primary-Fallback · 2 Pools / 각 1 Endpoint

lb-failover.gyeo.me

평소에는 primary pool로만 보내고, primary가 unhealthy로 판정되면 자동으로 fallback pool로 전환. DR(disaster recovery) 패턴.

대시보드 구성 안내

대시보드: Pool 2개. pool-primary (alpha만), pool-fallback (beta만). Pool 순서: primary가 위에. Steering: Off (= 순서대로).

정상 상태 alpha 100% (primary만)
Failover 상태 primary pool disable / alpha unhealthy → 100% beta로 자동 fallback

🔧 Origin 직접 호출 / Chaos

LB를 거치지 않고 endpoint를 직접 호출합니다. 분포 비교 baseline / chaos 검증용.

💡 chaos: 별도 탭에서 https://origin-gcp-a.gyeo.me/?fail=503를 호출해보세요. health monitor가 unhealthy 판정하면 (약 60초 주기) 위 시나리오에서 자동 failover가 일어납니다.