必须使用 CNAME 记录将域名与 RDS 数据库实例关联吗?

lee*_*wah 4 amazon-web-services amazon-rds amazon-route53

与 RDS 相关的 Route 53 官方 AWS Doc中,对此有特别说明:

您必须使用 CNAME 记录将域名与 Amazon RDS 数据库实例关联。Route 53 不支持为此目的使用其他类型的记录。

但是,我找不到为什么有这样的限制的解释,这似乎只适用于 RDS,而不适用于其他 AWS 服务(例如 S3 或 EC2)。有谁知道为什么?

Joh*_*ley 7

只有三种类型的 DNS 资源记录可能支持 RDS 等数据库。A、A-ALIAS 和 CNAME。

A 资源记录需要 IP 地址。将 IP 地址用于托管服务并不是一个好主意。最简单的原因是IP地址可以随时改变。

AWS RDS 不支持 A-ALIAS 资源记录。A-ALIAS 资源记录通常用于也指向根域 (example.com) 的 AWS 资源。RDS 不需要这种类型的记录。

剩下的唯一选项是 CNAME。这是建议用于 RDS 的 DNS 资源记录。

  • S3 可用于区域顶点。RDS 不能用于区域顶点 - 从技术上讲可以,但没有意义,因为 RDS 不会按照约定预期的方式在端口 80 或 443 上进行响应。我并不是说 AWS 不能支持 RDS 的 A-ALIAS。AWS 选择不这样做,因为没有必要。例如,负载均衡器动态增长和收缩。因此,负载均衡器的 IP 地址池会发生变化 - 有时非常快。A-ALIAS 是一个优点,因为这些更改会自动跟踪。 (2认同)
  • RDS 端点不会以类似的方式发生变化。RDS 不是特例 - 大多数 AWS 服务不支持 A-ALIAS。支持 A-ALIAS 的唯一服务是 ELB、CloudFront、S3、EB、API 网关、VPC 终端节点。 (2认同)