通过使用 Terraform 提供 AWS 区域,在现有 VPC 中预置 EC2



我正在尝试通过向 Terraform 提供 AWS 区域来在现有和特定的 VPC 中预置 EC2 实例。

我希望能够使用正则表达式或其他方法自动选择特定的 VPC,这是我的 tf 文件。

有人可以帮助我吗?

我想自动选择的 VPC 具有前缀"数字"。所以而不是在这里提供它的名字 -> name = "tag:${local.env_profile}-vpc"

我只想提供区域,然后使用正则表达式获取此特定 VPC。

provider "aws" {
  region                  = "eu-west-3"
  shared_credentials_file = "${var.shared_credentials_file}"
  profile                 = "${var.profile}"
}
data "aws_vpc" "selected" {
  filter {
    name = "tag:${local.env_profile}-vpc"
    values = ["${local.env_profile}-vpc"]
  }
}
resource "aws_instance" "general" {
  ami = "ami-00035f41c82244dab"
  instance_type = "${var.type}"
  vpc = "${data.aws_vpc.selected.id}"
  key_name = "${var.key_name}"
  tags {
    Name = "empty"
  }
}

我认为没有办法通过正则表达式在 terraform 中选择随机 VPC。您可以在此处查看 VPC 的数据源 https://www.terraform.io/docs/providers/aws/d/vpc.html

您可以使用 ID 和名称来引用 VPC。

最新更新