假设我有网站域名http://myawesomesite.com,首先我在美国东部地区设置了一个 ELB,其中有 2 个实例运行我的应用程序。
随着网站变得越来越棒,我想开始更快地为我的应用程序提供服务,我在 US-WEST 组中设置了实例,并使用了 ELB。我如何将流量转发到最近的数据中心?
答案1
您可以使用 Amazon Route 53 来实现这一点,它现在支持基于多区域延迟的路由。
答案2
您无法使用 ELB 执行此操作。请考虑使用提供 GSLB(全局服务器负载平衡)或类似服务的 DNS 提供商。
话虽如此,您不需要 GSLB。当您在 us-east-1 的多个可用区中拥有数百台服务器时,您可以开始考虑 GSLB。哦,还有收入。
答案3
要使用 Route53 执行 GSLB,您需要:
- 将您的 ELB 放在同一个帐户中
- 将您的托管区域与 ELB 放在同一个账户中
- 在 route53 中创建别名记录,选择 IPv4,然后从资源下拉列表中选择 ELB 以添加主资源和辅助资源(用于故障转移场景)
然后如果需要的话,在其上添加延迟记录,所有记录都指向同一个关键是选择 ipv4 作为别名(对我来说并不明显)
我的问题是,由于我的 ELB 位于不同的帐户中,并且 ELB 使用主机名/CNAME 记录,因此 GSLB 无法将 LB 池记录指向 CNAMES,只能指向 AWS 不希望您指向的 A 记录。
https://www.rfc-editor.org/rfc/rfc1034第 3.6.2 节