将预先存在的静态(弹性)IP分配给EC2实例



假设我的AWS帐户上有一个现有的Elastic IP。

由于超出此问题范围的原因,此EIP不能(也不能(通过Terraform进行管理。

我知道我想将这个EIP(比如11.22.33.44(分配给我通过TF 创建的EC2实例

传统方法当然会通过TF 创建EIP和EC2实例

resource "aws_eip" "my_instance_eip" {
instance = "my_instance.id"
vpc      = true
}
resource "aws_eip_association" "my_eip_association" {
instance_id   = "my_instance.id"
allocation_id = "aws_eip.my_instance_eip.id"
}

然而,有没有办法让EC2通过TF知道它应该被分配为EIP,11.22.33.44,这在TF生命周期之外?

您可以使用aws_eip数据源获取现有eip的信息,然后在aws_eip_association:中使用该信息

data "aws_eip" "my_instance_eip" {
public_ip = "11.22.33.44"
}
resource "aws_eip_association" "my_eip_association" {
instance_id   = aws_instance.my_instance.id
allocation_id = data.aws_eip.my_instance_eip.id
}

相关内容

  • 没有找到相关文章

最新更新