Chr*_*her 5 amazon-web-services amazon-iam amazon-elastic-beanstalk
设置
Serverless.com 框架
目标通过
无服务器创建 AWS Elastic Beanstalk
代码
serverless.yml
service: aws-beanstalk-sls
description: Test stack deployment
provider:
name: aws
stage: running
region: eu-central-1
profile: beanstalk-test-deployment
resources:
Resources:
sampleApplication:
Type: AWS::ElasticBeanstalk::Application
Properties:
Description: AWS Elastic Beanstalk Sample Application
sampleApplicationVersion:
Type: AWS::ElasticBeanstalk::ApplicationVersion
Properties:
ApplicationName:
Ref: sampleApplication
Description: AWS ElasticBeanstalk Sample Application Version
SourceBundle:
S3Bucket: elasticbeanstalk-samples-eu-central-1
S3Key: nodejs-sample.zip
sampleConfigurationTemplate:
Type: AWS::ElasticBeanstalk::ConfigurationTemplate
Properties:
SolutionStackName: 64bit Amazon Linux 2018.03 v4.7.0 running Node.js
Description: AWS ElasticBeanstalk Sample Configuration Template
ApplicationName:
Ref: sampleApplication
OptionSettings:
- Namespace: aws:autoscaling:asg
OptionName: MinSize
Value: '2'
- Namespace: aws:autoscaling:asg
OptionName: MaxSize
Value: '6'
- Namespace: aws:elasticbeanstalk:environment
OptionName: EnvironmentType
Value: LoadBalanced
sampleEnvironment:
Type: AWS::ElasticBeanstalk::Environment
Properties:
ApplicationName:
Ref: sampleApplication
Description: AWS ElasticBeanstalk Sample Environment
TemplateName:
Ref: sampleConfigurationTemplate
VersionLabel:
Ref: sampleApplicationVersion
Run Code Online (Sandbox Code Playgroud)
错误
发生错误:sampleEnvironment - 环境在进入终止状态时无法启动。
注意
配置文件beanstalk-test-deployment已经具有 IAM 角色:
Sea*_*mIT 13
您需要创建aws-elasticbeanstalk-ec2-role AWS::IAM::InstanceProfile 并在 sampleConfigurationTemplate 的 OptionSettings 中提供它:
- Namespace: aws:autoscaling:launchconfiguration
OptionName: IamInstanceProfile
Value: aws-elasticbeanstalk-ec2-role
Run Code Online (Sandbox Code Playgroud)
该角色可以使用这些托管策略 Arn:
- arn:aws:iam::aws:policy/AWSElasticBeanstalkWebTier
- arn:aws:iam::aws:policy/AWSElasticBeanstalkWorkerTier
- arn:aws:iam::aws:policy/AWSElasticBeanstalkMulticontainerDocker
Run Code Online (Sandbox Code Playgroud)
如果添加此角色没有帮助,则该错误还可能表明.ebextensions失败。我曾经通过在 ebextensions 中调用一个不存在的 KeyName 来得到这个错误。
| 归档时间: |
|
| 查看次数: |
2696 次 |
| 最近记录: |