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

Class: Aws::ServiceDiscovery::Types::ServiceChange

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 ServiceChange data as a hash:

{
  description: "ResourceDescription",
  dns_config: { # required
    dns_records: [ # required
      {
        type: "SRV", # required, accepts SRV, A, AAAA, CNAME
        ttl: 1, # required
      },
    ],
  },
  health_check_config: {
    type: "HTTP", # required, accepts HTTP, HTTPS, TCP
    resource_path: "ResourcePath",
    failure_threshold: 1,
  },
}

A complex type that contains changes to an existing service.

Instance Attribute Summary collapse

Instance Attribute Details

#descriptionString

A description for the service.

Returns:

  • (String)


2038
2039
2040
2041
2042
2043
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 2038

class ServiceChange < Struct.new(
  :description,
  :dns_config,
  :health_check_config)
  include Aws::Structure
end

#dns_configTypes::DnsConfigChange

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



2038
2039
2040
2041
2042
2043
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 2038

class ServiceChange < Struct.new(
  :description,
  :dns_config,
  :health_check_config)
  include Aws::Structure
end

#health_check_configTypes::HealthCheckConfig

Public DNS namespaces only. A complex type that contains settings for an optional health check. If you specify settings for a health check, Amazon Route 53 associates the health check with all the records that you specify in DnsConfig.

A and AAAA records

If DnsConfig includes configurations for both A and AAAA records, Route 53 creates a health check that uses the IPv4 address to check the health of the resource. If the endpoint that is specified by the IPv4 address is unhealthy, Route 53 considers both the A and AAAA records to be unhealthy.

CNAME records

You can't specify settings for HealthCheckConfig when the DNSConfig includes CNAME for the value of Type. If you do, the CreateService request will fail with an InvalidInput error.

Request interval

The health check uses 30 seconds as the request interval. This is the number of seconds between the time that each Route 53 health checker gets a response from your endpoint and the time that it sends the next health check request. A health checker in each data center around the world sends your endpoint a health check request every 30 seconds. On average, your endpoint receives a health check request about every two seconds. Health checkers in different data centers don't coordinate with one another, so you'll sometimes see several requests per second followed by a few seconds with no health checks at all.

Health checking regions

Health checkers perform checks from all Route 53 health-checking regions. For a list of the current regions, see Regions.

Alias records

When you register an instance, if you include the AWS_ALIAS_DNS_NAME attribute, Route 53 creates an alias record. Note the following:

  • Route 53 automatically sets EvaluateTargetHealth to true for alias records. When EvaluateTargetHealth is true, the alias record inherits the health of the referenced AWS resource. such as an ELB load balancer. For more information, see EvaluateTargetHealth.

  • If you include HealthCheckConfig and then use the service to register an instance that creates an alias record, Route 53 doesn't create the health check.

For information about the charges for health checks, see Route 53 Pricing.



2038
2039
2040
2041
2042
2043
# File 'gems/aws-sdk-servicediscovery/lib/aws-sdk-servicediscovery/types.rb', line 2038

class ServiceChange < Struct.new(
  :description,
  :dns_config,
  :health_check_config)
  include Aws::Structure
end