没有负载均衡器的网站高可用性?

4 domain-name-system high-availability

我正在考虑更改通过 https api 提供服务的“高可用性”网站的选项。

目前的设置是:

  • 两个独立的 VM,来自不同的云提供商(AWS 和 RackSpace)
  • 一个 DNS 负载平衡器:这也是 HA 的用武之地,该服务监视两个 VM,如果其中一个 VM 不可用,它将所有 DNS 查询定向到另一个

如果负载平衡不是必需的,我们是否可以通过简单地将 DNS 服务器放在两台机器上,在 DNS 查询时只用自己的地址回复,而无需负载平衡器。在这种情况下,如果一个 VM 关闭,它将同时删除服务和指向该服务的 DNS 服务器,因此不会将客户端定向到关闭的服务器,是否正确?


为清楚起见编辑:

我们对我们目前拥有的不完美的“HA”感到满意,这个问题特别是关于我正在考虑的变化是否会让事情变得更糟。

Ian*_*osh 8

您问题的直接答案是肯定的,这会使情况变得更糟。

这是因为您的名称服务器之一没有响应将导致尝试通过失败的名称服务器解析的客户端始终出现解析延迟,而当前技术只会失败 +- 一半的客户端,直到您检测到 VM 已关闭 + TTL秒。

通常名称服务器会缓存 48 小时,因此在停机时间或名称服务器更新 + 48 小时的较短时间期间,您的用户将获得随机缓慢的体验。

除非您的 VM 停机检测很慢,否则您当前的实施会更好。在 VM 出现故障和您检测到它 + TTL 之间的时间段内,建议的解决方案实际上会更好。但我假设那段时间太短以至于可以忽略不计。