为AWS路线53上的竞价型实例创建记录集

时间:2019-08-01 15:24:47

标签: amazon-web-services amazon-route53

是否可以使用路由53为现场实例创建记录集?

我已经创建了一个舰队现场请求,并且希望能够在route53中创建一个A名称而不使用弹性IP。

该功能可能吗?因为我知道实例关闭时将为其分配新的IP。

2 个答案:

答案 0 :(得分:1)

Spot队列和Spot请求都可以使用Launch Templates。在启动模板中,您可以分配竞价型实例角色,这些角色可以让您修改Route 53区域。 在模板中,使用用户数据功能来编写在实例启动期间执行的脚本。 该脚本可以获取实例的IP地址。

示例:curl http://169.254.169.254/latest/meta-data/local-ipv4代表私有IP地址或curl http://169.254.169.254/latest/meta-data/public-ipv4代表公共IP地址。

然后可以使用AWS Cli在A记录中更新此IP地址。

答案 1 :(得分:1)

我可以想到两种方法来完成此任务:

  1. 您可以为Spot实例配置UserData的{​​{1}}选项,以在每次启动时将其注册到Route53。实例可以通过检查以下端点来获取其分配的公共IP:Launch Template。为此,您需要向EC2实例添加Route53写入权限。 Here is the Launch Template documentation
  2. 当EC2实例更改其状态时,使用http://169.254.169.254/latest/meta-data/public-ipv4Cloudwatch Events更新DNS记录。您可以配置Lambda来接收对EC2状态更改的更改,并触发一个对它们作出反应的CloudWatch函数。例如,实例终止时,您可以将其从记录集中删除,并在实例从Lambdapending时添加一个新实例。 Check this AWS Blog Post,以获取有关如何执行此操作的更多信息。

我希望对您有帮助