Load Balancer Ops

L4/L7 로드밸런서, 헬스체크, 세션 공유 흐름

로드밸런서는 트래픽을 나누는 장치이면서 장애 인스턴스를 제외하고 세션과 프로토콜 특성을 맞추는 운영 경계입니다.

01

요청 수신

클라이언트 연결이 로드밸런서에 도착하고 계층별 기준으로 대상 후보를 고릅니다.

entry
02

헬스 확인

ready 상태가 아닌 인스턴스를 제외해 실패 트래픽을 줄입니다.

health
03

알고리즘 선택

round robin, least connections, hash 기반으로 backend를 결정합니다.

algorithm
04

세션 처리

sticky session이나 공유 저장소로 상태가 있는 애플리케이션의 일관성을 유지합니다.

session
05

장애 전환

인스턴스 실패, 배포, scale in 때 연결 draining과 재시도를 관리합니다.

failover
L4
연결 단위 분산 TCP/UDP 포트와 IP 기준으로 빠르게 분산하지만 HTTP 내용을 알지 못합니다.
고성능
L7
HTTP 내용 기반 라우팅 Host, path, header, cookie 값을 기준으로 백엔드를 나누고 인증 미들웨어를 앞단에 묶습니다.
정책 풍부
Health
실제 준비 상태 판단 프로세스 생존만 보지 말고 DB, 캐시, 의존 서비스 연결 상태를 나눠 봅니다.
live/readiness 분리

운영 확인 기준

세션 의존성 서버 메모리에 세션을 두면 sticky 없이는 사용자 상태가 흔들릴 수 있습니다.
드레이닝 배포 중 기존 연결을 끊지 않도록 connection draining을 설정합니다.
오류 원인 502/503은 앱 오류, 헬스 실패, 타임아웃, 포트 오류를 분리해 봐야 합니다.