簡體   English   中英

Terraform-創建EBS快照,然后將快照轉換為EBS並附加到EC2

[英]Terraform - Create Snapshot of EBS and then convert Snapshot to EBS and attach to an EC2

是否可以創建EBS卷的快照,拍攝該快照並將其轉換回EBS卷並通過Terraform將其附加到EC2?

我目前正在考慮在AWS中自動化我們的生產和測試環境,因此它們是相同的,我發現使用Terraform非常有用,但是我找不到有關如何實現此目標的任何文檔。

您可以使用aws_ebs_volumeaws_volume_attachment資源從快照創建EBS卷並將其附加到實例,而不會產生太多困難。

您還可以使用aws_ebs_snapshot資源創建快照,或使用aws_ebs_snapshot數據源動態獲取快照ID。

一個簡單的例子可能是這樣的:

data "aws_ebs_volume" "production_volume" {
  most_recent = true

  filter {
    name   = "volume-type"
    values = ["gp2"]
  }

  filter {
    name   = "tag:Name"
    values = ["Production"]
  }
}

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

  tags {
    Name = "Production"
  }
}

resource "aws_ebs_volume" "from_production_snapshot" {
  availability_zone = "us-west-2a"
  snapshot_id       = "${aws_ebs_snapshot.production_snapshot.id}"
  size              = 40

  tags {
    Name = "Non-Production"
  }
}

resource "aws_instance" "non_production" {
  ami               = "ami-21f78e11"
  availability_zone = "us-west-2a"
  instance_type     = "t2.micro"

  tags {
    Name = "Non-Production"
  }
}

resource "aws_volume_attachment" "non_production" {
  device_name = "/dev/xvdf"
  volume_id   = "${aws_ebs_volume.from_production_snapshot.id}"
  instance_id = "${aws_instance.non_production.id}"
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM