我正在为我的域创建 Amazon Route 53 记录,我需要选择路由策略。我应该使用简单的路由策略还是多值应答路由策略?
简短描述
对于仅需要标准 DNS 记录且不需要加权路由或延迟路由等特殊选项的流量,请使用简单路由策略。例如,当您需要将流量路由到单个资源时,请使用简单路由。您不能在简单路由中使用具有相同名称和类型的多条记录。但是,一条记录可以包含多个值(例如 IP 地址)。
使用多值应答路由策略有助于在多个资源之间分发 DNS 响应。例如,当您要将路由记录与 Route 53 运行状况检查关联时,请使用多值应答路由。例如,当您需要为一个 DNS 查询返回多个值并将流量路由到多个 IP 地址时,请使用多值应答路由。
解决方法
简单路由
在以下情况下,请使用简单路由策略:
- 只为每个名称和类型创建一条基本记录
- 将流量路由到单个资源(例如网站的 Web 服务器)
- 将流量路由到具有多个值的单条记录(例如指定多个 IP 地址的 A 记录)
**注意:**Route 53 以随机顺序将值返回给客户端,您无法通过简单的路由策略加权或以其他方式确定顺序。
在以下示例中,域的所有记录都创建在一个资源记录集中:
| | | |
---|
名称 | 类型 | 值 | TTL |
www.example.com | A 记录 | 192.0.2.1 | 60 |
| | 198.51.100.1 | 60 |
| | 203.0.113.1 | 60 |
当客户端发出 DNS 请求时,Route 53 会将列出的三个 IP 地址全部返回。
**注意:**您无法在简单路由策略中附加运行状况检查。相反,无论 IP 地址的状态如何,Route 53 都会将所有值返回给客户端。当返回运行状况不佳的 IP 地址时,用户的客户端会尝试连接到该运行状况不佳的 IP,而用户会遇到停机。
多值答案路由
在以下情况下,请使用多值应答路由策略:
- 创建多条具有相同名称和类型的记录
- 将流量路由到多个资源
- 将 Route 53 运行状况检查与记录关联
当客户端使用多值应答路由发出 DNS 请求时,Route 53 会使用为特定域名随机选择的最多八条运行状况正常的记录来响应 DNS 查询。这些记录都可以附加到 Route 53 运行状况检查中,这有助于防止客户端收到无法访问的 DNS 响应。
多值应答路由可在多个 IP 地址之间分发 DNS 响应。如果 Web 服务器在解析程序缓存响应后变得不可用,则客户端可以尝试响应中的最多八个其他 IP 地址,以避免停机。
**注意:**多值应答路由不能替代 Elastic Load Balancing (ELB)。Route 53 随机选择任意八条记录。当您多次对域名执行 dig(在 Linux 上)或 nslookup(在 Windows 上)时,您可能会注意到 IP 地址会进行轮换。此轮换可提高可用性,并提供一定程度的负载均衡功能性。您的操作系统将对缓存的响应(而不是 Route 53)执行此轮询 DNS。
如果要在多值应答记录集中输入多个值,则必须创建具有相同名称的新资源记录,然后分别输入每个值。如果不执行此操作,则会收到以下错误:Getting error: The record set could not be saved because: - Each Multivalue answer record can have only one value(出现错误:无法保存记录集,原因是:- 每条多值应答记录只能有一个值)。(Route 53 从多条记录返回一个答案。)。
以下示例中有多条 A 记录,每条记录具有不同的值:
| | | | | |
---|
名称 | 类型 | 值 | TTL | 集 ID | 运行状况检查 |
www.example.com | A 记录 | 192.0.2.2 | 60 | Web1 | A |
www.example.com | A 记录 | 198.51.100.2 | 60 | Web2 | B |
www.example.com | A 记录 | 203.0.113.2 | 60 | Web3 | C |
**注意:**如果创建两个或更多具有相同名称和类型的多值应答路由记录,然后为 TTL 指定不同的值,则 Route 53 会将所有记录的 TTL 值更改为最近指定的值。
相关信息
change-resource-record-sets
记录配额