Class: Aws::ServiceDiscovery::Types::DnsRecord
- Inherits:
-
Struct
- Object
- Struct
- Aws::ServiceDiscovery::Types::DnsRecord
- Includes:
- Aws::Structure
- Defined in:
- lib/aws-sdk-servicediscovery/types.rb
Overview
A complex type that contains information about the Route 53 DNS records that you want Cloud Map to create when you register an instance.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#ttl ⇒ Integer
The amount of time, in seconds, that you want DNS resolvers to cache the settings for this record.
-
#type ⇒ String
The type of the resource, which indicates the type of value that Route 53 returns in response to DNS queries.
Instance Attribute Details
#ttl ⇒ Integer
The amount of time, in seconds, that you want DNS resolvers to cache the settings for this record.
<note markdown=“1”> Alias records don’t include a TTL because Route 53 uses the TTL for the Amazon Web Services resource that an alias record routes traffic to. If you include the ‘AWS_ALIAS_DNS_NAME` attribute when you submit a [RegisterInstance] request, the `TTL` value is ignored. Always specify a TTL for the service; you can use a service to register instances that create either alias or non-alias records.
</note>
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
809 810 811 812 813 814 |
# File 'lib/aws-sdk-servicediscovery/types.rb', line 809 class DnsRecord < Struct.new( :type, :ttl) SENSITIVE = [] include Aws::Structure end |
#type ⇒ String
The type of the resource, which indicates the type of value that Route 53 returns in response to DNS queries. You can specify values for ‘Type` in the following combinations:
-
A
-
AAAA
-
A
andAAAA
-
SRV
-
CNAME
If you want Cloud Map to create a Route 53 alias record when you register an instance, specify ‘A` or `AAAA` for `Type`.
You specify other settings, such as the IP address for ‘A` and `AAAA` records, when you register an instance. For more information, see [RegisterInstance].
The following values are supported:
A
: Route 53 returns the IP address of the resource in IPv4 format,
such as 192.0.2.44.
AAAA
: Route 53 returns the IP address of the resource in IPv6 format,
such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
CNAME
: Route 53 returns the domain name of the resource, such as
www.example.com. Note the following:
* You specify the domain name that you want to route traffic to
when you register an instance. For more information, see
[Attributes][2] in the topic [RegisterInstance][1].
* You must specify `WEIGHTED` for the value of `RoutingPolicy`.
* You can't specify both `CNAME` for `Type` and settings for
`HealthCheckConfig`. If you do, the request will fail with an
`InvalidInput` error.
SRV
: Route 53 returns the value for an ‘SRV` record. The value for an
`SRV` record uses the following values:
`priority weight port service-hostname`
Note the following about the values:
* The values of `priority` and `weight` are both set to `1` and
can't be changed.
* The value of `port` comes from the value that you specify for
the `AWS_INSTANCE_PORT` attribute when you submit a
[RegisterInstance][1] request.
* The value of `service-hostname` is a concatenation of the
following values:
* The value that you specify for `InstanceId` when you register
an instance.
* The name of the service.
* The name of the namespace.
For example, if the value of `InstanceId` is `test`, the name of
the service is `backend`, and the name of the namespace is
`example.com`, the value of `service-hostname` is the following:
`test.backend.example.com`
If you specify settings for an `SRV` record, note the following:
* If you specify values for `AWS_INSTANCE_IPV4`,
`AWS_INSTANCE_IPV6`, or both in the `RegisterInstance` request,
Cloud Map automatically creates `A` and/or `AAAA` records that
have the same name as the value of `service-hostname` in the
`SRV` record. You can ignore these records.
* If you're using a system that requires a specific `SRV` format,
such as HAProxy, see the [Name][3] element in the documentation
about `CreateService` for information about how to specify the
correct name format.
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html [2]: docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html#cloudmap-RegisterInstance-request-Attributes [3]: docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html#cloudmap-CreateService-request-Name
809 810 811 812 813 814 |
# File 'lib/aws-sdk-servicediscovery/types.rb', line 809 class DnsRecord < Struct.new( :type, :ttl) SENSITIVE = [] include Aws::Structure end |