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
When making an API call, you may pass DnsRecord data as a hash:
{
type: "SRV", # required, accepts SRV, A, AAAA, CNAME
ttl: 1, # required
}
A complex type that contains information about the Route 53 DNS records that you want AWS 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 AWS resource that an alias record routes traffic to. If you include the ‘AWS_ALIAS_DNS_NAME` attribute when you submit a
- RegisterInstance][1
-
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
829 830 831 832 833 834 |
# File 'lib/aws-sdk-servicediscovery/types.rb', line 829 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` and `AAAA`
-
‘SRV`
-
‘CNAME`
If you want AWS 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`
</p> <p>Route 53 returns the IP address of the resource in IPv4 format, such as 192.0.2.44.</p> <p> AAAA </p> <p>Route 53 returns the IP address of the resource in IPv6 format, such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.</p> <p> CNAME </p> <p>Route 53 returns the domain name of the resource, such as www.example.com. Note the following:</p> <ul> <li> <p>You specify the domain name that you want to route traffic to when you register an instance. For more information, see <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html#cloudmap-RegisterInstance-request-Attributes">Attributes</a> in the topic <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html">RegisterInstance</a>.</p> </li> <li> <p>You must specify WEIGHTED for the value of RoutingPolicy.</p> </li> <li> <p>You can't specify both CNAME for Type and settings for HealthCheckConfig. If you do, the request will fail with an InvalidInput error.</p> </li> </ul> <p> SRV </p> <p>Route 53 returns the value for an SRV record. The value for an SRV record uses the following values:</p> <p> priority weight port service-hostname </p> <p>Note the following about the values:</p> <ul> <li> <p>The values of priority and weight are both set to 1 and can't be changed. </p> </li> <li> <p>The value of port comes from the value that you specify for the AWS_INSTANCE_PORT attribute when you submit a <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html">RegisterInstance</a> request. </p> </li> <li> <p>The value of service-hostname is a concatenation of the following values:</p> <ul> <li> <p>The value that you specify for InstanceId when you register an instance.</p> </li> <li> <p>The name of the service.</p> </li> <li> <p>The name of the namespace. </p> </li> </ul> <p>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:</p> <p> test.backend.example.com </p> </li> </ul> <p>If you specify settings for an SRV record, note the following:</p> <ul> <li> <p>If you specify values for AWS_INSTANCE_IPV4, AWS_INSTANCE_IPV6, or both in the RegisterInstance request, AWS 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.</p> </li> <li> <p>If you're using a system that requires a specific SRV format, such as HAProxy, see the <a href="https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html#cloudmap-CreateService-request-Name">Name</a> element in the documentation about CreateService for information about how to specify the correct name format.</p> </li> </ul> </b></p></b></p></b>
[1]: docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
829 830 831 832 833 834 |
# File 'lib/aws-sdk-servicediscovery/types.rb', line 829 class DnsRecord < Struct.new( :type, :ttl) SENSITIVE = [] include Aws::Structure end |