Elastic Load Balancing란?
ELB: 둘 이상의 가용 영역에서 애플리케이션 트래픽을 여러 대상에 자동으로 분산시켜 애플리케이션의 부하를 조절하며, AWS 서버를 안정적으로 관리해 주는 서비스이다.
Elastic Load Balancing(ELB):
- 로드 밸런서: 인터넷 트래픽을 여러 서버(EC2 인스턴스)로 분산하여 애플리케이션의 부하를 조절합니다.
- 로드 밸런서는 AWS에서 관리하며, 사용자는 로드 밸런서를 통해 여러 EC2 인스턴스에 접근하게 됩니다.
- 사용자가 요청할 때마다 로드 밸런서는 가용한 EC2 인스턴스에 트래픽을 전달하여 응답을 받도록 합니다. 이로 인해 여러 인스턴스에 부하가 분산되어 스케일링이 용이해집니다.
로드 밸런서의 주요 목적:
- 여러 EC2 인스턴스에 부하를 분산하여 고가용성을 높입니다.
- 단일 DNS 호스트 이름을 제공하여 사용자에게 단일 액세스 지점을 제공합니다.
- 상태 확인 기능을 통해 실패한 인스턴스에는 트래픽을 보내지 않고, EC2 인스턴스의 실패를 숨길 수 있습니다.
- 웹사이트의 SSL 종료를 지원하여 HTTPS를 쉽게 제공할 수 있습니다.
관리형 로드 밸런서:
- AWS가 로드 밸런서의 유지 보수, 업그레이드, 고가용성을 관리합니다. 개발자는 로드 밸런서의 동작에 대해 일부 설정만 하면 됩니다.
- 자체 로드 밸런서를 구축할 경우, 운영 체제 업그레이드 및 유지 보수 등 추가 작업이 필요해집니다.
AWS에서 제공하는 로드 밸런서는 네 가지로 구분됩니다.
- Application Load Balancer (ALB): HTTP/HTTPS 트래픽을 처리하며 계층 7에 해당합니다. 정적 DNS와 URL 요청이나 HTTP 라우팅 기능이 필요할 때 유용합니다.
- Network Load Balancer (NLB): TCP/UDP 트래픽을 처리하며 계층 4에 해당합니다. 높은 성능을 제공하고 정적 IP를 지원하여 TCP/UDP 트래픽을 처리합니다. 초고성능으로 초당 수백만 요청을 처리합니다.
- Gateway Load Balancer (GWLB): EC2 인스턴스에서 실행되는 가상 방화벽으로 트래픽을 분석하고 보안 작업을 수행합니다.
남은 한가지는Classic Load Balancer로 계층 4 및 7을 모두 지원하지만 구식 로드 밸런서로 2023년에 폐기 예정...
이렇듯 Elastic Load Balancing의 기능을 통해 AWS에서 애플리케이션의 탄력성을 높이는 방법과 ELB에서도 다양한 유형의 로드 밸런서들이 있는 것을 알 수 있습니다.
오토 스케일링 그룹(Auto Scaling Group)이란?
ASG: 웹사이트의 로드는 시간에 따라 변동이 있을 수 있음. 이러한 변동에 따라 EC2 인스턴스를 자동으로 추가하거나 제거하여 스케일 아웃 또는 스케일 인을 수행하여 AWS에서 애플리케이션의 로드를 효과적으로 관리하는 서비스입니다.
오토 스케일링의 기능:
- 스케일 아웃: 로드가 증가할 때 EC2 인스턴스를 추가하여 처리 능력을 높입니다.
- 스케일 인: 로드가 감소할 때 EC2 인스턴스를 줄여 비용을 절감합니다.
- ASG는 항상 최소와 최대 인스턴스 수를 보장하며, 특정 조건을 충족할 때 자동으로 인스턴스를 추가하거나 제거합니다.
로드 밸런서와의 연동:
- 오토 스케일링 그룹이 인스턴스를 추가하거나 제거하면, 로드 밸런서는 자동으로 이 인스턴스들을 등록하거나 등록 해지합니다.
- 로드 밸런서는 증가한 EC2 인스턴스에 대해 트래픽을 분산시켜 안정적인 서비스 제공을 보장합니다.
비정상 인스턴스 관리:
- 오토 스케일링 그룹은 비정상 인스턴스를 감지하여 필요 없는 인스턴스를 종료하고, 새로운 정상 인스턴스를 자동으로 교체합니다.
비용 절감과 효율성:
- 오토 스케일링 그룹을 사용하면 항상 최적의 용량으로 인스턴스를 실행할 수 있어 비용을 절감합니다.
오늘 공부 정리요약
Elastic Load Balancing (ELB)
- ELB: 백엔드 EC2 인스턴스에 트래픽을 분산시키는 로드 밸런서.
- 상태 확인: 백엔드 EC2 인스턴스의 상태를 점검하여 정상 여부를 확인.
- 로드 밸런서의 종류:
- Application Load Balancer (ALB): 계층 7, HTTP 유형 워크로드에 최적화.
- Network Load Balancer (NLB): 계층 4, 매우 높은 성능의 TCP 수준 로드 밸런싱.
- Gateway Load Balancer (GWLB): 계층 3, 네트워크 자체를 라우팅하여 가상 어플라이언스를 통과시킴.
- Classic Load Balancer: 이전 세대의 로드 밸런서로, 2023년 폐기 예정.
Auto Scaling Group (ASG)
- ASG를 통해 애플리케이션의 탄력성을 구현하여 부하를 여러 가용 영역에 걸쳐 분산하고 적절히 스케일링.
- 시스템의 수요에 따라 EC2 인스턴스를 자동으로 스케일링하고 비정상 인스턴스를 교체.
- ASG와 ELB는 긴밀하게 통합되어 함께 사용되며, 이를 통해 고가용성, 확장성, 탄력성, 클라우드의 민첩성을 확보할 수 있습니다.
ELB와 ASG는 AWS에서 제공하는 강력한 도구로, 이 둘을 조합하여 클라우드 환경에서의 효율성을 극대화할 수 있습니다
'AWS' 카테고리의 다른 글
AWS - ECS (Elastic Container Service) (0) | 2025.04.01 |
---|---|
AWS - S3 (0) | 2025.02.11 |
Amazon EBS? (0) | 2025.02.06 |
AWS EC2-Elastic 컴퓨팅 클라우드 (0) | 2025.02.05 |
AWS IAM? (1) | 2025.02.03 |