3

我正在创建一个 Cloudformation 模板,该模板将分配 ID 和现有弹性 IP 地址作为输入参数。我的代码需要与分配 ID 关联的实际 IP 地址。

如何使用模板中 EIP 的分配 ID 获取 IP 地址?

如果这是不可能的,我们可以走另一条路吗?也就是把输入参数改成已有EIP的IP地址,以某种方式获取EIP关联的Allocation ID?

我需要模板中 EIP 的 IP 和分配 ID,并且我试图避免将两者都作为参数传入,而是从另一个中确定一个。

4

1 回答 1

6

如果您在另一个堆栈中创建 EIP,您可以导出分配 ID 和 IP 地址,并将它们导入到您的另一个模板中。

创建 EIP:

Resources:
  MyEIP:
    Type: AWS::EC2::EIP
Outputs:  
  MyEIPAllocationId:
    Value: !GetAtt MyEIP.AllocationId
    Export:
      Name: "MyEIP::AllocationId"
  MyEIPAddress:
    Value: !Ref MyEIP
    Export:
      Name: "MyEIP::Address"

然后在您的其他模板中,您可以像这样使用它们:

!ImportValue MyEIP::AllocationId
!ImportValue MyEIP::Address
于 2018-02-18T01:32:11.413 回答