使用模块创建 EC2 安装时子网 ID 出错



我正在尝试在私有子网中创建 3 个 ec2 实例。使用下面的 git 存储库中的 ec2-module.tf

https://github.com/quickbooks2018/Terraform-Classic-Modules

下面是我在 tf 文件中启用的行

ec2-subnets-ids = ["${module.vpc.private-subnet-ids}"]

错误如下所示,

错误:模块参数的值无效

在第 17 行 ec2-module.tf 模块"EC2-App-v1"中: 17: ec2-subnets-ids = ["${module.vpc.private-subnet-ids}"]

给定的值不适合子模块变量"ec2-subnets-ids" 定义于 modules/ec2/ec2-variables.tf:46,1-27:元素 0:需要字符串。

请帮助了解错误以及如何修复它。

查看您引用的那些模块,问题似乎是您正在传递字符串列表,但应该只传递字符串列表。

所以,而不是

ec2-subnets-ids = ["${module.vpc.private-subnet-ids}"]

传递单个元素的列表(该元素是字符串列表(,尝试

ec2-subnets-ids = "${module.vpc.private-subnet-ids}"

它只是将列表向前传递。

最新更新