ust*_*etz 11 amazon-web-services amazon-elastic-beanstalk
如何更改现有Elastic Beanstalk应用程序的实例类型?
目前我在Web界面中更改它:

我尝试使用命令行工具更改它:
eb setenv InstanceType=t2.medium
它没有抛出错误,但也没有更改实例类型.
Nic*_*ich 19
setenv命令用于更改环境变量.因此,您尝试的命令是bash相当于:
export InstanceType=t2.medium
并没有真正为你的beanstalk环境做任何事情.
您可以在create期间使用-i选项创建环境
eb create -i t2.micro
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用eb config编辑当前运行的环境.这将打开一个文本编辑器.寻找看起来像的部分:
aws:autoscaling:launchconfiguration:
IamInstanceProfile: aws-elasticbeanstalk-ec2-role
EC2KeyName: aws
InstanceType: t1.micro
Run Code Online (Sandbox Code Playgroud)
并将t1.micro编辑为t2.micro.(保存并退出)
但是为了让您的生活更轻松,您可以保存以下内容,.elasticbeanstalk/saved_configs/default.cfg.ymlCLI将在以后的所有创建中使用所有这些设置.
AWSConfigurationTemplateVersion: 1.1.0.0
OptionSettings:
aws:elb:loadbalancer:
CrossZone: true
aws:elasticbeanstalk:command:
BatchSize: '30'
BatchSizeType: Percentage
aws:autoscaling:launchconfiguration:
IamInstanceProfile: aws-elasticbeanstalk-ec2-role
EC2KeyName: aws
InstanceType: t2.micro
aws:elb:policies:
ConnectionDrainingEnabled: true
aws:autoscaling:updatepolicy:rollingupdate:
RollingUpdateType: Health
RollingUpdateEnabled: true
aws:elb:healthcheck:
Interval: '30'
Run Code Online (Sandbox Code Playgroud)
小智 6
更可编写脚本的方式:
aws elasticbeanstalk update-environment --environment-name "your-env-name" --option-settings "Namespace=aws:autoscaling:launchconfiguration,OptionName=InstanceType,Value=t2.micro"
Run Code Online (Sandbox Code Playgroud)
已接受的解决方案在 2020 年对我来说不起作用。
截至今天(2020 年 2 月 26 日),.ebextensions/02_python.config我必须在以下位置添加以下内容option_settings:
option_settings:
# ...
aws:ec2:instances:
InstanceTypes: 'm5.large'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4849 次 |
| 最近记录: |