메뉴
AWS Elastic Beanstalk
개발자 안내서 (API Version 2010-12-01)

구성 파일(.ebextensions)을 사용하여 고급 환경 사용자 지정

웹 애플리케이션의 소스 코드에 AWS Elastic Beanstalk 구성 파일(.ebextensions)을 추가하여 환경을 구성하고 환경에 있는 AWS 리소스를 사용자 지정할 수 있습니다. 구성 파일은 .config 파일 확장명을 사용하는 YAML 형식 문서로, .ebextensions 폴더에 놓고 애플리케이션 소스 번들로 배포합니다.

구성 파일의 option_settings 섹션은 구성 옵션의 값을 정의합니다. 구성 옵션을 사용하여 Elastic Beanstalk 환경, 환경 내의 AWS 리소스, 애플리케이션을 실행하는 소프트웨어를 구성할 수 있습니다. 구성 파일은 구성 옵션을 설정하는 여러 방법 중 하나일 뿐입니다.

resources 섹션에서는 애플리케이션 환경의 리소스를 보다 세부적으로 사용자 지정하고, 구성 옵션에서 제공하는 기능 이상으로 추가 AWS 리소스를 정의할 수 있습니다. resources를 사용하여 AWS CloudFormation에서 지원하는 모든 리소스를 추가 및 구성하고, Elastic Beanstalk가 이를 사용하여 환경을 생성할 수 있습니다.

구성 파일의 다른 섹션(packages, sources, files, users, groups, commands, container_commands, services)에서는 환경에서 시작하는 EC2 인스턴스를 구성할 수 있습니다. 서버가 환경에서 시작될 때마다 Elastic Beanstalk는 이러한 섹션에 정의된 작업을 실행하여 애플리케이션의 운영 체제와 스토리지 시스템을 준비합니다.

구성 파일 하나에 여러 섹션이 포함될 수 있으며, 그렇지 않은 경우 구성을 여러 파일로 분할할 수 있습니다. 구성 파일은 사전순으로 처리되므로 구성 활동을 여러 단계로 분할할 수 있습니다.

구성 파일을 사용하려면 소스 번들의 .ebextensions 폴더에 이를 추가한 후 환경에 배포합니다.

애플리케이션 하나를 배포하려는 경우 앱 소스의 루트에 .ebextensions 폴더를 둡니다.

~/workspace/my-app/
|-- .ebextensions
|   |-- environmentvariables.config
|   `-- healthcheckurl.config
|-- .elasticbeanstalk
|   `-- config.yml
|-- index.php
`-- styles.css

여러 애플리케이션 또는 ASP.NET Core 애플리케이션을 배포하려는 경우 소스 번들의 루트에 .ebextensions 폴더를 두고, 애플리케이션 번들과 매니페스트 파일을 나란히 둡니다.

~/workspace/source-bundle/
|-- .ebextensions
|   |-- environmentvariables.config
|   `-- healthcheckurl.config
|-- AspNetCore101HelloWorld.zip
|-- AspNetCoreHelloWorld.zip
|-- aws-windows-deployment-manifest.json
`-- VS2015AspNetWebApiApp.zip

이 프로세스는 환경을 관리하는 데 사용하는 클라이언트에 따라 조금씩 다릅니다. 세부 정보는 다음 단원을 참조하십시오.

새 구성 파일을 개발하거나 테스트할 때 기본 애플리케이션을 실행하는 정리된 환경을 시작하고 여기에 배포합니다. 구성 파일의 형식을 잘못 지정하면 새 환경 시작이 복구 불가능하게 실패할 수 있습니다.