Cloud/AWS Certified Solutions Architect - Asso

Elastic Load Balancing(ELB)

Tony Lim 2023. 8. 4. 16:04
728x90

Elastic Load Balancing(ELB) 개요

Gateway LB는 단순히 라우팅만 해주는것이 아니라 보안적인 요소도 고려해서 패킷들을 처리하게 된다.

TargetGroup이 정상인지 주기적으로 헬스 체크하는 역할도 있다. 

Application LB 는 HTTP 요청을 보냄으로서 확인을 하게 된다.


TargetGroup 들의 속성들

속성 (Attribute) -HTTP/HTTPS , 프로토콜에 따라 다 다르다 , Application LB (L7)

등록 취소 지연 (Deregistration delay / Connection Draining)

  • Auto Scaling 축소 등으로 Deregistration 된 인스턴스에 더 이상의 요청을 보내지 않도록 하는 기능
  • 해당 인스턴스에 진행중이 요청이 있을 경우 설정해 놓은 시간동안 연결이 available 상태가 되지 않으면 해당 인스턴스에 연결 요청을 하지 않음

느린 시작 기간 (slow start duration)

  • 기본적으로 대상은 대상 그룹으로 등록되자 마자 전체 요청 공유를 받기 시작하고 초기 상태 확인을 전달
  • 느린 시작모드에서는 로드 밸런서가 대상으로 보낼 수 있는 요청의 수가 선형적으로 증가

알고리즘

  • 라운드로빈 , 최소 미해결 요청 (처리하고 있는 요청이 가장 적은 대상에게 라우팅)

고정 (Stickiness Sessions / Session Affinity)

  • 클라이언트가 세션을 유지한 상태라면 모든 요청을 동일한 인스턴스로 유지하는 기능
  • 세션 유지를 위해 쿠키를 사용하기에 클라이언트에서 쿠키를 지원해야함
  • 세션 데이터를 잃지 않으려는 상태정보를 유지하는 서버에 적합

 

속성 (Attributes) - TCP/UDP/TLS (Network LB, L4)

등록 취소 지연은 동일함

등록 해제 시 연결종료 = 등록 취소 지연( 300초 기본값) 에 도달하면 NLB가 active connection을 종료함

클라이언트 IP 주소 보존 (Preserve client ip address)

  • 들어오는 모든 트래픽의 클라이언트 IP를 앱으로 전달

stick session , affinity 동일함

 

이렇게 target group들을 생성하면 나중에 ALB, NLB 를 생성할 때 고르게 된다.


Application Load Balancer

  • Http/https 요청을 LB 할 경우 사용
  • 웹 앱 처리에 적합함
  • 리스너 규칙을 기반으로 라우팅 설정이 가능함
  • 데이터 전송 보안을 위한 HTTPS 프로토콜 사용시 SSL?TLS 인증서를 배포해야함 
    • 보통 ACM (AWS Certificate Manager) 사용 , 아니면 클라이언트 인증서를 사용함

리스너 규칙

  • Host header = 각 요청의 호스트 이름을 기반으로 라우팅 ( aa.example.com , bb.example.com) 
  • path = 요청의 url 의 경로 패턴을 기반으로 라우팅 (ex.com/audio, ex.com/video)
  • Http Haeder, Http Request Method, Query String , Source IP

 

Network Load Balancer

  • TCP UDP TLS 요청을 LB하는 경우
  • 빨라서 고성능 앱에서 적합함, 게임같은거
  • 고정 IP 주소를 NLB에 할당 가능 , client ip 주소도 뒤에 target group에게 전달이 가능
  • ALB 처럼 리스너 규칙설정이 없음
  • secure connection은 SSL/TLS 인증서 배포해야 쓸 수 있음 , 똑같이 ACM 에서 생성 가능

 

 

728x90

'Cloud > AWS Certified Solutions Architect - Asso' 카테고리의 다른 글

EC2 스토리지  (0) 2023.08.07
EC2 Auto Scaling  (0) 2023.08.07
컴퓨팅 - EC2  (0) 2023.08.03
Identity and Access Management(IAM)  (0) 2023.08.01
AWS 시작 하기  (0) 2023.08.01