AWS::ServiceDiscovery::Service DnsRecord - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::ServiceDiscovery::Service DnsRecord

一个复杂类型,它包含有关您希望 AWS Cloud Map 在您注册实例时创建的 Route 53 DNS 记录的信息。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "TTL" : Double, "Type" : String }

YAML

TTL: Double Type: String

属性

TTL

您希望 DNS 解析程序缓存此记录的设置的时间量 (以秒为单位)。

注意

别名记录不包含 TTL,因为 Route 53 使用别名记录将流量路由到的 AWS 资源的 TTL。如果在提交 RegisterInstance 请求时包含 AWS_ALIAS_DNS_NAME 属性,则将忽略 TTL 值。始终为服务指定 TTL;您可以使用服务来注册创建别名或非别名记录的实例。

必需:是

类型:双精度

Update requires: No interruption

Type

资源的类型,指示 Route 53 为响应 DNS 查询而返回的值的类型。您可以按以下组合指定 Type 的值:

  • A

  • AAAA

  • A 和 AAAA

  • SRV

  • 别名记录

如果您希望 AWS Cloud Map 在您注册实例时创建 Route 53 别名记录,请为 Type 指定 AAAAA

可以在注册实例时指定其他设置,例如 A 和 AAAA 记录的 IP 地址。有关更多信息,请参阅 RegisterInstance

支持下列值:

A

Route 53 以 IPv4 格式返回资源的 IP 地址,例如 192.0.2.44。

AAAA

Route 53 以 IPv6 格式返回资源的 IP 地址,例如 2001:0db8:85a3:0000:0000:abcd:0001:2345。

别名记录

Route 53 返回资源的域名,例如 www.example.com。请注意以下几点:

  • 您可以指定在注册实例时要将流量路由到的域名。有关更多信息,请参阅 RegisterInstance 主题中的属性

  • 您必须指定 WEIGHTED 作为 RoutingPolicy 的值。

  • 您不能既为 Type 指定 CNAME,又指定 HealthCheckConfig 的设置。如果您这样做,则请求将失败,并出现 InvalidInput 错误。

SRV

Route 53 返回 SRV 记录的值。SRV 记录的值使用以下值:

priority weight port service-hostname

请记下有关这些值的以下内容:

  • priorityweight 的值都设置为 1,且无法更改。

  • port 的值来自在您提交 RegisterInstance 请求时为 AWS_INSTANCE_PORT 属性指定的值。

  • service-hostname 的值可以是以下值的联接:

    • 在注册实例时为 InstanceId 指定的值。

    • 服务的名称。

    • 命名空间的名称。

    例如,如果 InstanceId 的值为 test、服务的名称为 backend 且命名空间的名称为 example.com,则 service-hostname 的值为:

    test.backend.example.com

如果您为 SRV 记录指定了设置并在 RegisterInstance 请求中为 AWS_INSTANCE_IPV4 和/或 AWS_INSTANCE_IPV6 指定了值,则 AWS Cloud Map 将自动创建与 SRV 记录中的 service-hostname 的值同名的 A 和/或 AAAA 记录。可以忽略这些记录。

必需:是

类型:字符串

允许的值A | AAAA | CNAME | SRV

Update requires: No interruption

另请参阅