我正在将我们的应用程序从 Rackspace ta 专用服务器上的云服务器迁移。
我想让应用程序停机约 5 分钟,以将数据从云服务器复制到专用服务器,因此我不希望在复制数据后请求发送到旧服务器。
我想将我们的 DNS 记录指向新服务器,但 TTL 设置为 24 小时。我已将其更改为 300 秒。我是否需要等待 24 小时才能更新域指向的 IP/复制数据?
答案1
拥有域记录缓存副本的任何人都不会在 24 小时内更新它,因此,如果您的目的是最多有 5 分钟的不可用时间,您应该等到所有未完成的缓存都更新到不超过 5 分钟。
答案2
情况可能比这更糟——你必须等待 24 小时全部您的权威服务器已更新。更新的正常方式是,您对主服务器上的区域进行更改,然后每个辅助服务器在下次与主服务器签入时传输新的区域数据。签入频率由区域的 SOA 记录中的刷新间隔控制。因此,在最坏的情况下,您必须等待区域的刷新间隔 + 记录的 TTL。
您可以还必须等待这么长时间才能看到实际的记录更改。如果辅助服务器每 6 小时刷新一次,则 5 分钟的 TTL 不会有太大用处。因此,您可能还希望减少区域的刷新间隔,以便能够快速进行更改。
请注意,这可能不适用于您的设置。如果您的系统同时更新所有权威服务器,这不是问题(我不熟悉 Rackspace 的 DNS 设置)。但我建议查询全部逐个检查您的权威服务器(dig server.example.com @secondaryserver.example.com
),以确保在开始 24 小时倒计时之前它们具有新的 TTL。
答案3
是的,你应该等待。当然,即使这样也不能保证每个人都会遵守 TTL。
答案4
除了其他答案之外,您还可以使用https://www.whatsmydns.net/几乎实时地检查你的 DNS 记录是如何传播的。