为啥所有 EC2 实例都在同一个可用区启动?

Posted

技术标签:

【中文标题】为啥所有 EC2 实例都在同一个可用区启动?【英文标题】:Why are all the EC2 instances launched in the same availability zone?为什么所有 EC2 实例都在同一个可用区启动? 【发布时间】:2020-01-30 07:34:54 【问题描述】:

我有一个 AWS 弹性 beanstalk 环境,其中包含一个具有 3 个可用区的应用程序负载均衡器。

我想知道为什么弹性豆茎启动的所有 3 个 EC2 实例都位于ap-northeast-1c

是否可以在所有可用区均匀启动 EC2 实例?我的意思是每个可用区 1 个实例。

弹性beanstalk的配置部分中的Auto Scaling Group包含3个AZ。

但是从上图可以看出,它们都是灰色的,这意味着我无法编辑它们。这很奇怪。

如果我打开EC2服务 -> Auto Scaling Group,我发现Auto Scaling Group只包含1个AZ。这与弹性豆茎中的设置不一致。

【问题讨论】:

【参考方案1】:

您的 Elastic Beanstalk 包含一个 Auto Scaling 组,用于管理您环境中的 Amazon EC2 实例。在您的自动扩展配置中,您可能只使用了一个可用区。

前往

Elastic Beanstalk 控制台 -> 您的环境的管理页面 -> 选择配置 -> Auto Scaling 组 -> 可用区

选择可用区的数量来分散您环境的实例。默认情况下,Auto Scaling 组在所有可用区域中平均启动实例。

完整步骤和进一步了解

Auto Scaling Group for Your AWS Elastic Beanstalk Environment

编辑:尝试配置 > 网络下的 Auto Scaling 组并选择子网

【讨论】:

您好,感谢您的回复。但是我的弹性伸缩组中的可用区都是灰色的。这意味着我无法编辑它们。 @Brian 尝试配置 > 网络下的 Auto Scaling 组并选择子网/可用区映射 您好,谢谢。更改子网/可用区有效。实例子网仅包含 1 个可用区。我将其更改为包含 3 个可用区。现在我的 EC2 实例可以在不同的可用区启动。

以上是关于为啥所有 EC2 实例都在同一个可用区启动?的主要内容,如果未能解决你的问题,请参考以下文章

sh 获取所有可用区中的所有EC2实例类型

使用 EC2 可用区的最佳实践是啥?

为啥我的 ECS 服务无法向我的 ELB 注册可用的 EC2 实例?

是否可以更改现有 EC2 t1.micro 实例的可用区? [关闭]

在 Auto Scaling 组中,确保在给定的可用区中至少有一个 ec2 实例始终可用

Elastic Beanstalk:在同一可用区创建 EC2 和 RDS 实例