我有一个简单的问题,希望有一个简单的解决方案。
我有一个私有的 Route53 区域,该区域仅在 VPC 内可用。我想要某种动态 DNS,这样当服务器启动时,它们就会在 Route53 区域中注册自己。
但是,我无法想出一个干净的解决方案。主机名和域已由 cloud-init 和 user-data 正确设置,但我想要一个能够实现以下目标的解决方案:
在 route53 区域内注册主机名:现在,这并不太难,因为 /etc/hostname 中的主机名已经正确。我只需要获取此值并更新 dns 记录。不是太花哨。
但是,我缺少的是如何当服务器关闭时清理 Route53。我说的是以下场景:
- 服务器已正确关闭:将仅在关机时运行的脚本放在哪里最好?
- 突然 IP 更改:可能是网络中断,我们可能通过 DHCP 收到了新的 IP 地址。是否可以以某种方式将我的脚本与 DHCP 集成?
- 服务器断电:可能是 AZ 区域出现问题,导致断电。也许实例被破坏了?我不希望这些服务器的 DNS 记录留在我的 DNS 区域中。几个小时后,非活动服务器应从 DNS 中删除。
我最沮丧的是 DHCP + 动态 DNS 已经解决了大部分问题。但是,通过 DHCP 进行的动态更新不适用于私有 Route53 区域。
有什么建议么?
答案1
请求功能请求以在终止时清理与实例绑定的 Route53 记录。我还设想了某种 DNS 监视服务器,该服务器可能会对 DNS 中列出的所有服务器执行 ping 操作,如果某个服务器在 5 次 ping 操作后没有响应,则从 Route53 中删除记录。