You are viewing documentation for version 3 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: Aws::ServiceDiscovery::Types::DnsConfig

Inherits:
Struct
  • Object
show all
Defined in:
gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb

Overview

Note:

When making an API call, you may pass DnsConfig data as a hash:

{
  namespace_id: "ResourceId", # required
  routing_policy: "MULTIVALUE", # accepts MULTIVALUE, WEIGHTED
  dns_records: [ # required
    {
      type: "SRV", # required, accepts SRV, A, AAAA, CNAME
      ttl: 1, # required
    },
  ],
}

A complex type that contains information about the records that you want Amazon Route 53 to create when you register an instance.

Instance Attribute Summary collapse

Instance Attribute Details

#dns_recordsArray<Types::DnsRecord>

An array that contains one DnsRecord object for each record that you want Route 53 to create when you register an instance.

Returns:



374
375
376
377
378
379
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 374

class DnsConfig < Struct.new(
  :namespace_id,
  :routing_policy,
  :dns_records)
  include Aws::Structure
end

#namespace_idString

The ID of the namespace to use for DNS configuration.

Returns:

  • (String)


374
375
376
377
378
379
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 374

class DnsConfig < Struct.new(
  :namespace_id,
  :routing_policy,
  :dns_records)
  include Aws::Structure
end

#routing_policyString

The routing policy that you want to apply to all records that Route 53 creates when you register an instance and specify this service.

If you want to use this service to register instances that create alias records, specify WEIGHTED for the routing policy.

You can specify the following values:

MULTIVALUE

If you define a health check for the service and the health check is healthy, Route 53 returns the applicable value for up to eight instances.

For example, suppose the service includes configurations for one A record and a health check, and you use the service to register 10 instances. Route 53 responds to DNS queries with IP addresses for up to eight healthy instances. If fewer than eight instances are healthy, Route 53 responds to every DNS query with the IP addresses for all of the healthy instances.

If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the values for up to eight instances.

For more information about the multivalue routing policy, see Multivalue Answer Routing in the Route 53 Developer Guide.

WEIGHTED

Route 53 returns the applicable value from one randomly selected instance from among the instances that you registered using the same service. Currently, all records have the same weight, so you can't route more or less traffic to any instances.

For example, suppose the service includes configurations for one A record and a health check, and you use the service to register 10 instances. Route 53 responds to DNS queries with the IP address for one randomly selected instance from among the healthy instances. If no instances are healthy, Route 53 responds to DNS queries as if all of the instances were healthy.

If you don't define a health check for the service, Route 53 assumes that all instances are healthy and returns the applicable value for one randomly selected instance.

For more information about the weighted routing policy, see Weighted Routing in the Route 53 Developer Guide.

Returns:

  • (String)


374
375
376
377
378
379
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 374

class DnsConfig < Struct.new(
  :namespace_id,
  :routing_policy,
  :dns_records)
  include Aws::Structure
end