我在 AWS Elastic Beanstalk 配置中使用“T2 Unlimited”实例。
默认实例终止策略(用于缩减规模时)会首先终止最老的实例。这很糟糕,因为最老的实例最有可能积累 CPU 积分。我想将实例终止策略更改为“最新实例优先”。
我尝试过这个:
option_settings:
aws:autoscaling:asg:
TerminationPolicies: [
"NewestInstance"
]
但出现错误:
Invalid option specification (Namespace: 'aws:autoscaling:asg', OptionName: 'TerminationPolicies'): Unknown configuration setting.
这并不太令人惊讶,因为此选项并未列为有效选项。
那么,如何才能让 Beanstalk 为某个环境创建新的自动缩放组时,自动将终止策略设置为最新的策略呢?
也许这是不必要的,因为仅在创建环境时才会创建自动缩放组?
答案1
以下对我有用。我使用.ebextensions
文件夹来配置我的应用程序。我在里面创建了一个termination.config
包含以下内容的文件:
Resources:
AWSEBAutoScalingGroup:
Type: "AWS::AutoScaling::AutoScalingGroup"
Properties:
TerminationPolicies: [ "OldestInstance" ]