【发布时间】:2020-12-15 12:05:09
【问题描述】:
我正在尝试使用 terraform 创建多个 ecs 实例。事实上,我希望每个 ecs 实例都有多个数据磁盘。所以一个磁盘用于 OS 和 2 个其他数据磁盘。
代码 sn-p 应该是这样的:
resource "alicloud_instance" "node" {
image_id = data.alicloud_images.nodes.id
instance_type = var.instance_type_controller
internet_max_bandwidth_out = 100
security_groups = alicloud_security_group.cluster.id
key_name = var.key_pair
count = 1
system_disk_size = 80
data_disks = [
{
name = "/dev/xvdb"
size = 200
delete_with_instance = true
},
{
name = "/dev/xvdc"
size = 100
delete_with_instance = true
}
]
}
唯一的问题是我有一条消息错误告诉我
An argument named "data_disks" is not expected here. Did you mean to define a
block of type "data_disks"?
我浏览了documentation,我很确定data_disks 的类型是list(map(string)),所以我写的应该可以工作,但只有当我将它设置为时才能工作
data_disks {
name = "/dev/xvdb"
size = 200
delete_with_instance = true
}
但是我需要多个数据磁盘连接到我的 ECS 实例...我错过了什么吗?
我正在使用以下 terraform/provider 版本:
Terraform v0.13.0
+ provider registry.terraform.io/hashicorp/alicloud v1.94.0
+ provider registry.terraform.io/hashicorp/random v2.3.0
+ provider registry.terraform.io/hashicorp/template v2.1.2
【问题讨论】:
-
您需要多次重复该块。
-
太棒了,它就像一个魅力,谢谢@ydaetskcoR
标签: terraform alibaba-cloud terraform0.12+ alibaba-cloud-ecs