有没有办法将弹性 ip 分配给刚刚使用亚马逊 aws 中的云形成脚本制作的 ec2 实例?我找不到任何关于如何通过标签“获取弹性 ip”的简单示例,也找不到任何关于这是否可行的 api 参考。我需要首先通过它的标签获取弹性 ip,然后将其分配给 lambda 中的现有实例。
答案 0 :(得分:1)
在 AWS CLI(我使用的是 2.2.4)中,我可以通过名称标签获取 EIP:
aws ec2 describe-addresses --filters "Name=tag:Name,Values=some-tag-here"
我的标签包含键“名称”。
对于 Python/Boto3,您可以运行如下代码:
import boto3
client = boto3.client('ec2')
response=client.describe_addresses(...)
其中 describe_addresses
的参数定义为 in these docs。
答案 1 :(得分:0)
来自AWS::EC2::EIP - AWS CloudFormation:
react-svg-main
最简单的方法是将其包含在启动 EC2 实例的同一个模板中。然后 MyEIP:
Type: AWS::EC2::EIP
Properties:
InstanceId: !Ref Logical name of an AWS::EC2::Instance resource
可以引用模板中其他地方的实例。如果要在单独模板中分配弹性 IP 地址,则需要提供对之前启动的 EC2 实例的引用。