Terraform отсоедините и снова установите объем - PullRequest
0 голосов
/ 17 января 2020

Я использую Terraform, чтобы раскрутить EC2. После создания EC2 я записываю некоторые данные в / myapp. Как мне отсоединить / myapp и повторно присоединить его каждый раз, когда EC2 разрушается и воссоздается заново? Я провел некоторое исследование и обнаружил, что следующий код может быть вариантом:

resource "aws_instance" "my_ec2" {
  ami           = "${var.ami_id}"
  instance_type = "${var.instance_type}"
  count         = "${var.node_count}"
  subnet_id     = "${var.subnet_id}"
  key_name      = "${var.key_pair}"

  root_block_device = {
    volume_type           = "gp2"
    volume_size           = 20
    delete_on_termination = false
  }

  vpc_security_group_ids = ["${var.security_group_ids}"]
}


resource "aws_ebs_volume" "my_vol" {
  size              = 120
  count             = "${var.node_count}"
  type              = "gp2"
}

resource "aws_volume_attachment" "my_vol_att" {
  device_name = "/dev/xvdf"
  volume_id   = "${element(aws_ebs_volume.my_vol.*.id, count.index)}"
  instance_id = "${element(aws_instance.my_ec2.*.id, count.index)}"
  count       = "${var.node_count}"
}

Мои вопросы:

Если my_ec2 будет уничтожен:

  1. ec2 больше нет
  2. my_vol ушел?
  3. my_vol_att остается? Если да, где я могу его увидеть?

Когда я снова запустлю код Terraform, чтобы заново создать ec2 после его уничтожения:

  1. создаст ли новый идентификатор my_vol ?
  2. что будет с
  3. my_vol_att?

Что такое my_vol_att? Указатель или копия m_vol, которая прикреплена к устройству и никогда не будет уничтожена, если только вы не удалите ее вручную?

Извините, мои вопросы могут показаться глупыми, так как я очень плохо знаком с Terraform и AWS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...