# Web App 3-tier
AWS에 웹 애플리케이션을 배포할 때, 일반적으로 3-티어 아키텍처를 따른다. 아래 그림과 같이 사용자는 여러 AZ에 존재 가능한 로드 밸런서와 통신하고, 로드 밸런서는 자동 스케일링 그룹이 관리하는 여러 EC2 인스턴스로 트래픽을 전달한다. EC2 인스턴스들은 데이터를 저장하기 위해 관계형 데이터베이스 등을 사용할 수 있다.

이러한 아키텍처는 수동으로 쉽게 재현할 수 있고, AWS에서 CloudFormation을 통해서도 재현할 수 있다. 하지만 개발자 입장에서 인프라 관리에 신경쓰지 않고 코드 배포만 할 수 있다면 훨씬 편리할 것이다..!
# Elastic Beanstalk
다양한 애플리케이션과 환경에 대해 동일한 방식으로 코드를 실행하고 싶을 때 사용할 수 있는 서비스가 바로 Elastic Beanstalk이다.
- EC2, ASG, ELB, RDS 등 모든 요소들의 구성 및 운영 체제를 Beanstalk이 자체적으로 처리
- PaaS(Platform as a Service)로 개발자는 코드만 올리면, 배포 수행
- ASG, ELB를 통한 용량 제공 수행
- 애플리케이션 상태 모니터링 및 응답성을 대시보드에 포함
: Beanstalk 서비스 내에 전체 모니터링 제품군 사용 가능. Beanstalk 내의 EC2 인스턴스에 CloudWatch로 지표를 보내는 상태 에이전트가 있어, 측정 항목을 확인하고 모니터링을 수행할 수 있다.

배포에 관련된 모든 작업을 Elastic Beanstalk이 수행해주어 개발자는 애플리케이션 코드만 책임지면 된다. 매우 개발자 친화적인 서비스!
'AWS' 카테고리의 다른 글
AWS CodeBuild: 코드 빌드와 배포를 자동화하는 서버리스 서비스 (0) | 2025.03.27 |
---|---|
CodeDeploy - 애플리케이션 자동 배포 서비스 (0) | 2025.03.26 |
Cloud Development Kit - 프로그래밍 언어로 클라우드 설계 (0) | 2025.03.24 |
AWS CloudFormation: 인프라를 코드로 효율적으로 관리하기 (0) | 2025.03.23 |
Amazon Lightsail - 클라우드 입문자를 위한 컴퓨팅 서비스 (0) | 2025.03.22 |