[AWS] ALB
2023. 3. 23. 01:33ㆍ카테고리 없음
LB 로드밸런싱은 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산 처리하여 서버의 로드율 증가, 부하량, 속도 저하 등을 고려하여 적절히 분산 처리하여 해결해주는 서비스입니다. 위의 그림처럼 사용자가 많아져 트래픽이 하나의 서버로 몰리지 않도록 적절하게 분배시켜주는 역할을 합니다.
로드밸런서의 종류
L2 | Data link 계층을 사용, Mac주소 기반 부하 분산 |
L3 | Network 계층을 사용, IP주소 기반 부하 분산 |
L4 | Transport 계층을 사용, Port 기반 부하 분산 |
L7 | Application 계층을 사용, 요청(URL) 기반 부하 분산 |
ALB (Application Load Balancer):
- ALB는 L7단의 로드 밸런서를 지원합니다.
- ALB는 HTTP/HTTPS 프로토콜의 헤더를 보고 적절한 패킷으로 전송합니다.
- ALB는 IP주소 + 포트번호 + 패킷 내용을 보고 스위칭합니다.
- ALB는 IP 주소가 변동되기 때문에 Client에서 Access 할 ELB의 DNS Name을 이용해야 합니다.
- ALB는 L7단을 지원하기 때문에 SSL 적용이 가능합니다.
- SSL 인증서를 이용하면 클라이언트와 로드 밸런서 사이에서 데이터를 전송할 때 전송 중 암호화(in-flight encryption)가 가능하다.
- 따라서, 발신자와 수신자만 해독이 가능하다. - SSL은 보안 socket 계층(Secure Sockets Layer)을 의미하며 연결을 암호화 하는 데 사용된다.
- SSL인증서는 expiration date(설정시 지정함)가 있으며 따라서 인증을 위해 주기적으로 갱신해야 한다. - TLS는 SSL의 최신 버전으로, 전송 계층 보안(Transport Layer Security)을 의미한다.
- SSL 인증서를 이용하면 클라이언트와 로드 밸런서 사이에서 데이터를 전송할 때 전송 중 암호화(in-flight encryption)가 가능하다.
NLB (Network Load Balancer):
- NLB는 L4단의 로드 밸런서를 지원합니다.
- NLB는 TCP/IP 프로토콜의 헤더를 보고 적절한 패킷으로 전송합니다.
- NLB는 IP + 포트번호를 보고 스위칭합니다.
- NLB는 할당한 Elastic IP를 Static IP로 사용이 가능하여 DNS Name과 IP주소 모두 사용이 가능합니다.
- NLB는 SSL 적용이 인프라 단에서 불가능하여 애플리케이션에서 따로 적용해 주어야 합니다.