gpt4 book ai didi

bash - Amazon 中支持 VPC 的可用性区域

转载 作者:行者123 更新时间:2023-11-29 08:50:34 26 4
gpt4 key购买 nike

我发现在某些地区(例如 us-east-1),只有一些可用区可用于创建子网(因此也就是 VPC 实例)。在我的例子中,这些区域是 us-east-1c、-1d 和 -1e,但这些因帐户而异。

我正在构建一个生成子网和 VPC 实例的脚本,因此以编程方式找出哪些区域支持 VPC 会很有用,特别是因为我知道区域集无法更改(或在随着时间的推移增长最少)。

这篇文章基本上问了同样的问题,但接受的答案实际上并没有提供我和提问者正在寻找的信息(除非 ec2-describe-availability-zones 有一些我不知道的特定于 VPC 的参数的):Amazon VPC Availability

我想出了一个可能的解决方法,即尝试创建一个带有垃圾 vpc-id 和可用区的子网 (ec2-create-subnet -c garbage -i 10.0.0.0/24 -z garbage )。此调用的错误消息包括能够托 pipe 网的 AZ 列表,我可以解析该输出以获取我正在寻找的信息。然而,这感觉像是一种 hack,如果不需要的话,我不喜欢依赖错误行为和错误消息的特定格式来处理这种事情。有没有更好的办法?

更新:根据评论添加更多细节...

我对 ec2-describe-availability-zones 的调用总是返回五个值:us-east-1a 到 us-east-1e,但我们只能在 1c、1d 和 1d 中创建 VPC 子网1e.我们的实例在除 1b 以外的所有区域中运行,在 1b 中我什至无法启动常规实例(它似乎正在逐步淘汰)。这个帐户在 VPC 功能发布之前就已经存在,所以我想它有点像“遗留”帐户。这可能与我被允许创建子网和 VPC 实例的位置以及 ec2-describe-availability-zones 返回时之间的差异有关。我将向 AWS Support 提出问题,并将在此处报告任何发现。

最佳答案

在与 AWS 支持人员反复讨论后,我的情况似乎是亚马逊决定不“隐藏”现有可用区的结果,即使在它们被新实例淘汰后也是如此,因为他们相信这会隐藏可能仍在运行实例的 AZ 会让人感到困惑。他们在我的情况下确定支持 VPC 的 AZ 的建议是硬编码或反复试验 - 令人失望,但可以理解。

因此,我故意发出错误请求并解析错误(见下文)的解决方案似乎是少数弊端中较小的一个。

> ec2-create-subnet -c garbage -i 10.0.0.0/24 -z garbage
Client.InvalidParameterValue: Value (garbage) for parameter availabilityZone is invalid. Subnets can currently only be created in the following availability zones: us-east-1c, us-east-1d, us-east-1e.

更新:在与 AWS 支持人员进行更多跟进后,我能够确认这确实与我的账户使用 VPC 之前有关,并且能够通过API 在他们的路线图上。

关于bash - Amazon 中支持 VPC 的可用性区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22744467/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com