boto3:如何获取CloudFormation堆栈实例的IP地址?

时间:2016-05-05 22:04:37

标签: amazon-web-services boto amazon-cloudformation boto3

我需要发现AWS CloudFormation堆栈中每个主机的私有IP地址。

CloudFormation API(请参阅bucket)似乎没有直接支持在给定堆栈ID的情况下提取节点。它甚至可能吗?

1 个答案:

答案 0 :(得分:2)

是的,这是可能的,但不是直截了当的。

  1. 获取您帐户/个人资料中的筹码列表
  2. 遍历列表并创建堆栈名称列表
  3. 获取每个堆栈(名称)的堆栈资源(describe_stack_resources)
  4. 找到资源[' LogicalResourceId'] ==' Ec2Instance'
  5. 从该资源中获取inst_id
  6. 拥有inst_id后,您可以使用boto3.resource获取其属性,包括private_ip(' ec2')
  7. 我已编码并经常使用它。如果过于频繁地调用CF,AWS可能会限制您的CF调用。