프로젝트 시작하기

6단계  |  60분

NodeJS_Web_App_HERO-ART_SM

Q: AWS 및 Elastic Beanstalk에서 애플리케이션을 호스팅할 때의 이점에는 어떤 것이 있습니까?

Elastic Beanstalk는 모니터링 도구, 리소스 관리 및 간단한 구성 옵션을 제공하므로 손쉽게 환경을 관리할 수 있습니다. 코드를 업로드하기만 하면 Elastic Beanstalk가 용량 프로비저닝, 로드 밸런싱, 자동 크기 조정부터 시작하여 애플리케이션 상태 모니터링에 이르기까지 배포를 자동으로 처리합니다. 이뿐만 아니라 애플리케이션을 실행하는 데 필요한 AWS 리소스를 완벽하게 제어할 수 있으며 언제든지 해당 리소스에 액세스할 수 있습니다.

Q: 스택의 리소스는 내가 소유하게 됩니까?

로드 밸런서를 가리키는 CNAME 레코드를 제외하고 고객 환경의 모든 리소스는 고객 계정에서 시작됩니다. 드리프트를 방지하려면 Elastic Beanstalk에서 제공하는 기능을 사용해 이러한 리소스만 관리해야 합니다.

Q: 내 앱을 AWS상에 호스팅한 후에 이를 사용자 지정할 수 있습니까?

Elastic Beanstalk 환경의 설정 대부분은 시작한 후에도 변경할 수 있습니다. 애플리케이션 이름, 환경 이름, 플랫폼 및 VPC 할당은 변경할 수 없습니다.

Q: 내 환경이 생성된 후에 해당 구성을 변경할 수 있습니까?

Elastic Beanstalk 관리 콘솔 또는 EB CLI를 사용하여 실행 중인 환경의 설정을 변경하거나, 환경의 현재 구성을 저장하고 이를 다른 환경에 적용할 수 있습니다. 또한, 구성 파일을 사용하여 애플리케이션의 소스 코드에서 환경의 리소스를 구성하고 확장할 수 있습니다.

Q: 트래픽이 증가하는 경우 내 앱을 확장하려면 어떻게 해야 합니까?

트래픽이 미리 정의된 임계값에 도달할 때 인스턴스를 추가로 시작하도록 환경의 Auto Scaling 그룹을 구성합니다.

Q: 애플리케이션을 업데이트하려면 어떻게 해야 합니까?

Elastic Beanstalk 관리 콘솔 또는 EB CLI를 사용하여 실행 중인 환경에 새로운 버전의 애플리케이션 소스 코드를 배포합니다.

Q: 고가용성이란 무엇입니까?

고가용성(HA)은 애플리케이션이 항상 사용자의 요청을 지원할 수 있는 환경 구성을 말합니다. 일반적인 웹 애플리케이션의 경우 HA를 구성하려면 로드 밸런서 뒤에 여러 대의 웹 서버를 실행하고, 손실된 인스턴스를 교체하고 트래픽 급증에 대응하여 추가 인스턴스를 시작하도록 Auto Scaling을 구성하며, 자동 장애 조치를 위해 구성된 대기 데이터베이스 인스턴스를 확보해야 합니다. 이러한 조치를 통해 인프라 장애가 단일 리소스에 영향을 미치는 경우에도 애플리케이션이 트래픽을 계속 지원하고, 항상 최대 용량을 처리하기에 충분한 수의 서버를 실행하지 않고도 트래픽 증가를 처리할 수 있습니다. AWS Elastic Beanstalk의 경우, 프로덕션 HA 구성에는 데이터베이스 인스턴스를 웹 서버 환경 외부에서 실행하는 것이 포함되어 있습니다. 이를 통해 블루/그린 배포와 고급 데이터베이스 관리 작업을 수행할 수 있습니다.

Q: 내 애플리케이션을 가용성이 높지 않게 만들 수 있습니까?

예. 환경 유형을 단일 인스턴스로 변경하여 로드 밸런서를 제거하고, 단일 AZ 데이터베이스 인스턴스를 시작하여 환경을 실행하는 데 필요한 리소스 수를 줄일 수 있습니다.

Q: 스택이 준비되어 실행될 때까지 시간이 얼마나 걸립니까?

새로운 Elastic Beanstalk 환경을 시작하는 데 보통 5분이 채 걸리지 않지만, 많은 수의 인스턴스를 시작하거나 데이터베이스 인스턴스가 포함된 경우 조금 더 걸릴 수 있습니다. 데이터베이스 인스턴스는 시작하는 데 약 10분이 걸립니다.

프로젝트 시작하기