小编cjs*_*cer的帖子

Terraform - 使用在单独文件中创建的安全组 ID 来创建 EC2 实例

我已使用模块在 AWS VPC 中创建安全组。如何在单独的文件中引用由此创建的资源?我正在同一存储库的单独目录中创建我们的堡垒实例。

我的堡垒配置如下所示,使用 Terraform EC2 模块,并且如果我对 vpc 安全组 ID 进行硬编码,则可以正常工作,但我希望它能够直接从创建安全组时获取它,因为这将来可能会发生变化..

terraform/aws/layers/bastion/main.tf

    provider "aws" {
        region = var.region
    }

    module "ec2-instance" {
      source = "terraform-aws-modules/ec2-instance/aws"

      name                   = "bastion"
      instance_count.        = 1
      ami                    = var.image_id
      instance_type          = var.instance_type
      vpc_security_group_ids = ["${}"]
      subnet_id              = var.subnet
      iam_instance_profile   = "aws-example-ec2-role"

      tags = {
        Layer = "Bastion"
      }
    }
Run Code Online (Sandbox Code Playgroud)

这就是我创建安全组的方式: terraform/aws/global/vpc/bastion_sg.tf

        module "bastion-sg" {
          source = "terraform-aws-modules/security-group/aws"
    
      name        = "Bastion"
      description = "Bastion example group"
      vpc_id      = "vpc-12345"
    
      ingress_with_cidr_blocks = [
        { …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 amazon-web-services terraform aws-security-group infrastructure-as-code

6
推荐指数
2
解决办法
7869
查看次数