使用 Terraform 创建多个 EBS 卷的快照

迪彭德拉·丹加尔

我正在尝试使用 Terraform 基于特定 AWS 区域中的标签创建某些 EBS 卷的快照。我尝试过基于标签过滤 EBS 卷。当过滤器属性中仅指定一个标签值时,我可以获得 EBS 卷 ID 的清晰输出,但对于多个值,我收到以下错误:

data.aws_ebs_volume.ebs_volume:data.aws_ebs_volume.ebs_volume:您的查询返回了多个结果。请尝试更具体的搜索条件,或将most_recent属性设置为 true。

下面是我的 terraform 模板:

data "aws_ebs_volume" "ebs_volume" {
  filter {
    name   = "tag:Name"
    values = ["EBS1","EBS2","EBS3"]
  }
}
output "ebs_volume_id" {
  value = "${data.aws_ebs_volume.ebs_volume.id}"
}

resource "aws_ebs_snapshot" "ebs_volume" {
  volume_id = "${data.aws_ebs_volume.ebs_volume.id}"
}

是否有一种明确的方法可以使用 terraform 中的任何类型的循环语句创建多个 EBS 卷的快照?

ydaetskcoR

您可以使用count元参数循环列表,创建多个资源或数据源。

在您的情况下,您可以执行以下操作:

variable "ebs_volumes" {
  default = [
    "EBS1",
    "EBS2",
    "EBS3",
  ]
}

data "aws_ebs_volume" "ebs_volume" {
  count = "${length(var.ebs_volumes)}"

  filter {
    name   = "tag:Name"
    values = ["${var.ebs_volumes[count.index]}"]
  }
}

output "ebs_volume_ids" {
  value = ["${data.aws_ebs_volume.ebs_volume.*.id}"]
}

resource "aws_ebs_snapshot" "ebs_volume" {
  count     = "${length(var.ebs_volumes)}"
  volume_id = "${data.aws_ebs_volume.ebs_volume.*.id[count.index]}"
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用基于快照的卷启动失败

来自分类Dev

如何创建AWS实例快照-同时创建多个卷?

来自分类Dev

如何使用Ruby skd v2拍摄AWS EBS卷的快照?

来自分类Dev

我应该从公共快照还是从AWS中全新的EBS卷创建新的EBS卷?

来自分类Dev

使用boto3挂载EBS卷

来自分类Dev

使用Terraform变量创建多个元素的正确方法是什么?

来自分类Dev

手动更改EBS卷后,Terraform模板重新创建所有资源

来自分类Dev

如何从其他EBS类型创建的AWS快照中创建其他AWS EBS卷

来自分类Dev

如何使用AWS CLI从EBS快照创建AMI

来自分类Dev

K8的mongodb容器无法使用EBS卷安装

来自分类Dev

使用Terraform从共享快照创建多个AWS EBS卷并用快照描述对其进行标记

来自分类Dev

何时使用EBS快照和AMI映像

来自分类Dev

使用for_each在Terraform中创建多个Alias记录

来自分类Dev

Terraform:使用带有for_each的Terraform创建多个实例并映射security_group_rule

来自分类Dev

AWS EBS快照-相同的卷,不同的方法,还会增量吗?

来自分类Dev

Terraform模块:使用模块创建多个资源并相互引用

来自分类Dev

使用PVC加密EBS卷而不在Kubernetes内部丢失数据

来自分类Dev

Kubernetes Job创建卷快照

来自分类Dev

如何为Amazon Linux创建可引导的EBS卷

来自分类Dev

使用基于快照的卷启动失败

来自分类Dev

如何使用btrfs隔离快照卷?

来自分类Dev

lvm:在卷组之间创建快照

来自分类Dev

如何使用APFS快照挂载系统卷

来自分类Dev

空间不足,无法在CentO中创建卷快照

来自分类Dev

如何使用terraform数据源获取最新的ebs快照?

来自分类Dev

创建自动 EBS 快照

来自分类Dev

有没有办法找出其他人使用 EBS 快照创建卷的频率?

来自分类Dev

使用 Terraform 从不是最近的快照创建 RDS 实例

来自分类Dev

使用 terraform 为每个可用区创建多个子网

Related 相关文章

  1. 1

    使用基于快照的卷启动失败

  2. 2

    如何创建AWS实例快照-同时创建多个卷?

  3. 3

    如何使用Ruby skd v2拍摄AWS EBS卷的快照?

  4. 4

    我应该从公共快照还是从AWS中全新的EBS卷创建新的EBS卷?

  5. 5

    使用boto3挂载EBS卷

  6. 6

    使用Terraform变量创建多个元素的正确方法是什么?

  7. 7

    手动更改EBS卷后,Terraform模板重新创建所有资源

  8. 8

    如何从其他EBS类型创建的AWS快照中创建其他AWS EBS卷

  9. 9

    如何使用AWS CLI从EBS快照创建AMI

  10. 10

    K8的mongodb容器无法使用EBS卷安装

  11. 11

    使用Terraform从共享快照创建多个AWS EBS卷并用快照描述对其进行标记

  12. 12

    何时使用EBS快照和AMI映像

  13. 13

    使用for_each在Terraform中创建多个Alias记录

  14. 14

    Terraform:使用带有for_each的Terraform创建多个实例并映射security_group_rule

  15. 15

    AWS EBS快照-相同的卷,不同的方法,还会增量吗?

  16. 16

    Terraform模块:使用模块创建多个资源并相互引用

  17. 17

    使用PVC加密EBS卷而不在Kubernetes内部丢失数据

  18. 18

    Kubernetes Job创建卷快照

  19. 19

    如何为Amazon Linux创建可引导的EBS卷

  20. 20

    使用基于快照的卷启动失败

  21. 21

    如何使用btrfs隔离快照卷?

  22. 22

    lvm:在卷组之间创建快照

  23. 23

    如何使用APFS快照挂载系统卷

  24. 24

    空间不足,无法在CentO中创建卷快照

  25. 25

    如何使用terraform数据源获取最新的ebs快照?

  26. 26

    创建自动 EBS 快照

  27. 27

    有没有办法找出其他人使用 EBS 快照创建卷的频率?

  28. 28

    使用 Terraform 从不是最近的快照创建 RDS 实例

  29. 29

    使用 terraform 为每个可用区创建多个子网

热门标签

归档