.ebextensions/*.config
애플리케이션 번들 루트의 파일을 통해 인스턴스 유형 및 보안 그룹을 정의하는 데 문제가 있습니다.
간단히, 다음과 같은 두 개의 구성 파일이 있습니다.
.ebextensions/01-options.config
:
option_settings:
[...]
- namespace: 'aws:elasticbeanstalk:application:environment'
option_name: CONFIG_FILE_ONE
value: '01-options.config'
[...]
그리고 .ebextensions/02-app-test-env.config
:
option_settings:
- namespace: 'aws:elasticbeanstalk:application:environment'
option_name: NODE_ENV
value: 'Test'
- namespace: 'aws:elasticbeanstalk:application:environment'
option_name: CONFIG_FILE_TWO
value: '02-app-test-env'
- namespace: aws:autoscaling:launchconfiguration
option_name: InstanceType
value: t2.micro
- namespace: aws:autoscaling:launchconfiguration
option_name: SecurityGroups
value: sg-ys75dfs2
이제 환경 변수가 설정 중이므로 구성 파일을 모두 읽는다는 것을 알고 있지만 보안 그룹과 인스턴스 유형이 설정되지 않습니다. 환경을 다시 빌드해도 인스턴스는 여전히 t1.micro
기본 보안 그룹과 같이 생성됩니다 -내 설정 적용되지 않습니다.
내가 여기서 무엇을 놓치고 있습니까? .config
파일을 사용하여 인스턴스 유형을 어떻게 정의 할 수 있습니까?
답변
launchconfiguration 네임 스페이스에 대해 해당 구성 파일에있는 것을 사용할 수 있어야하지만 작동중인 첫 번째 2에서와 같이 네임 스페이스와 값 주위에 작은 따옴표가 필요합니다.
- namespace: 'aws:autoscaling:launchconfiguration'
option_name: InstanceType
value: 't2.micro'
- namespace: 'aws:autoscaling:launchconfiguration'
option_name: SecurityGroups
value: 'sg-ys75dfs2'
또한 eb cli 3.x를 사용하는 경우 eb 로그에 오류가 있는지 확인하십시오. 희망이 도움이됩니다.
답변
코멘트에서 언급 한 바와 같이 그들은 또한 환경 수준, (그리고에 대한 설정에 설정되어있는 경우, 설정 파일의 설정은 무시됩니다 InstanceType
되어 자동으로 생성 환경 수준).
구성 파일에 설정을 유지하려면 환경에서 해당 설정을 제거해야 InstanceType
합니다. 다음 명령 을 사용하여 이를 수행 할 수 있습니다 .
aws elasticbeanstalk update-environment --environment-name my-env --options-to-remove Namespace=aws:autoscaling:launchconfiguration,OptionName=InstanceType
환경 수준 설정을 변경하는 다른 방법 은 AWS 문서 를 참조하십시오 .