← 글 목록

notes

로드밸런서 조사

로드밸런서 역할·구성 방식과 트래픽 분산 기준 조사.


1. 로드밸런서

Application Load Balancer(ALB)는 HTTP/HTTPS 요청을 여러 대상(EC2·컨테이너·IP·Lambda)으로 나눠 주는 계층 7 로드밸런서다. 리스너에 규칙(호스트·경로·헤더)을 달아 라우팅하고, ACM 인증서를 붙이면 TLS 종료를 밸런서에서 처리한다. 가용 영역마다 노드가 떠서 한쪽이 죽어도 나머지로 받는다.

요금은 떠 있는 시간(시간당) + 트래픽을 처리한 LCU 두 축이다. Classic처럼 “통과 GB”만 보는 구조가 아니라, 새 연결·활성 연결·처리 바이트·규칙 평가 네 차원 중 가장 큰 값만 과금한다. 무료 티어에는 ALB/Classic 공유 시간·일부 LCU가 포함되는 경우가 있으니 계정·시점에 따라 확인하면 된다.

  • 수많은 트래픽을 다수의 인스턴스로 분배합니다. (→ 하나의 인스턴스에서 여러개의 도메인 연결 가능)
  • https를 사용 가능하도록 작동합니다.

2. LCU

  • LCU는 Application Load Balancer가 트래픽을 처리하는 차원을 측정합니다.

  • 다음과 같은 4가지 차원이 측정됩니다.
  • 새 연결 수 (초 당)
  • 초당 새로 설정된 연결 수. 일반적으로 연결마다 많은 요청이 전송됩니다.
  • 활성 연결 수 (분 당)
  • 분당 활성 연결 수.
  • 처리된 바이트 (GB/시간)
  • HTTP 요청 및 응답을 위해 로드 밸런서에서 처리된 바이트 수(GB).
  • 규칙 평가 (초당)
  • 로드 밸런서가 처리한 규칙 수와 요청 속도의 곱. 처음 10개의 처리 규칙은 무료 (규칙 평가 = 요청 속도 * (규칙 처리 수 – 10개의 무료 규칙).
  • 가장 사용량이 많은 차원에 대해서만 요금이 부과됩니다.

참고사항

  • 1LCU는 다음을 포함합니다.
  • 초당 25개의 새로운 연결
  • 분당 3,000개의 활성 연결
  • Amazon Elastic Compute Cloud(EC2) 인스턴스, 컨테이너 및 IP 주소를 대상으로 하는 경우, 시간당 1GB, Lambda 함수를 대상으로 하는 경우 0.4GB
  • 초당 1,000개의 규칙 평가

3. 요금 계산

아래 예시는 ALB 과금 공식(시간당 요금 + LCU×단가)을 손으로 풀어 본 것이다. 리전·시점마다 단가는 바뀌니, 실제 견적은 콘솔 요금 계산기나 Cost Explorer로 맞춰 보면 된다.

  • 요금 부과에 대한 예시입니다.
  • Application Load Balancer가 실행된 시간(또는 부분 시간)에 대한 요금 : 0.0225(USD/시간)
  • 시간당 사용된 로드 밸런서 용량 단위(LCU)에 대한 요금
  • 모바일 애플리케이션은 평균 초당 100개의 새 연결을 수신하며 → 새 연결 수 (초 당) : (100/25)LCU = 4LCU
  • 각각 3분간 유지됩니다. → 활성 연결 수 (분 당) : (100*60\*3/3000) = 6LCU
  • 클라이언트가 평균 초당 4개의 요청을 보내고 연결당 1,000바이트를 처리합니다. → 처리된 바이트 (GB/시간) : (1000*60*60/ 1)LCU = 0.36 LCU
  • 로드밸런서에 20개의 규칙을 구성하여 클라이언트 요청을 라우팅합니다.

    → 규칙 평가 (초당) : {(20 - 10) * 100 * 4 / 1000}LCU = 4LCU

  • 따라서 위의 경우, LCU에 대한 요금은 최대값인 6LCU = 6 * 0.008USD 입니다.

따라서, 위의 예시에서의 한 달 요금은 다음과 같습니다.

  • a + b = (0.0225 + 0.048) * 24 * 60 = 101.52USD

참고사항

  • 비용이 각각 다음과 관련이 있습니다.
  • 사용자가 다양한 경우 — 새 연결 수 (초 당)
  • 사용자가 많은 경우 — 활성 연결 수 (분 당)
  • 트래픽이 많은 경우 — 처리된 바이트 (GB/시간)
  • 규칙이 많은 경우 (추가로 오래 사용할 경우) — 규칙 평가 (초당)

4. 견적주세요 개발팀 요금

  • 예상 요금 : 0.0225 * 24(시간) * 31(일) * 4(개) = 66.96USD 이상

  • 22일 기준 28.05USD → 한달 요금(31일)은 39.525USD 예상

예상 가격보다 적게 산출되고 있다. (이유 확인이 필요)