【发布时间】:2021-09-11 12:42:40
【问题描述】:
我在使用 terraform-aws-service-catalog 中的 ec2-instance gruntwork 模块启动单个 ec2 实例(现有 AMI 的卷大小 = 32GB)时遇到了一个问题。它不允许创建具有给定快照 ID(大小=32GB)的根卷。启动ec2实例时弹出错误-
module.demo_instance.module.ec2_instance.aws_instance.instance: Creating...
Error: Error launching source instance: InvalidBlockDeviceMapping: Volume of size 8GB is smaller than snapshot 'snap-0850762dcfacpb2957', expect size >= 32GBB
on .terraform/modules/demo_instance.ec2_instance/modules/single-server/main.tf line 23, in resource "aws_instance" "instance":
23: resource "aws_instance" "instance" {
我看到 ec2 实例正在使用来自 terraform-aws-server 的单服务器模块,它的默认 root_volume_size 为 8GB,无法从 ec2-instance 模块修改。我试图附加到 ec2 实例的 ebs_volume 似乎不起作用
module "demo_instance" {
source = "git::git@github.com:gruntwork-io/terraform-aws-service-catalog.git//modules/services/ec2-instance?ref=v0.44.5"
name = "${var.name}-${var.account_name}"
instance_type = var.instance_type
ami = "ami-03a0a2de6ce3aq7ff7"
ami_filters = null
enable_ssh_grunt = false
keypair_name = local.key_pair_name
vpc_id = var.vpc_id
subnet_id = var.subnet_ids[0]
ebs_volumes = {
"demo-volume" = {
type = "gp2"
size = 32
snapshot_id = "snap-0850762dcfacpb2957"
},
}
allow_ssh_from_cidr_blocks = var.allow_ssh_from_cidr_list
allow_ssh_from_security_group_ids = []
allow_port_from_cidr_blocks = {}
allow_port_from_security_group_ids = {}
route53_zone_id = ""
dns_zone_is_private = true
route53_lookup_domain_name = ""
}
有没有办法使用 ec2-instance gruntwork 模块修改 root_volume_size 的默认值(8GB)?任何帮助将不胜感激。
【问题讨论】:
-
你有完整的代码要展示吗?您显示的几行没有任何上下文。
-
@Marcin 用代码更新了问题。
-
这个模块还存在吗?
github.com/gruntwork-io/terraform-aws-service-catalog.git返回 404。 -
是的,它适用于基于订阅的用户。这不是公开的@Marcin
-
我投票结束这个问题,因为这是关于专有代码的问题,而不是任何人都可以参与的通用问题。
标签: amazon-web-services amazon-ec2 terraform terragrunt