AWS::ServiceDiscovery::Service DnsRecord
一个复杂类型,它包含有关您希望 AWS Cloud Map 在您注册实例时创建的 Route 53 DNS 记录的信息。
语法
要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:
属性
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
指定A
或AAAA
。可以在注册实例时指定其他设置,例如 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
请记下有关这些值的以下内容:
-
priority
和weight
的值都设置为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
-
另请参阅
-
AWS Cloud Map API 参考中的 DnsRecord