我正在使用具有2个卷的自定义AMI创建ec2-instance。我想给像
这样的两个卷分别命名/标记vol-lab-cam-web-aue1-sda1到根卷,然后 使用terraform将vol-lab-cam-web-aue1-sdb移至其他卷。
我只能在terraform文档中看到volume_tags选项。有没有解决办法做到这一点? 我的示例代码如下
resource "aws_instance" "web" {
ami = "ami-0e6f18d5546ceec3d"
instance_type = "t2.micro"
volume_tags = {
Name = "vol-lab-cam-web01-aue1a-sda1"
}
tags = {
Name = "HelloWorld"
}
}
以下是我使用此屏幕截图 sdb
答案 0 :(得分:0)
由于volume_tags
被统一应用于启动时创建的所有设备,因此请勿将其用于特定于设备的值。而是使用aws_ebs_volume
资源创建sdb
卷,并使用aws_volume_attachment
资源将其附加到实例。
在aws_ebs_volume
代码中,可以为 Name 值输入“ vol-lab-cam-web-aue1-sdb”。
答案 1 :(得分:0)
就像KLH说的那样,如果您在Terraform中创建2个卷:
resource "aws_ebs_volume" "drivea" {
availability_zone = "${var.availability_zone}"
size = 40
tags = {
Name = "HelloWorld"
}
}
resource "aws_ebs_volume" "driveb" {
availability_zone = "${var.availability_zone}"
size = 40
tags = {
Name = "WhaleTail"
}
}
因此,然后将它们附加到您的实例:
resource "aws_volume_attachment" "ebsa" {
device_name = "/dev/sdh"
volume_id = "${aws_ebs_volume.drivea.id}"
instance_id = "${aws_instance.web.id}"
}
resource "aws_volume_attachment" "ebsb" {
device_name = "/dev/sdi"
volume_id = "${aws_ebs_volume.driveb.id}"
instance_id = "${aws_instance.web.id}"
}
您将有2个具有不同标签的磁盘连接到实例。 然后,如果您在AWS控制台中查看,则会看到带有不同标签的不同卷。