lib/aws-sdk-servicediscovery/client.rb in aws-sdk-servicediscovery-1.8.0 vs lib/aws-sdk-servicediscovery/client.rb in aws-sdk-servicediscovery-1.9.0
- old
+ new
@@ -213,26 +213,78 @@
super
end
# @!group API Operations
+ # Creates an HTTP namespace. Service instances that you register using
+ # an HTTP namespace can be discovered using a `DiscoverInstances`
+ # request but can't be discovered using DNS.
+ #
+ # For the current limit on the number of namespaces that you can create
+ # using the same AWS account, see [AWS Cloud Map Limits][1] in the *AWS
+ # Cloud Map Developer Guide*.
+ #
+ #
+ #
+ # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
+ #
+ # @option params [required, String] :name
+ # The name that you want to assign to this namespace.
+ #
+ # @option params [String] :creator_request_id
+ # A unique string that identifies the request and that allows failed
+ # `CreateHttpNamespace` requests to be retried without the risk of
+ # executing the operation twice. `CreatorRequestId` can be any unique
+ # string, for example, a date/time stamp.
+ #
+ # **A suitable default value is auto-generated.** You should normally
+ # not need to pass this option.**
+ #
+ # @option params [String] :description
+ # A description for the namespace.
+ #
+ # @return [Types::CreateHttpNamespaceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::CreateHttpNamespaceResponse#operation_id #operation_id} => String
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.create_http_namespace({
+ # name: "NamespaceName", # required
+ # creator_request_id: "ResourceId",
+ # description: "ResourceDescription",
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.operation_id #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateHttpNamespace AWS API Documentation
+ #
+ # @overload create_http_namespace(params = {})
+ # @param [Hash] params ({})
+ def create_http_namespace(params = {}, options = {})
+ req = build_request(:create_http_namespace, params)
+ req.send_request(options)
+ end
+
# Creates a private namespace based on DNS, which will be visible only
# inside a specified Amazon VPC. The namespace defines your service
# naming scheme. For example, if you name your namespace `example.com`
# and name your service `backend`, the resulting DNS name for the
# service will be `backend.example.com`. For the current limit on the
# number of namespaces that you can create using the same AWS account,
- # see [Limits on Auto Naming][1] in the *Route 53 Developer Guide*.
+ # see [AWS Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
#
#
#
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming
+ # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
#
# @option params [required, String] :name
# The name that you want to assign to this namespace. When you create a
- # namespace, Amazon Route 53 automatically creates a hosted zone that
- # has the same name as the namespace.
+ # private DNS namespace, AWS Cloud Map automatically creates an Amazon
+ # Route 53 private hosted zone that has the same name as the namespace.
#
# @option params [String] :creator_request_id
# A unique string that identifies the request and that allows failed
# `CreatePrivateDnsNamespace` requests to be retried without the risk of
# executing the operation twice. `CreatorRequestId` can be any unique
@@ -277,16 +329,16 @@
# Creates a public namespace based on DNS, which will be visible on the
# internet. The namespace defines your service naming scheme. For
# example, if you name your namespace `example.com` and name your
# service `backend`, the resulting DNS name for the service will be
# `backend.example.com`. For the current limit on the number of
- # namespaces that you can create using the same AWS account, see [Limits
- # on Auto Naming][1] in the *Route 53 Developer Guide*.
+ # namespaces that you can create using the same AWS account, see [AWS
+ # Cloud Map Limits][1] in the *AWS Cloud Map Developer Guide*.
#
#
#
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming
+ # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
#
# @option params [required, String] :name
# The name that you want to assign to this namespace.
#
# @option params [String] :creator_request_id
@@ -327,29 +379,43 @@
end
# Creates a service, which defines the configuration for the following
# entities:
#
- # * Up to three records (A, AAAA, and SRV) or one CNAME record
+ # * For public and private DNS namespaces, one of the following
+ # combinations of DNS records in Amazon Route 53:
#
+ # * A
+ #
+ # * AAAA
+ #
+ # * A and AAAA
+ #
+ # * SRV
+ #
+ # * CNAME
+ #
# * Optionally, a health check
#
# After you create the service, you can submit a RegisterInstance
- # request, and Amazon Route 53 uses the values in the configuration to
+ # request, and AWS Cloud Map uses the values in the configuration to
# create the specified entities.
#
# For the current limit on the number of instances that you can register
- # using the same namespace and using the same service, see [Limits on
- # Auto Naming][1] in the *Route 53 Developer Guide*.
+ # using the same namespace and using the same service, see [AWS Cloud
+ # Map Limits][1] in the *AWS Cloud Map Developer Guide*.
#
#
#
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming
+ # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
#
# @option params [required, String] :name
# The name that you want to assign to the service.
#
+ # @option params [String] :namespace_id
+ # The ID of the namespace that you want to use to create the service.
+ #
# @option params [String] :creator_request_id
# A unique string that identifies the request and that allows failed
# `CreateService` requests to be retried without the risk of executing
# the operation twice. `CreatorRequestId` can be any unique string, for
# example, a date/time stamp.
@@ -358,51 +424,61 @@
# not need to pass this option.**
#
# @option params [String] :description
# A description for the service.
#
- # @option params [required, Types::DnsConfig] :dns_config
- # A complex type that contains information about the records that you
- # want Route 53 to create when you register an instance.
+ # @option params [Types::DnsConfig] :dns_config
+ # A complex type that contains information about the Amazon Route 53
+ # records that you want AWS Cloud Map to create when you register an
+ # instance.
#
# @option params [Types::HealthCheckConfig] :health_check_config
# *Public DNS namespaces only.* A complex type that contains settings
- # for an optional health check. If you specify settings for a health
- # check, Route 53 associates the health check with all the records that
- # you specify in `DnsConfig`.
+ # for an optional Route 53 health check. If you specify settings for a
+ # health check, AWS Cloud Map associates the health check with all the
+ # Route 53 DNS records that you specify in `DnsConfig`.
#
- # For information about the charges for health checks, see [Route 53
- # Pricing][1].
+ # If you specify a health check configuration, you can specify either
+ # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
#
+ # For information about the charges for health checks, see [AWS Cloud
+ # Map Pricing][1].
#
#
- # [1]: http://aws.amazon.com/route53/pricing
#
+ # [1]: http://aws.amazon.com/cloud-map/pricing/
+ #
# @option params [Types::HealthCheckCustomConfig] :health_check_custom_config
+ # A complex type that contains information about an optional custom
+ # health check.
#
+ # If you specify a health check configuration, you can specify either
+ # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
+ #
# @return [Types::CreateServiceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::CreateServiceResponse#service #service} => Types::Service
#
# @example Request syntax with placeholder values
#
# resp = client.create_service({
# name: "ServiceName", # required
+ # namespace_id: "ResourceId",
# creator_request_id: "ResourceId",
# description: "ResourceDescription",
- # dns_config: { # required
- # namespace_id: "ResourceId", # required
+ # dns_config: {
+ # namespace_id: "ResourceId",
# routing_policy: "MULTIVALUE", # accepts MULTIVALUE, WEIGHTED
# dns_records: [ # required
# {
# type: "SRV", # required, accepts SRV, A, AAAA, CNAME
# ttl: 1, # required
# },
# ],
# },
# health_check_config: {
- # type: "HTTP", # accepts HTTP, HTTPS, TCP
+ # type: "HTTP", # required, accepts HTTP, HTTPS, TCP
# resource_path: "ResourcePath",
# failure_threshold: 1,
# },
# health_check_custom_config: {
# failure_threshold: 1,
@@ -412,10 +488,11 @@
# @example Response structure
#
# resp.service.id #=> String
# resp.service.arn #=> String
# resp.service.name #=> String
+ # resp.service.namespace_id #=> String
# resp.service.description #=> String
# resp.service.instance_count #=> Integer
# resp.service.dns_config.namespace_id #=> String
# resp.service.dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED"
# resp.service.dns_config.dns_records #=> Array
@@ -487,12 +564,12 @@
def delete_service(params = {}, options = {})
req = build_request(:delete_service, params)
req.send_request(options)
end
- # Deletes the records and the health check, if any, that Amazon Route 53
- # created for the specified instance.
+ # Deletes the Amazon Route 53 DNS records and health check, if any, that
+ # AWS Cloud Map created for the specified instance.
#
# @option params [required, String] :service_id
# The ID of the service that the instance is associated with.
#
# @option params [required, String] :instance_id
@@ -520,10 +597,69 @@
def deregister_instance(params = {}, options = {})
req = build_request(:deregister_instance, params)
req.send_request(options)
end
+ # Discovers registered instances for a specified namespace and service.
+ #
+ # @option params [required, String] :namespace_name
+ # The name of the namespace that you specified when you registered the
+ # instance.
+ #
+ # @option params [required, String] :service_name
+ # The name of the service that you specified when you registered the
+ # instance.
+ #
+ # @option params [Integer] :max_results
+ # The maximum number of instances that you want Cloud Map to return in
+ # the response to a `DiscoverInstances` request. If you don't specify a
+ # value for `MaxResults`, Cloud Map returns up to 100 instances.
+ #
+ # @option params [Hash<String,String>] :query_parameters
+ # A string map that contains attributes with values that you can use to
+ # filter instances by any custom attribute that you specified when you
+ # registered the instance. Only instances that match all the specified
+ # key/value pairs will be returned.
+ #
+ # @option params [String] :health_status
+ # The health status of the instances that you want to discover.
+ #
+ # @return [Types::DiscoverInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
+ #
+ # * {Types::DiscoverInstancesResponse#instances #instances} => Array<Types::HttpInstanceSummary>
+ #
+ # @example Request syntax with placeholder values
+ #
+ # resp = client.discover_instances({
+ # namespace_name: "NamespaceName", # required
+ # service_name: "ServiceName", # required
+ # max_results: 1,
+ # query_parameters: {
+ # "AttrKey" => "AttrValue",
+ # },
+ # health_status: "HEALTHY", # accepts HEALTHY, UNHEALTHY, ALL
+ # })
+ #
+ # @example Response structure
+ #
+ # resp.instances #=> Array
+ # resp.instances[0].instance_id #=> String
+ # resp.instances[0].namespace_name #=> String
+ # resp.instances[0].service_name #=> String
+ # resp.instances[0].health_status #=> String, one of "HEALTHY", "UNHEALTHY", "UNKNOWN"
+ # resp.instances[0].attributes #=> Hash
+ # resp.instances[0].attributes["AttrKey"] #=> String
+ #
+ # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/DiscoverInstances AWS API Documentation
+ #
+ # @overload discover_instances(params = {})
+ # @param [Hash] params ({})
+ def discover_instances(params = {}, options = {})
+ req = build_request(:discover_instances, params)
+ req.send_request(options)
+ end
+
# Gets information about a specified instance.
#
# @option params [required, String] :service_id
# The ID of the service that the instance is associated with.
#
@@ -570,22 +706,22 @@
#
# @option params [Array<String>] :instances
# An array that contains the IDs of all the instances that you want to
# get the health status for.
#
- # If you omit `Instances`, Amazon Route 53 returns the health status for
+ # If you omit `Instances`, AWS Cloud Map returns the health status for
# all the instances that are associated with the specified service.
#
# <note markdown="1"> To get the IDs for the instances that you've registered by using a
# specified service, submit a ListInstances request.
#
# </note>
#
# @option params [Integer] :max_results
- # The maximum number of instances that you want Route 53 to return in
- # the response to a `GetInstancesHealthStatus` request. If you don't
- # specify a value for `MaxResults`, Route 53 returns up to 100
+ # The maximum number of instances that you want AWS Cloud Map to return
+ # in the response to a `GetInstancesHealthStatus` request. If you don't
+ # specify a value for `MaxResults`, AWS Cloud Map returns up to 100
# instances.
#
# @option params [String] :next_token
# For the first `GetInstancesHealthStatus` request, omit this value.
#
@@ -641,14 +777,15 @@
# @example Response structure
#
# resp.namespace.id #=> String
# resp.namespace.arn #=> String
# resp.namespace.name #=> String
- # resp.namespace.type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE"
+ # resp.namespace.type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE", "HTTP"
# resp.namespace.description #=> String
# resp.namespace.service_count #=> Integer
# resp.namespace.properties.dns_properties.hosted_zone_id #=> String
+ # resp.namespace.properties.http_properties.http_name #=> String
# resp.namespace.create_date #=> Time
# resp.namespace.creator_request_id #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/GetNamespace AWS API Documentation
#
@@ -719,10 +856,11 @@
# @example Response structure
#
# resp.service.id #=> String
# resp.service.arn #=> String
# resp.service.name #=> String
+ # resp.service.namespace_id #=> String
# resp.service.description #=> String
# resp.service.instance_count #=> Integer
# resp.service.dns_config.namespace_id #=> String
# resp.service.dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED"
# resp.service.dns_config.dns_records #=> Array
@@ -757,14 +895,13 @@
# can submit another `ListInstances` request to get the next group of
# results. Specify the value of `NextToken` from the previous response
# in the next request.
#
# @option params [Integer] :max_results
- # The maximum number of instances that you want Amazon Route 53 to
- # return in the response to a `ListInstances` request. If you don't
- # specify a value for `MaxResults`, Route 53 returns up to 100
- # instances.
+ # The maximum number of instances that you want AWS Cloud Map to return
+ # in the response to a `ListInstances` request. If you don't specify a
+ # value for `MaxResults`, AWS Cloud Map returns up to 100 instances.
#
# @return [Types::ListInstancesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::ListInstancesResponse#instances #instances} => Array<Types::InstanceSummary>
# * {Types::ListInstancesResponse#next_token #next_token} => String
@@ -802,23 +939,22 @@
#
# If the response contains `NextToken`, submit another `ListNamespaces`
# request to get the next group of results. Specify the value of
# `NextToken` from the previous response in the next request.
#
- # <note markdown="1"> Route 53 gets `MaxResults` namespaces and then filters them based on
- # the specified criteria. It's possible that no namespaces in the first
- # `MaxResults` namespaces matched the specified criteria but that
+ # <note markdown="1"> AWS Cloud Map gets `MaxResults` namespaces and then filters them based
+ # on the specified criteria. It's possible that no namespaces in the
+ # first `MaxResults` namespaces matched the specified criteria but that
# subsequent groups of `MaxResults` namespaces do contain namespaces
# that match the criteria.
#
# </note>
#
# @option params [Integer] :max_results
- # The maximum number of namespaces that you want Amazon Route 53 to
- # return in the response to a `ListNamespaces` request. If you don't
- # specify a value for `MaxResults`, Route 53 returns up to 100
- # namespaces.
+ # The maximum number of namespaces that you want AWS Cloud Map to return
+ # in the response to a `ListNamespaces` request. If you don't specify a
+ # value for `MaxResults`, AWS Cloud Map returns up to 100 namespaces.
#
# @option params [Array<Types::NamespaceFilter>] :filters
# A complex type that contains specifications for the namespaces that
# you want to list.
#
@@ -848,11 +984,16 @@
#
# resp.namespaces #=> Array
# resp.namespaces[0].id #=> String
# resp.namespaces[0].arn #=> String
# resp.namespaces[0].name #=> String
- # resp.namespaces[0].type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE"
+ # resp.namespaces[0].type #=> String, one of "DNS_PUBLIC", "DNS_PRIVATE", "HTTP"
+ # resp.namespaces[0].description #=> String
+ # resp.namespaces[0].service_count #=> Integer
+ # resp.namespaces[0].properties.dns_properties.hosted_zone_id #=> String
+ # resp.namespaces[0].properties.http_properties.http_name #=> String
+ # resp.namespaces[0].create_date #=> Time
# resp.next_token #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListNamespaces AWS API Documentation
#
# @overload list_namespaces(params = {})
@@ -869,22 +1010,22 @@
#
# If the response contains `NextToken`, submit another `ListOperations`
# request to get the next group of results. Specify the value of
# `NextToken` from the previous response in the next request.
#
- # <note markdown="1"> Route 53 gets `MaxResults` operations and then filters them based on
- # the specified criteria. It's possible that no operations in the first
- # `MaxResults` operations matched the specified criteria but that
+ # <note markdown="1"> AWS Cloud Map gets `MaxResults` operations and then filters them based
+ # on the specified criteria. It's possible that no operations in the
+ # first `MaxResults` operations matched the specified criteria but that
# subsequent groups of `MaxResults` operations do contain operations
# that match the criteria.
#
# </note>
#
# @option params [Integer] :max_results
- # The maximum number of items that you want Amazon Route 53 to return in
+ # The maximum number of items that you want AWS Cloud Map to return in
# the response to a `ListOperations` request. If you don't specify a
- # value for `MaxResults`, Route 53 returns up to 100 operations.
+ # value for `MaxResults`, AWS Cloud Map returns up to 100 operations.
#
# @option params [Array<Types::OperationFilter>] :filters
# A complex type that contains specifications for the operations that
# you want to list, for example, operations that you started between a
# specified start date and end date.
@@ -935,22 +1076,22 @@
#
# If the response contains `NextToken`, submit another `ListServices`
# request to get the next group of results. Specify the value of
# `NextToken` from the previous response in the next request.
#
- # <note markdown="1"> Route 53 gets `MaxResults` services and then filters them based on the
- # specified criteria. It's possible that no services in the first
- # `MaxResults` services matched the specified criteria but that
+ # <note markdown="1"> AWS Cloud Map gets `MaxResults` services and then filters them based
+ # on the specified criteria. It's possible that no services in the
+ # first `MaxResults` services matched the specified criteria but that
# subsequent groups of `MaxResults` services do contain services that
# match the criteria.
#
# </note>
#
# @option params [Integer] :max_results
- # The maximum number of services that you want Amazon Route 53 to return
+ # The maximum number of services that you want AWS Cloud Map to return
# in the response to a `ListServices` request. If you don't specify a
- # value for `MaxResults`, Route 53 returns up to 100 services.
+ # value for `MaxResults`, AWS Cloud Map returns up to 100 services.
#
# @option params [Array<Types::ServiceFilter>] :filters
# A complex type that contains specifications for the namespaces that
# you want to list services for.
#
@@ -982,10 +1123,20 @@
# resp.services[0].id #=> String
# resp.services[0].arn #=> String
# resp.services[0].name #=> String
# resp.services[0].description #=> String
# resp.services[0].instance_count #=> Integer
+ # resp.services[0].dns_config.namespace_id #=> String
+ # resp.services[0].dns_config.routing_policy #=> String, one of "MULTIVALUE", "WEIGHTED"
+ # resp.services[0].dns_config.dns_records #=> Array
+ # resp.services[0].dns_config.dns_records[0].type #=> String, one of "SRV", "A", "AAAA", "CNAME"
+ # resp.services[0].dns_config.dns_records[0].ttl #=> Integer
+ # resp.services[0].health_check_config.type #=> String, one of "HTTP", "HTTPS", "TCP"
+ # resp.services[0].health_check_config.resource_path #=> String
+ # resp.services[0].health_check_config.failure_threshold #=> Integer
+ # resp.services[0].health_check_custom_config.failure_threshold #=> Integer
+ # resp.services[0].create_date #=> Time
# resp.next_token #=> String
#
# @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ListServices AWS API Documentation
#
# @overload list_services(params = {})
@@ -993,29 +1144,30 @@
def list_services(params = {}, options = {})
req = build_request(:list_services, params)
req.send_request(options)
end
- # Creates or updates one or more records and optionally a health check
- # based on the settings in a specified service. When you submit a
- # `RegisterInstance` request, Amazon Route 53 does the following:
+ # Creates or updates one or more records and, optionally, creates a
+ # health check based on the settings in a specified service. When you
+ # submit a `RegisterInstance` request, the following occurs:
#
- # * For each DNS record that you define in the service specified by
- # `ServiceId`, creates or updates a record in the hosted zone that is
- # associated with the corresponding namespace
+ # * For each DNS record that you define in the service that is specified
+ # by `ServiceId`, a record is created or updated in the hosted zone
+ # that is associated with the corresponding namespace.
#
- # * If the service includes `HealthCheckConfig`, creates or updates a
- # health check based on the settings in the health check configuration
+ # * If the service includes `HealthCheckConfig`, a health check is
+ # created based on the settings in the health check configuration.
#
- # * Associates the health check, if any, with each of the records
+ # * The health check, if any, is associated with each of the new or
+ # updated records.
#
# One `RegisterInstance` request must complete before you can submit
# another request and specify the same service ID and instance ID.
#
# For more information, see CreateService.
#
- # When Route 53 receives a DNS query for the specified DNS name, it
+ # When AWS Cloud Map receives a DNS query for the specified DNS name, it
# returns the applicable value:
#
# * **If the health check is healthy**\: returns all the records
#
# * **If the health check is unhealthy**\: returns the applicable value
@@ -1023,20 +1175,20 @@
#
# * **If you didn't specify a health check configuration**\: returns
# all the records
#
# For the current limit on the number of instances that you can register
- # using the same namespace and using the same service, see [Limits on
- # Auto Naming][1] in the *Route 53 Developer Guide*.
+ # using the same namespace and using the same service, see [AWS Cloud
+ # Map Limits][1] in the *AWS Cloud Map Developer Guide*.
#
#
#
- # [1]: http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DNSLimitations.html#limits-api-entities-autonaming
+ # [1]: http://docs.aws.amazon.com/cloud-map/latest/dg/cloud-map-limits.html
#
# @option params [required, String] :service_id
# The ID of the service that you want to use for settings for the
- # records and health check that Route 53 will create.
+ # instance.
#
# @option params [required, String] :instance_id
# An identifier that you want to associate with the instance. Note the
# following:
#
@@ -1048,13 +1200,14 @@
# * You can use this value to update an existing instance.
#
# * To register a new instance, you must specify a value that is unique
# among instances that you register by using the same service.
#
- # * If you specify an existing `InstanceId` and `ServiceId`, Route 53
- # updates the existing records. If there's also an existing health
- # check, Route 53 deletes the old health check and creates a new one.
+ # * If you specify an existing `InstanceId` and `ServiceId`, AWS Cloud
+ # Map updates the existing DNS records, if any. If there's also an
+ # existing health check, AWS Cloud Map deletes the old health check
+ # and creates a new one.
#
# <note markdown="1"> The health check isn't deleted immediately, so it will still appear
# for a while if you submit a `ListHealthChecks` request, for example.
#
# </note>
@@ -1084,33 +1237,43 @@
#
# **AWS\_ALIAS\_DNS\_NAME**
#
# ****
#
- # If you want Route 53 to create an alias record that routes traffic to
- # an Elastic Load Balancing load balancer, specify the DNS name that is
- # associated with the load balancer. For information about how to get
- # the DNS name, see "DNSName" in the topic [AliasTarget][1].
+ # If you want AWS Cloud Map to create an Amazon Route 53 alias record
+ # that routes traffic to an Elastic Load Balancing load balancer,
+ # specify the DNS name that is associated with the load balancer. For
+ # information about how to get the DNS name, see "DNSName" in the
+ # topic [AliasTarget][1] in the *Route 53 API Reference*.
#
# Note the following:
#
# * The configuration for the service that is specified by `ServiceId`
# must include settings for an A record, an AAAA record, or both.
#
# * In the service that is specified by `ServiceId`, the value of
# `RoutingPolicy` must be `WEIGHTED`.
#
# * If the service that is specified by `ServiceId` includes
- # `HealthCheckConfig` settings, Route 53 will create the health check,
- # but it won't associate the health check with the alias record.
+ # `HealthCheckConfig` settings, AWS Cloud Map will create the Route 53
+ # health check, but it won't associate the health check with the
+ # alias record.
#
# * Auto naming currently doesn't support creating alias records that
# route traffic to AWS resources other than ELB load balancers.
#
# * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
# values for any of the `AWS_INSTANCE` attributes.
#
+ # **AWS\_INIT\_HEALTH\_STATUS**
+ #
+ # If the service configuration includes `HealthCheckCustomConfig`, you
+ # can optionally use `AWS_INIT_HEALTH_STATUS` to specify the initial
+ # status of the custom health check, `HEALTHY` or `UNHEALTHY`. If you
+ # don't specify a value for `AWS_INIT_HEALTH_STATUS`, the initial
+ # status is `HEALTHY`.
+ #
# **AWS\_INSTANCE\_CNAME**
#
# If the service configuration includes a CNAME record, the domain name
# that you want Route 53 to return in response to DNS queries, for
# example, `example.com`.
@@ -1149,14 +1312,20 @@
# that you want Route 53 to send requests to.
#
# This value is required if you specified settings for an SRV record
# when you created the service.
#
+ # **Custom attributes**
#
+ # You can add up to 30 custom attributes. For each key-value pair, the
+ # maximum length of the attribute name is 255 characters, and the
+ # maximum length of the attribute value is 1,024 characters.
#
- # [1]: http://docs.aws.amazon.com/http:/docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
#
+ #
+ # [1]: http://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
+ #
# @return [Types::RegisterInstanceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
#
# * {Types::RegisterInstanceResponse#operation_id #operation_id} => String
#
# @example Request syntax with placeholder values
@@ -1181,15 +1350,30 @@
def register_instance(params = {}, options = {})
req = build_request(:register_instance, params)
req.send_request(options)
end
+ # Submits a request to change the health status of a custom health check
+ # to healthy or unhealthy.
+ #
+ # You can use `UpdateInstanceCustomHealthStatus` to change the status
+ # only for custom health checks, which you define using
+ # `HealthCheckCustomConfig` when you create a service. You can't use it
+ # to change the status for Route 53 health checks, which you define
+ # using `HealthCheckConfig`.
+ #
+ # For more information, see HealthCheckCustomConfig.
+ #
# @option params [required, String] :service_id
+ # The ID of the service that includes the configuration for the custom
+ # health check that you want to change the status for.
#
# @option params [required, String] :instance_id
+ # The ID of the instance that you want to change the health status for.
#
# @option params [required, String] :status
+ # The new status of the instance, `HEALTHY` or `UNHEALTHY`.
#
# @return [Struct] Returns an empty {Seahorse::Client::Response response}.
#
# @example Request syntax with placeholder values
#
@@ -1214,16 +1398,17 @@
#
# * Update the TTL setting for existing `DnsRecords` configurations
#
# * Add, update, or delete `HealthCheckConfig` for a specified service
#
- # You must specify all `DnsRecords` configurations (and, optionally,
- # `HealthCheckConfig`) that you want to appear in the updated service.
- # Any current configurations that don't appear in an `UpdateService`
- # request are deleted.
+ # For public and private DNS namespaces, you must specify all
+ # `DnsRecords` configurations (and, optionally, `HealthCheckConfig`)
+ # that you want to appear in the updated service. Any current
+ # configurations that don't appear in an `UpdateService` request are
+ # deleted.
#
- # When you update the TTL setting for a service, Amazon Route 53 also
+ # When you update the TTL setting for a service, AWS Cloud Map also
# updates the corresponding settings in all the records and health
# checks that were created by using the specified service.
#
# @option params [required, String] :id
# The ID of the service that you want to update.
@@ -1248,11 +1433,11 @@
# ttl: 1, # required
# },
# ],
# },
# health_check_config: {
- # type: "HTTP", # accepts HTTP, HTTPS, TCP
+ # type: "HTTP", # required, accepts HTTP, HTTPS, TCP
# resource_path: "ResourcePath",
# failure_threshold: 1,
# },
# },
# })
@@ -1281,10 +1466,10 @@
operation: config.api.operation(operation_name),
client: self,
params: params,
config: config)
context[:gem_name] = 'aws-sdk-servicediscovery'
- context[:gem_version] = '1.8.0'
+ context[:gem_version] = '1.9.0'
Seahorse::Client::Request.new(handlers, context)
end
# @api private
# @deprecated