제목: "[AWS Elastic Beanstalk]"
작성자: tistory(EARTH_ROOPRETELCHAM)
작성자 수정일: 2021년9월16일
링크: https://earth-95.tistory.com/95?category=975627
작성일: 2022년6월9일
AWS는 100개 이상의 서비스로 구성되어 있으며 각 서비스는 기능 영역을 나타낸다
다양한 서비스는 AWS 인프라 관리 방법의 유연성을 제공하는 반면 어떤 서비스를 사용해야 하고 해당 서비스를 프로비저닝하는 방법을 파악하는 것은 까다롭다.
EB를 사용하면 어플리케이션을 실행하는 인프라에 대해 자세히 알지 못해도 AWS 클라우드에 어플리케이션을 신속하게 배포하고 관리할 수 있다.
EB를 사용하면 관리 복잡성을 줄일 수 있으며, 어플리케이션을 업로드하기만 하면 EB에서 용량 프로비저닝, 로드 밸런싱, 조정 ,어플리케이션 상태 모니터링에 대한 세부 정보를 자동으로 처리한다
어플리케이션을 배포할 때, EB가 선택된 지원 가능 플랫폼 버전을 구축하고 EC2 등의 AWS 리소스를 하나 이상 프로비저닝하여 어플리케이션을 실행한다.
EC2에 플랫폼(Java,Go,PHP,Node.js) 등을 따로 설치할 필요 없이 원하는 플랫폼을 버전과 함꼐 지정하면 설치해준다.
소스를 압축하여 GUI 형식으로 Beanstalk 관리 페이지에서 바로 배포가 가능하다
배포 이슈 시, 기존 버전으로 환경에 배포된 버전만 수정하여 즉각적인 롤백이 가능하다.
Beanstalk 환경 별로 이벤트 및 모니터링 탭이 있어 간단한 서버 모니터링 (CPU)이 가능하다.
application: 여러 환경들을 grouping하는 폴더로, environment보다 큰 개념으로 볼 수 있다.
environment: application 코드가 복제되어 동작되는 서버를 의미한다. ( prod 환경, dev 환경)
환경 티어
지원대상 언어
Go,Java,NET,Node.js,PHP,Python 및 루비로 개발된 어플리케이션
요금
EB 자체의 비용은 없으며, EB에 의해 구동되는 AWS 서비스에 대한 비용만 지불한다.