标签: availability-zone

有没有办法让cloudformation查询可用区域以创建子网?

我有一个尝试创建VPC的cloudformation脚本,每个AZ有一个子网.

当我跑:

aws ec2 describe-availablity-zones
Run Code Online (Sandbox Code Playgroud)

我得到了4个区域:

"AvailabilityZones": [
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1a"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1b"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1c"
    }, 
    {
        "State": "available", 
        "RegionName": "us-east-1", 
        "Messages": [], 
        "ZoneName": "us-east-1d"
    }
 ]
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试创建堆栈时,出现错误:

  "ResourceStatusReason": "Value (us-east-1a) for parameter availabilityZone
   is invalid. Subnets can currently only be created in the following 
   availability zones: us-east-1c, us-east-1b, us-east-1d.", 
Run Code Online (Sandbox Code Playgroud)

我正在指定AZ

      "AvailabilityZone" : {
        "Fn::Select" : [ "0", …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-cloudformation availability-zone

24
推荐指数
3
解决办法
1万
查看次数

AWS上具有terraform的多个可用区域

我正在开发的VPC有3个逻辑层:Web,App和DB.对于每个层,每个可用区中都有一个子网.我正在使用的地区共有6个子网.

我正在尝试使用模块和count参数创建EC2实例,但我不知道如何告诉terraform使用App层的两个子网.我有一个额外的约束是使用静态IP地址(或具有确定性私有名称的方式)

我正在玩这个资源

resource "aws_instance" "app_server" {
  ...
  count = "${var.app_servers_count}"

  # Not all at the same time, though!
  availability_zone = ...
  subnet_id = ...
  private_ip = ...
}
Run Code Online (Sandbox Code Playgroud)

到目前为止我尝试/想过的事情:

  • 使用data "aws_subnet" "all_app_subnets" {...}按名称过滤,获取匹配的所有子网并将其用作列表.但aws_subnet不能退回清单;
  • 使用data "aws_availability_zones" {...}查找所有的区域.但我仍然有分配正确子网的问题;
  • 使用data "aws_subnet_ids" {...}看起来是最好的选择.但显然它没有匹配网络名称的过滤选项
  • 将子网ID作为字符串列表传递给模块.但我不想硬编码ID,它不是自动化;
  • 将子网硬编码为data "aws_subnet" "app_subnet_1" {...},data "aws_subnet" "app_subnet_2" {...}但是我必须为每个我不喜欢的子网使用单独的变量集;
  • 获取每个子网的信息,如上所述,然后创建一个map以列表形式访问它.但是在变量定义中使用插值是不可能的;
  • 不使用模块并为每个环境硬编码每个实例.嗯......真的吗?

我真的没想到了.似乎没有人必须在特定的子网中部署实例并保持良好的程度.我只看到未指定子网的示例或人们只使用默认值的示例.这真的很不寻常吗?

在此先感谢大家.

amazon-ec2 amazon-web-services availability-zone terraform

10
推荐指数
3
解决办法
7120
查看次数

AWS EC2可用区域到底在哪里?

我正在尝试为目标受众创建一个具有最低延迟的服务器.我得到了区域和可用区域之间的区别(我认为).听起来可用区位于不同的城市?他们到底在哪里?我试着在过去的一小时内搜索谷歌,但我找不到任何东西.

latency amazon-ec2 amazon-web-services availability-zone

8
推荐指数
1
解决办法
8236
查看次数

CloudBees,可用区和灾难恢复

CloudBees调用特定区域的部署与他们(以及亚马逊)调用可用区域的区别有何不同?

据我所知,CloudBees允许您部署在2个区域/区域之一:美国和欧洲.这些是我唯一的选择(针对特定区域的部署可用区域)吗?

在美国数据中心完全失效的情况下,将备用空闲实例池部署到欧洲"区域"是一个可靠的灾难恢复计划吗?DR如何通常由CloudBees客户端处理?

java disaster-recovery paas cloudbees availability-zone

6
推荐指数
1
解决办法
129
查看次数

AWS最佳实践:每个AZ都有NAT网关吗?

由于NAT网关在单个AZ中只有冗余,如果我想在每个AZ中有一对公共/私有子网用于多AZ冗余,我应该在每个AZ都有一个NAT网关,不应该吗?

否则,如果我只有一个NAT,如果AZ发生故障,所有AZ中的所有子网都会关闭,从而无法实现此多可用区部署的目的.

我是对还是错?

nat subnet amazon-web-services availability-zone

5
推荐指数
2
解决办法
2451
查看次数

AWS Glue 连接是否会出现单点故障?

要创建 Glue 连接资源,我们只需从帐户 VPC 中选择一个可用区/子网。这是否意味着如果该 AZ 停止使用该连接的 Glue 作业将会失败?如果是的话,我们如何使其成为多个可用区以避免单点故障?

amazon-web-services availability-zone aws-glue

5
推荐指数
1
解决办法
1448
查看次数

EKS工作节点可以设置在不同区域吗

我们目前正在设计一个基于微服务的架构,将单体应用程序划分为微服务。

早些时候,巨石存在于两个不同的地区,即。美国和亚洲。美国实例将收到美国的请求,亚洲实例将收到亚洲国家的请求。

现在,我们想要使用 AWS EKS 来部署微服务。我检查了 EKS 部署在一个区域的 3 个不同的可用区中以维护 HA。在我们的场景中,我们是否需要有 2 个不同的 AWS EKS 设置,美国和亚洲各一个?

是否可以在不同区域只能使用一个EKS和工作节点?

该架构由AWS EKS、Spring Boot微服务、Angular 5应用程序、Docker和Kubernetes组成。

availability-zone kubernetes microservices amazon-eks

5
推荐指数
1
解决办法
5266
查看次数

可用的EC2实例类型是否在可用区(在同一区域中)不同?

亚马逊在法兰克福启动了第三个可用性区域:eu-central-1c

从我的角度来看,第三个可用性区域不支持现有区域(eu-central-1a和eu-central-1b)中可用的所有实例类型。

我一直认为可用实例类型在区域之间可能有所不同,但在同一区域内的可用区域中是相同的。从我看来,情况并非如此。

如果您在一个区域中可以使用EC2实例类型,您是否不能假设它在所有可用区域中都可用,这是真的吗?


用于测试的脚本是:

aws ec2 describe-reserved-instances-offerings \
  --query "ReservedInstancesOfferings[?AvailabilityZone=='eu-central-1c'] [InstanceType]" \
  --output text --region eu-central-1 | grep c3.large

# c3.large not available on eu-central-1c
Run Code Online (Sandbox Code Playgroud)

aws ec2 describe-reserved-instances-offerings \
  --query "ReservedInstancesOfferings[?AvailabilityZone=='eu-central-1a'] [InstanceType]" \
  --output text --region eu-central-1 | grep c3.large

# ... it is available on eu-central-1a
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services availability-zone

4
推荐指数
1
解决办法
2900
查看次数

以编程方式从 EC2 实例确定可用区

正在运行的 EC2 实例是否可以在不使用 AWS API 的情况下确定它正在运行的可用区?也许有办法让 EC2 在环境变量或类似变量中传递此信息?

我只是希望在不添加对 AWS 客户端库的依赖的情况下构建少量的 AZ 意识。

amazon-ec2 amazon-web-services availability-zone

1
推荐指数
1
解决办法
889
查看次数

多AZ环境中的自动伸缩实例

我计划在多AZ(AZ =可用区)网络中构建自动扩展组(ASG)。假设我们运行了一些诊断,发现正常负载至少需要 8 个实例,高峰时段需要 24 个实例。

这是一个示例屏幕截图控制台。控制台截图

我很困惑这 8 个实例(或 24 个实例)是跨可用区还是在一个可用区运行。此外,如果我必须强制 ASG 在一个可用区中每个实例有 8 个实例,我该怎么做?

amazon-ec2 amazon-web-services availability-zone multi-az aws-auto-scaling

1
推荐指数
1
解决办法
6417
查看次数