1

我今天从 AWS 收到以下错误。“我们目前在您请求的可用区 (us-east-1a) 中没有足够的 m3.large 容量。我们的系统将努力预置额外的容量。您目前可以通过不指定可用区来获得 m3.large 容量您的要求或选择 us-east-1e、us-east-1b。”

这到底是什么意思?听起来 AWS 没有物理资源来分配我需要的虚拟资源。但这似乎令人难以置信。

解决方案是什么?有没有一种简单的方法可以更改实例的可用区?还是我需要创建一个 AMI 并在新的可用区中恢复它?

4

3 回答 3

1

这不是一个新问题。您无法更改可用区。正如您已经说过的,最好的选择是创建一个 AMI 并在新 AZ 中重新启动实例。你会一切就绪。如果您想跨地区,请参阅 - http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/CopyingAMIs.html

于 2014-10-29T18:28:41.297 回答
0

我通过修复我的 aws_region 和 availability_zone 值修复了这个错误。添加 aws_subnet_ids 后,错误消息会准确显示我的 ec2 正在创建的区域。

variable "availability_zone" {
    default = "ap-southeast-2c"
}

variable "aws_region" {
    description = "EC2 Region for the VPC"
    default = "ap-southeast-2c"
}
data "aws_vpc" "default" {
  default = true
}

data "aws_subnet_ids" "all" {
  vpc_id = "${data.aws_vpc.default.id}"
}


resource "aws_instance" "ec2" {
     ....
    subnet_id = "${element(data.aws_subnet_ids.all.ids, 0)}"
    availability_zone = "${var.availability_zone}"

}
于 2019-04-12T03:45:53.807 回答
0

您可以尝试获取预留实例,这可以保证您始终获取实例。

于 2017-08-08T01:57:32.207 回答