ELB (Elastic Load Balancer)
- 여러 대상 자동으로 트래픽 분산
- 고가용성 제공
- 보안 기능 통합 (로드 밸런서에 SG 적용 → 로드밸런서 SG 통해 내부 리소스 보안 유지 가능)
ALB (Application Load Balancer)
- application layer (HTTP, HTTPS) 에서 작동한다.
- HTTP 헤더 정보를 가지고 트래픽을 분산한다. (분산 알고리즘은 기본적으로 라운드 로빈 사용. 알고리즘은 target group 에서 변경 가능.)
- SSL 인증서를 탑재하여 컴퓨팅 리소스 대신에 요청의 복호화 / 응답의 암호화를 수행할 수 있다.
NLB (Network Load Balancer)
- transport layer 에서 작동한다.
- HTTP 헤더를 해석하지 못하고 클라이언트 아래 정보를 해싱한 결과로 트래픽을 분산한다. → 동일한 클라이언트에서 온 요청이라고 해도 클라이언트에서 열린 TCP socket 의 포트번호가 달라지기 때문에 매번 요청이 다른 target 으로 갈 수 있다.
- 클라이언트 IP
- 클라이언트에서 열린 TCP socket 포트번호
- 로드밸런서 IP
- 로드밸런서에서 열린 TCP socket 포트번호
- TCP 패킷의 sequence number
- 지연시간이 ALB 에 비해 짧다.
- internal 서비스를 클라이언트로 하면서 대용량 트래픽 처리 필요하면 NLB 으로 분산처리..
- 타겟의 헬스체크를 포트번호가 열려 있는지 확인 하는 방식으로만 가능.
Gateway LB
- network layer 에서 작동
- 패킷 캡쳐 & 분석에 주로 사용
Auto Scaling
auth-scaling 에 필요한 것
- launch template (트래픽이 늘어나서 컴퓨팅 리소스를 새로 만들어야 할 때 템플릿을 가지고 리소스 생성.)