aws-sdk-servicediscovery 1.30.0 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -69,6 +69,7 @@ module Aws::ServiceDiscovery
69
69
  HttpProperties = Shapes::StructureShape.new(name: 'HttpProperties')
70
70
  Instance = Shapes::StructureShape.new(name: 'Instance')
71
71
  InstanceHealthStatusMap = Shapes::MapShape.new(name: 'InstanceHealthStatusMap')
72
+ InstanceId = Shapes::StringShape.new(name: 'InstanceId')
72
73
  InstanceIdList = Shapes::ListShape.new(name: 'InstanceIdList')
73
74
  InstanceNotFound = Shapes::StructureShape.new(name: 'InstanceNotFound')
74
75
  InstanceSummary = Shapes::StructureShape.new(name: 'InstanceSummary')
@@ -92,6 +93,9 @@ module Aws::ServiceDiscovery
92
93
  NamespaceFilterName = Shapes::StringShape.new(name: 'NamespaceFilterName')
93
94
  NamespaceFilters = Shapes::ListShape.new(name: 'NamespaceFilters')
94
95
  NamespaceName = Shapes::StringShape.new(name: 'NamespaceName')
96
+ NamespaceNameHttp = Shapes::StringShape.new(name: 'NamespaceNameHttp')
97
+ NamespaceNamePrivate = Shapes::StringShape.new(name: 'NamespaceNamePrivate')
98
+ NamespaceNamePublic = Shapes::StringShape.new(name: 'NamespaceNamePublic')
95
99
  NamespaceNotFound = Shapes::StructureShape.new(name: 'NamespaceNotFound')
96
100
  NamespaceProperties = Shapes::StructureShape.new(name: 'NamespaceProperties')
97
101
  NamespaceSummariesList = Shapes::ListShape.new(name: 'NamespaceSummariesList')
@@ -133,6 +137,8 @@ module Aws::ServiceDiscovery
133
137
  ServiceNotFound = Shapes::StructureShape.new(name: 'ServiceNotFound')
134
138
  ServiceSummariesList = Shapes::ListShape.new(name: 'ServiceSummariesList')
135
139
  ServiceSummary = Shapes::StructureShape.new(name: 'ServiceSummary')
140
+ ServiceType = Shapes::StringShape.new(name: 'ServiceType')
141
+ ServiceTypeOption = Shapes::StringShape.new(name: 'ServiceTypeOption')
136
142
  Tag = Shapes::StructureShape.new(name: 'Tag')
137
143
  TagKey = Shapes::StringShape.new(name: 'TagKey')
138
144
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
@@ -151,7 +157,7 @@ module Aws::ServiceDiscovery
151
157
  Attributes.key = Shapes::ShapeRef.new(shape: AttrKey)
152
158
  Attributes.value = Shapes::ShapeRef.new(shape: AttrValue)
153
159
 
154
- CreateHttpNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "Name"))
160
+ CreateHttpNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceNameHttp, required: true, location_name: "Name"))
155
161
  CreateHttpNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
156
162
  CreateHttpNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
157
163
  CreateHttpNamespaceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
@@ -160,7 +166,7 @@ module Aws::ServiceDiscovery
160
166
  CreateHttpNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
161
167
  CreateHttpNamespaceResponse.struct_class = Types::CreateHttpNamespaceResponse
162
168
 
163
- CreatePrivateDnsNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "Name"))
169
+ CreatePrivateDnsNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceNamePrivate, required: true, location_name: "Name"))
164
170
  CreatePrivateDnsNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
165
171
  CreatePrivateDnsNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
166
172
  CreatePrivateDnsNamespaceRequest.add_member(:vpc, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "Vpc"))
@@ -170,7 +176,7 @@ module Aws::ServiceDiscovery
170
176
  CreatePrivateDnsNamespaceResponse.add_member(:operation_id, Shapes::ShapeRef.new(shape: OperationId, location_name: "OperationId"))
171
177
  CreatePrivateDnsNamespaceResponse.struct_class = Types::CreatePrivateDnsNamespaceResponse
172
178
 
173
- CreatePublicDnsNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceName, required: true, location_name: "Name"))
179
+ CreatePublicDnsNamespaceRequest.add_member(:name, Shapes::ShapeRef.new(shape: NamespaceNamePublic, required: true, location_name: "Name"))
174
180
  CreatePublicDnsNamespaceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
175
181
  CreatePublicDnsNamespaceRequest.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
176
182
  CreatePublicDnsNamespaceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
@@ -187,6 +193,7 @@ module Aws::ServiceDiscovery
187
193
  CreateServiceRequest.add_member(:health_check_config, Shapes::ShapeRef.new(shape: HealthCheckConfig, location_name: "HealthCheckConfig"))
188
194
  CreateServiceRequest.add_member(:health_check_custom_config, Shapes::ShapeRef.new(shape: HealthCheckCustomConfig, location_name: "HealthCheckCustomConfig"))
189
195
  CreateServiceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
196
+ CreateServiceRequest.add_member(:type, Shapes::ShapeRef.new(shape: ServiceTypeOption, location_name: "Type"))
190
197
  CreateServiceRequest.struct_class = Types::CreateServiceRequest
191
198
 
192
199
  CreateServiceResponse.add_member(:service, Shapes::ShapeRef.new(shape: Service, location_name: "Service"))
@@ -217,6 +224,7 @@ module Aws::ServiceDiscovery
217
224
  DiscoverInstancesRequest.add_member(:service_name, Shapes::ShapeRef.new(shape: ServiceName, required: true, location_name: "ServiceName"))
218
225
  DiscoverInstancesRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: DiscoverMaxResults, location_name: "MaxResults"))
219
226
  DiscoverInstancesRequest.add_member(:query_parameters, Shapes::ShapeRef.new(shape: Attributes, location_name: "QueryParameters"))
227
+ DiscoverInstancesRequest.add_member(:optional_parameters, Shapes::ShapeRef.new(shape: Attributes, location_name: "OptionalParameters"))
220
228
  DiscoverInstancesRequest.add_member(:health_status, Shapes::ShapeRef.new(shape: HealthStatusFilter, location_name: "HealthStatus"))
221
229
  DiscoverInstancesRequest.struct_class = Types::DiscoverInstancesRequest
222
230
 
@@ -286,11 +294,11 @@ module Aws::ServiceDiscovery
286
294
  HealthCheckConfig.add_member(:failure_threshold, Shapes::ShapeRef.new(shape: FailureThreshold, location_name: "FailureThreshold"))
287
295
  HealthCheckConfig.struct_class = Types::HealthCheckConfig
288
296
 
289
- HealthCheckCustomConfig.add_member(:failure_threshold, Shapes::ShapeRef.new(shape: FailureThreshold, location_name: "FailureThreshold"))
297
+ HealthCheckCustomConfig.add_member(:failure_threshold, Shapes::ShapeRef.new(shape: FailureThreshold, deprecated: true, location_name: "FailureThreshold", metadata: {"deprecatedMessage"=>"Configurable FailureThreshold of HealthCheckCustomConfig is deprecated. It will always have value 1."}))
290
298
  HealthCheckCustomConfig.struct_class = Types::HealthCheckCustomConfig
291
299
 
292
300
  HttpInstanceSummary.add_member(:instance_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "InstanceId"))
293
- HttpInstanceSummary.add_member(:namespace_name, Shapes::ShapeRef.new(shape: NamespaceName, location_name: "NamespaceName"))
301
+ HttpInstanceSummary.add_member(:namespace_name, Shapes::ShapeRef.new(shape: NamespaceNameHttp, location_name: "NamespaceName"))
294
302
  HttpInstanceSummary.add_member(:service_name, Shapes::ShapeRef.new(shape: ServiceName, location_name: "ServiceName"))
295
303
  HttpInstanceSummary.add_member(:health_status, Shapes::ShapeRef.new(shape: HealthStatus, location_name: "HealthStatus"))
296
304
  HttpInstanceSummary.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, location_name: "Attributes"))
@@ -437,7 +445,7 @@ module Aws::ServiceDiscovery
437
445
  OperationTargetsMap.value = Shapes::ShapeRef.new(shape: ResourceId)
438
446
 
439
447
  RegisterInstanceRequest.add_member(:service_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "ServiceId"))
440
- RegisterInstanceRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: ResourceId, required: true, location_name: "InstanceId"))
448
+ RegisterInstanceRequest.add_member(:instance_id, Shapes::ShapeRef.new(shape: InstanceId, required: true, location_name: "InstanceId"))
441
449
  RegisterInstanceRequest.add_member(:creator_request_id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "CreatorRequestId", metadata: {"idempotencyToken"=>true}))
442
450
  RegisterInstanceRequest.add_member(:attributes, Shapes::ShapeRef.new(shape: Attributes, required: true, location_name: "Attributes"))
443
451
  RegisterInstanceRequest.struct_class = Types::RegisterInstanceRequest
@@ -464,6 +472,7 @@ module Aws::ServiceDiscovery
464
472
  Service.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
465
473
  Service.add_member(:instance_count, Shapes::ShapeRef.new(shape: ResourceCount, location_name: "InstanceCount"))
466
474
  Service.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfig, location_name: "DnsConfig"))
475
+ Service.add_member(:type, Shapes::ShapeRef.new(shape: ServiceType, location_name: "Type"))
467
476
  Service.add_member(:health_check_config, Shapes::ShapeRef.new(shape: HealthCheckConfig, location_name: "HealthCheckConfig"))
468
477
  Service.add_member(:health_check_custom_config, Shapes::ShapeRef.new(shape: HealthCheckCustomConfig, location_name: "HealthCheckCustomConfig"))
469
478
  Service.add_member(:create_date, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreateDate"))
@@ -495,6 +504,7 @@ module Aws::ServiceDiscovery
495
504
  ServiceSummary.add_member(:id, Shapes::ShapeRef.new(shape: ResourceId, location_name: "Id"))
496
505
  ServiceSummary.add_member(:arn, Shapes::ShapeRef.new(shape: Arn, location_name: "Arn"))
497
506
  ServiceSummary.add_member(:name, Shapes::ShapeRef.new(shape: ServiceName, location_name: "Name"))
507
+ ServiceSummary.add_member(:type, Shapes::ShapeRef.new(shape: ServiceType, location_name: "Type"))
498
508
  ServiceSummary.add_member(:description, Shapes::ShapeRef.new(shape: ResourceDescription, location_name: "Description"))
499
509
  ServiceSummary.add_member(:instance_count, Shapes::ShapeRef.new(shape: ResourceCount, location_name: "InstanceCount"))
500
510
  ServiceSummary.add_member(:dns_config, Shapes::ShapeRef.new(shape: DnsConfig, location_name: "DnsConfig"))
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -3,7 +3,7 @@
3
3
  # WARNING ABOUT GENERATED CODE
4
4
  #
5
5
  # This file is generated. See the contributing guide for more information:
6
- # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
@@ -14,7 +14,7 @@ module Aws::ServiceDiscovery
14
14
  # data as a hash:
15
15
  #
16
16
  # {
17
- # name: "NamespaceName", # required
17
+ # name: "NamespaceNameHttp", # required
18
18
  # creator_request_id: "ResourceId",
19
19
  # description: "ResourceDescription",
20
20
  # tags: [
@@ -32,7 +32,7 @@ module Aws::ServiceDiscovery
32
32
  # @!attribute [rw] creator_request_id
33
33
  # A unique string that identifies the request and that allows failed
34
34
  # `CreateHttpNamespace` requests to be retried without the risk of
35
- # executing the operation twice. `CreatorRequestId` can be any unique
35
+ # running the operation twice. `CreatorRequestId` can be any unique
36
36
  # string, for example, a date/time stamp.
37
37
  #
38
38
  # **A suitable default value is auto-generated.** You should normally
@@ -45,9 +45,9 @@ module Aws::ServiceDiscovery
45
45
  #
46
46
  # @!attribute [rw] tags
47
47
  # The tags to add to the namespace. Each tag consists of a key and an
48
- # optional value, both of which you define. Tag keys can have a
49
- # maximum character length of 128 characters, and tag values can have
50
- # a maximum length of 256 characters.
48
+ # optional value that you define. Tags keys can be up to 128
49
+ # characters in length, and tag values can be up to 256 characters in
50
+ # length.
51
51
  # @return [Array<Types::Tag>]
52
52
  #
53
53
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateHttpNamespaceRequest AWS API Documentation
@@ -83,7 +83,7 @@ module Aws::ServiceDiscovery
83
83
  # data as a hash:
84
84
  #
85
85
  # {
86
- # name: "NamespaceName", # required
86
+ # name: "NamespaceNamePrivate", # required
87
87
  # creator_request_id: "ResourceId",
88
88
  # description: "ResourceDescription",
89
89
  # vpc: "ResourceId", # required
@@ -105,8 +105,8 @@ module Aws::ServiceDiscovery
105
105
  # @!attribute [rw] creator_request_id
106
106
  # A unique string that identifies the request and that allows failed
107
107
  # `CreatePrivateDnsNamespace` requests to be retried without the risk
108
- # of executing the operation twice. `CreatorRequestId` can be any
109
- # unique string, for example, a date/time stamp.
108
+ # of running the operation twice. `CreatorRequestId` can be any unique
109
+ # string, for example, a date/timestamp.
110
110
  #
111
111
  # **A suitable default value is auto-generated.** You should normally
112
112
  # not need to pass this option.
@@ -123,9 +123,9 @@ module Aws::ServiceDiscovery
123
123
  #
124
124
  # @!attribute [rw] tags
125
125
  # The tags to add to the namespace. Each tag consists of a key and an
126
- # optional value, both of which you define. Tag keys can have a
127
- # maximum character length of 128 characters, and tag values can have
128
- # a maximum length of 256 characters.
126
+ # optional value that you define. Tags keys can be up to 128
127
+ # characters in length, and tag values can be up to 256 characters in
128
+ # length.
129
129
  # @return [Array<Types::Tag>]
130
130
  #
131
131
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePrivateDnsNamespaceRequest AWS API Documentation
@@ -162,7 +162,7 @@ module Aws::ServiceDiscovery
162
162
  # data as a hash:
163
163
  #
164
164
  # {
165
- # name: "NamespaceName", # required
165
+ # name: "NamespaceNamePublic", # required
166
166
  # creator_request_id: "ResourceId",
167
167
  # description: "ResourceDescription",
168
168
  # tags: [
@@ -180,8 +180,8 @@ module Aws::ServiceDiscovery
180
180
  # @!attribute [rw] creator_request_id
181
181
  # A unique string that identifies the request and that allows failed
182
182
  # `CreatePublicDnsNamespace` requests to be retried without the risk
183
- # of executing the operation twice. `CreatorRequestId` can be any
184
- # unique string, for example, a date/time stamp.
183
+ # of running the operation twice. `CreatorRequestId` can be any unique
184
+ # string, for example, a date/timestamp.
185
185
  #
186
186
  # **A suitable default value is auto-generated.** You should normally
187
187
  # not need to pass this option.
@@ -193,9 +193,9 @@ module Aws::ServiceDiscovery
193
193
  #
194
194
  # @!attribute [rw] tags
195
195
  # The tags to add to the namespace. Each tag consists of a key and an
196
- # optional value, both of which you define. Tag keys can have a
197
- # maximum character length of 128 characters, and tag values can have
198
- # a maximum length of 256 characters.
196
+ # optional value that you define. Tags keys can be up to 128
197
+ # characters in length, and tag values can be up to 256 characters in
198
+ # length.
199
199
  # @return [Array<Types::Tag>]
200
200
  #
201
201
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreatePublicDnsNamespaceRequest AWS API Documentation
@@ -259,19 +259,20 @@ module Aws::ServiceDiscovery
259
259
  # value: "TagValue", # required
260
260
  # },
261
261
  # ],
262
+ # type: "HTTP", # accepts HTTP
262
263
  # }
263
264
  #
264
265
  # @!attribute [rw] name
265
266
  # The name that you want to assign to the service.
266
267
  #
267
268
  # If you want AWS Cloud Map to create an `SRV` record when you
268
- # register an instance, and if you're using a system that requires a
269
+ # register an instance and you're using a system that requires a
269
270
  # specific `SRV` format, such as [HAProxy][1], specify the following
270
271
  # for `Name`\:
271
272
  #
272
- # * Start the name with an underscore (\_), such as `_exampleservice`
273
+ # * Start the name with an underscore (\_), such as `_exampleservice`.
273
274
  #
274
- # * End the name with *.\_protocol*, such as `._tcp`
275
+ # * End the name with *.\_protocol*, such as `._tcp`.
275
276
  #
276
277
  # When you register an instance, AWS Cloud Map creates an `SRV` record
277
278
  # and assigns a name to the record by concatenating the service name
@@ -279,6 +280,15 @@ module Aws::ServiceDiscovery
279
280
  #
280
281
  # `_exampleservice._tcp.example.com`
281
282
  #
283
+ # <note markdown="1"> For services that are accessible by DNS queries, you can't create
284
+ # multiple services with names that differ only by case (such as
285
+ # EXAMPLE and example). Otherwise, these services have the same DNS
286
+ # name and can't be distinguished. However, if you use a namespace
287
+ # that's only accessible by API calls, then you can create services
288
+ # that with names that differ only by case.
289
+ #
290
+ # </note>
291
+ #
282
292
  #
283
293
  #
284
294
  # [1]: http://www.haproxy.org/
@@ -286,13 +296,15 @@ module Aws::ServiceDiscovery
286
296
  #
287
297
  # @!attribute [rw] namespace_id
288
298
  # The ID of the namespace that you want to use to create the service.
299
+ # The namespace ID must be specified, but it can be specified either
300
+ # here or in the `DnsConfig` object.
289
301
  # @return [String]
290
302
  #
291
303
  # @!attribute [rw] creator_request_id
292
304
  # A unique string that identifies the request and that allows failed
293
- # `CreateService` requests to be retried without the risk of executing
305
+ # `CreateService` requests to be retried without the risk of running
294
306
  # the operation twice. `CreatorRequestId` can be any unique string,
295
- # for example, a date/time stamp.
307
+ # for example, a date/timestamp.
296
308
  #
297
309
  # **A suitable default value is auto-generated.** You should normally
298
310
  # not need to pass this option.
@@ -339,11 +351,18 @@ module Aws::ServiceDiscovery
339
351
  #
340
352
  # @!attribute [rw] tags
341
353
  # The tags to add to the service. Each tag consists of a key and an
342
- # optional value, both of which you define. Tag keys can have a
343
- # maximum character length of 128 characters, and tag values can have
344
- # a maximum length of 256 characters.
354
+ # optional value that you define. Tags keys can be up to 128
355
+ # characters in length, and tag values can be up to 256 characters in
356
+ # length.
345
357
  # @return [Array<Types::Tag>]
346
358
  #
359
+ # @!attribute [rw] type
360
+ # If present, specifies that the service instances are only
361
+ # discoverable using the `DiscoverInstances` API operation. No DNS
362
+ # records will be registered for the service instances. The only valid
363
+ # value is `HTTP`.
364
+ # @return [String]
365
+ #
347
366
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/CreateServiceRequest AWS API Documentation
348
367
  #
349
368
  class CreateServiceRequest < Struct.new(
@@ -354,7 +373,8 @@ module Aws::ServiceDiscovery
354
373
  :dns_config,
355
374
  :health_check_config,
356
375
  :health_check_custom_config,
357
- :tags)
376
+ :tags,
377
+ :type)
358
378
  SENSITIVE = []
359
379
  include Aws::Structure
360
380
  end
@@ -371,8 +391,8 @@ module Aws::ServiceDiscovery
371
391
  include Aws::Structure
372
392
  end
373
393
 
374
- # The health check for the instance that is specified by `ServiceId` and
375
- # `InstanceId` is not a custom health check.
394
+ # The health check for the instance that's specified by `ServiceId` and
395
+ # `InstanceId` isn't a custom health check.
376
396
  #
377
397
  # @!attribute [rw] message
378
398
  # @return [String]
@@ -502,12 +522,15 @@ module Aws::ServiceDiscovery
502
522
  # query_parameters: {
503
523
  # "AttrKey" => "AttrValue",
504
524
  # },
525
+ # optional_parameters: {
526
+ # "AttrKey" => "AttrValue",
527
+ # },
505
528
  # health_status: "HEALTHY", # accepts HEALTHY, UNHEALTHY, ALL
506
529
  # }
507
530
  #
508
531
  # @!attribute [rw] namespace_name
509
- # The name of the namespace that you specified when you registered the
510
- # instance.
532
+ # The `HttpName` name of the namespace, found in the `HttpProperties`
533
+ # member of the `Properties` member of the namespace.
511
534
  # @return [String]
512
535
  #
513
536
  # @!attribute [rw] service_name
@@ -523,10 +546,18 @@ module Aws::ServiceDiscovery
523
546
  # @return [Integer]
524
547
  #
525
548
  # @!attribute [rw] query_parameters
526
- # A string map that contains attributes with values that you can use
527
- # to filter instances by any custom attribute that you specified when
528
- # you registered the instance. Only instances that match all the
529
- # specified key/value pairs will be returned.
549
+ # Filters to scope the results based on custom attributes for the
550
+ # instance. For example, `\{version=v1, az=1a\}`. Only instances that
551
+ # match all the specified key-value pairs are returned.
552
+ # @return [Hash<String,String>]
553
+ #
554
+ # @!attribute [rw] optional_parameters
555
+ # Opportunistic filters to scope the results based on custom
556
+ # attributes. If there are instances that match both the filters
557
+ # specified in both the `QueryParameters` parameter and this
558
+ # parameter, they are returned. Otherwise, these filters are ignored
559
+ # and only instances that match the filters specified in the
560
+ # `QueryParameters` parameter are returned.
530
561
  # @return [Hash<String,String>]
531
562
  #
532
563
  # @!attribute [rw] health_status
@@ -540,6 +571,7 @@ module Aws::ServiceDiscovery
540
571
  :service_name,
541
572
  :max_results,
542
573
  :query_parameters,
574
+ :optional_parameters,
543
575
  :health_status)
544
576
  SENSITIVE = []
545
577
  include Aws::Structure
@@ -592,46 +624,46 @@ module Aws::ServiceDiscovery
592
624
  #
593
625
  # You can specify the following values:
594
626
  #
595
- # **MULTIVALUE**
627
+ # MULTIVALUE
596
628
  #
597
- # If you define a health check for the service and the health check is
598
- # healthy, Route 53 returns the applicable value for up to eight
599
- # instances.
629
+ # : If you define a health check for the service and the health check
630
+ # is healthy, Route 53 returns the applicable value for up to eight
631
+ # instances.
600
632
  #
601
- # For example, suppose the service includes configurations for one `A`
602
- # record and a health check, and you use the service to register 10
603
- # instances. Route 53 responds to DNS queries with IP addresses for up
604
- # to eight healthy instances. If fewer than eight instances are
605
- # healthy, Route 53 responds to every DNS query with the IP addresses
606
- # for all of the healthy instances.
633
+ # For example, suppose that the service includes configurations for
634
+ # one `A` record and a health check. You use the service to register
635
+ # 10 instances. Route 53 responds to DNS queries with IP addresses
636
+ # for up to eight healthy instances. If fewer than eight instances
637
+ # are healthy, Route 53 responds to every DNS query with the IP
638
+ # addresses for all of the healthy instances.
607
639
  #
608
- # If you don't define a health check for the service, Route 53
609
- # assumes that all instances are healthy and returns the values for up
610
- # to eight instances.
640
+ # If you don't define a health check for the service, Route 53
641
+ # assumes that all instances are healthy and returns the values for
642
+ # up to eight instances.
611
643
  #
612
- # For more information about the multivalue routing policy, see
613
- # [Multivalue Answer Routing][1] in the *Route 53 Developer Guide*.
644
+ # For more information about the multivalue routing policy, see
645
+ # [Multivalue Answer Routing][1] in the *Route 53 Developer Guide*.
614
646
  #
615
- # **WEIGHTED**
647
+ # WEIGHTED
616
648
  #
617
- # Route 53 returns the applicable value from one randomly selected
618
- # instance from among the instances that you registered using the same
619
- # service. Currently, all records have the same weight, so you can't
620
- # route more or less traffic to any instances.
649
+ # : Route 53 returns the applicable value from one randomly selected
650
+ # instance from among the instances that you registered using the
651
+ # same service. Currently, all records have the same weight, so you
652
+ # can't route more or less traffic to any instances.
621
653
  #
622
- # For example, suppose the service includes configurations for one `A`
623
- # record and a health check, and you use the service to register 10
624
- # instances. Route 53 responds to DNS queries with the IP address for
625
- # one randomly selected instance from among the healthy instances. If
626
- # no instances are healthy, Route 53 responds to DNS queries as if all
627
- # of the instances were healthy.
654
+ # For example, suppose that the service includes configurations for
655
+ # one `A` record and a health check. You use the service to register
656
+ # 10 instances. Route 53 responds to DNS queries with the IP address
657
+ # for one randomly selected instance from among the healthy
658
+ # instances. If no instances are healthy, Route 53 responds to DNS
659
+ # queries as if all of the instances were healthy.
628
660
  #
629
- # If you don't define a health check for the service, Route 53
630
- # assumes that all instances are healthy and returns the applicable
631
- # value for one randomly selected instance.
661
+ # If you don't define a health check for the service, Route 53
662
+ # assumes that all instances are healthy and returns the applicable
663
+ # value for one randomly selected instance.
632
664
  #
633
- # For more information about the weighted routing policy, see
634
- # [Weighted Routing][2] in the *Route 53 Developer Guide*.
665
+ # For more information about the weighted routing policy, see
666
+ # [Weighted Routing][2] in the *Route 53 Developer Guide*.
635
667
  #
636
668
  #
637
669
  #
@@ -717,15 +749,15 @@ module Aws::ServiceDiscovery
717
749
  # Route 53 returns in response to DNS queries. You can specify values
718
750
  # for `Type` in the following combinations:
719
751
  #
720
- # * `A`
752
+ # * <b> <code>A</code> </b>
721
753
  #
722
- # * `AAAA`
754
+ # * <b> <code>AAAA</code> </b>
723
755
  #
724
- # * `A` and `AAAA`
756
+ # * <b> <code>A</code> </b> and <b> <code>AAAA</code> </b>
725
757
  #
726
- # * `SRV`
758
+ # * <b> <code>SRV</code> </b>
727
759
  #
728
- # * `CNAME`
760
+ # * <b> <code>CNAME</code> </b>
729
761
  #
730
762
  # If you want AWS Cloud Map to create a Route 53 alias record when you
731
763
  # register an instance, specify `A` or `AAAA` for `Type`.
@@ -736,62 +768,81 @@ module Aws::ServiceDiscovery
736
768
  #
737
769
  # The following values are supported:
738
770
  #
739
- # `A` <b> <code> </b> </p> <p>Route 53 returns the IP address of the
740
- # resource in IPv4 format, such as 192.0.2.44.</p> <p>
741
- # <code>AAAA</code> <b> <code> </b> </p> <p>Route 53 returns the IP
742
- # address of the resource in IPv6 format, such as
743
- # 2001:0db8:85a3:0000:0000:abcd:0001:2345.</p> <p> <code>CNAME</code>
744
- # <b> <code> </b> </p> <p>Route 53 returns the domain name of the
745
- # resource, such as www.example.com. Note the following:</p> <ul> <li>
746
- # <p>You specify the domain name that you want to route traffic to
747
- # when you register an instance. For more information, see <a
748
- # href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html#cloudmap-RegisterInstance-request-Attributes">Attributes</a>
749
- # in the topic <a
750
- # href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html">RegisterInstance</a>.</p>
751
- # </li> <li> <p>You must specify <code>WEIGHTED</code> for the value
752
- # of <code>RoutingPolicy</code>.</p> </li> <li> <p>You can't specify
753
- # both <code>CNAME</code> for <code>Type</code> and settings for
754
- # <code>HealthCheckConfig</code>. If you do, the request will fail
755
- # with an <code>InvalidInput</code> error.</p> </li> </ul> <p>
756
- # <b>SRV</b> </p> <p>Route 53 returns the value for an
757
- # <code>SRV</code> record. The value for an <code>SRV</code> record
758
- # uses the following values:</p> <p> <code>priority weight port
759
- # service-hostname</code> </p> <p>Note the following about the
760
- # values:</p> <ul> <li> <p>The values of <code>priority</code> and
761
- # <code>weight</code> are both set to <code>1</code> and can't be
762
- # changed. </p> </li> <li> <p>The value of <code>port</code> comes
763
- # from the value that you specify for the
764
- # <code>AWS_INSTANCE_PORT</code> attribute when you submit a <a
765
- # href="https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html">RegisterInstance</a>
766
- # request. </p> </li> <li> <p>The value of
767
- # <code>service-hostname</code> is a concatenation of the following
768
- # values:</p> <ul> <li> <p>The value that you specify for
769
- # <code>InstanceId</code> when you register an instance.</p> </li>
770
- # <li> <p>The name of the service.</p> </li> <li> <p>The name of the
771
- # namespace. </p> </li> </ul> <p>For example, if the value of
772
- # <code>InstanceId</code> is <code>test</code>, the name of the
773
- # service is <code>backend</code>, and the name of the namespace is
774
- # <code>example.com</code>, the value of <code>service-hostname</code>
775
- # is:</p> <p> <code>test.backend.example.com</code> </p> </li> </ul>
776
- # <p>If you specify settings for an <code>SRV</code> record, note the
777
- # following:</p> <ul> <li> <p>If you specify values for
778
- # <code>AWS_INSTANCE_IPV4</code>, <code>AWS_INSTANCE_IPV6</code>, or
779
- # both in the <code>RegisterInstance</code> request, AWS Cloud Map
780
- # automatically creates <code>A</code> and/or <code>AAAA</code>
781
- # records that have the same name as the value of
782
- # <code>service-hostname</code> in the <code>SRV</code> record. You
783
- # can ignore these records.</p> </li> <li> <p>If you're using a system
784
- # that requires a specific <code>SRV</code> format, such as HAProxy,
785
- # see the <a
786
- # href="https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html#cloudmap-CreateService-request-Name">Name</a>
787
- # element in the documentation about <code>CreateService</code> for
788
- # information about how to specify the correct name format.</p> </li>
789
- # </ul>
790
- # </code></b></p></code></b></p></code></b>
771
+ # A
772
+ #
773
+ # : Route 53 returns the IP address of the resource in IPv4 format,
774
+ # such as 192.0.2.44.
775
+ #
776
+ # AAAA
777
+ #
778
+ # : Route 53 returns the IP address of the resource in IPv6 format,
779
+ # such as 2001:0db8:85a3:0000:0000:abcd:0001:2345.
780
+ #
781
+ # CNAME
782
+ #
783
+ # : Route 53 returns the domain name of the resource, such as
784
+ # www.example.com. Note the following:
785
+ #
786
+ # * You specify the domain name that you want to route traffic to
787
+ # when you register an instance. For more information, see
788
+ # [Attributes][2] in the topic [RegisterInstance][1].
789
+ #
790
+ # * You must specify `WEIGHTED` for the value of `RoutingPolicy`.
791
+ #
792
+ # * You can't specify both `CNAME` for `Type` and settings for
793
+ # `HealthCheckConfig`. If you do, the request will fail with an
794
+ # `InvalidInput` error.
795
+ #
796
+ # SRV
797
+ #
798
+ # : Route 53 returns the value for an `SRV` record. The value for an
799
+ # `SRV` record uses the following values:
800
+ #
801
+ # `priority weight port service-hostname`
802
+ #
803
+ # Note the following about the values:
804
+ #
805
+ # * The values of `priority` and `weight` are both set to `1` and
806
+ # can't be changed.
807
+ #
808
+ # * The value of `port` comes from the value that you specify for
809
+ # the `AWS_INSTANCE_PORT` attribute when you submit a
810
+ # [RegisterInstance][1] request.
811
+ #
812
+ # * The value of `service-hostname` is a concatenation of the
813
+ # following values:
814
+ #
815
+ # * The value that you specify for `InstanceId` when you register
816
+ # an instance.
817
+ #
818
+ # * The name of the service.
819
+ #
820
+ # * The name of the namespace.
821
+ #
822
+ # For example, if the value of `InstanceId` is `test`, the name of
823
+ # the service is `backend`, and the name of the namespace is
824
+ # `example.com`, the value of `service-hostname` is the following:
825
+ #
826
+ # `test.backend.example.com`
827
+ #
828
+ # If you specify settings for an `SRV` record, note the following:
829
+ #
830
+ # * If you specify values for `AWS_INSTANCE_IPV4`,
831
+ # `AWS_INSTANCE_IPV6`, or both in the `RegisterInstance` request,
832
+ # AWS Cloud Map automatically creates `A` and/or `AAAA` records
833
+ # that have the same name as the value of `service-hostname` in
834
+ # the `SRV` record. You can ignore these records.
835
+ #
836
+ # * If you're using a system that requires a specific `SRV` format,
837
+ # such as HAProxy, see the [Name][3] element in the documentation
838
+ # about `CreateService` for information about how to specify the
839
+ # correct name format.
791
840
  #
792
841
  #
793
842
  #
794
843
  # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html
844
+ # [2]: https://docs.aws.amazon.com/cloud-map/latest/api/API_RegisterInstance.html#cloudmap-RegisterInstance-request-Attributes
845
+ # [3]: https://docs.aws.amazon.com/cloud-map/latest/api/API_CreateService.html#cloudmap-CreateService-request-Name
795
846
  # @return [String]
796
847
  #
797
848
  # @!attribute [rw] ttl
@@ -1064,54 +1115,55 @@ module Aws::ServiceDiscovery
1064
1115
  #
1065
1116
  # Note the following about configuring health checks.
1066
1117
  #
1067
- # <b> <code>A</code> and <code>AAAA</code> records</b>
1118
+ # A and AAAA records
1068
1119
  #
1069
- # If `DnsConfig` includes configurations for both `A` and `AAAA`
1070
- # records, AWS Cloud Map creates a health check that uses the IPv4
1071
- # address to check the health of the resource. If the endpoint that is
1072
- # specified by the IPv4 address is unhealthy, Route 53 considers both
1073
- # the `A` and `AAAA` records to be unhealthy.
1120
+ # : If `DnsConfig` includes configurations for both `A` and `AAAA`
1121
+ # records, AWS Cloud Map creates a health check that uses the IPv4
1122
+ # address to check the health of the resource. If the endpoint that is
1123
+ # specified by the IPv4 address is unhealthy, Route 53 considers both
1124
+ # the `A` and `AAAA` records to be unhealthy.
1074
1125
  #
1075
- # <b> <code>CNAME</code> records</b>
1126
+ # CNAME records
1076
1127
  #
1077
- # You can't specify settings for `HealthCheckConfig` when the
1078
- # `DNSConfig` includes `CNAME` for the value of `Type`. If you do, the
1079
- # `CreateService` request will fail with an `InvalidInput` error.
1128
+ # : You can't specify settings for `HealthCheckConfig` when the
1129
+ # `DNSConfig` includes `CNAME` for the value of `Type`. If you do, the
1130
+ # `CreateService` request will fail with an `InvalidInput` error.
1080
1131
  #
1081
- # **Request interval**
1132
+ # Request interval
1082
1133
  #
1083
- # A Route 53 health checker in each health-checking region sends a
1084
- # health check request to an endpoint every 30 seconds. On average, your
1085
- # endpoint receives a health check request about every two seconds.
1086
- # However, health checkers don't coordinate with one another, so
1087
- # you'll sometimes see several requests per second followed by a few
1088
- # seconds with no health checks at all.
1134
+ # : A Route 53 health checker in each health-checking region sends a
1135
+ # health check request to an endpoint every 30 seconds. On average,
1136
+ # your endpoint receives a health check request about every two
1137
+ # seconds. However, health checkers don't coordinate with one
1138
+ # another, so you'll sometimes see several requests per second
1139
+ # followed by a few seconds with no health checks at all.
1089
1140
  #
1090
- # **Health checking regions**
1141
+ # Health checking regions
1091
1142
  #
1092
- # Health checkers perform checks from all Route 53 health-checking
1093
- # regions. For a list of the current regions, see [Regions][2].
1143
+ # : Health checkers perform checks from all Route 53 health-checking
1144
+ # regions. For a list of the current regions, see [Regions][2].
1094
1145
  #
1095
- # **Alias records**
1146
+ # Alias records
1096
1147
  #
1097
- # When you register an instance, if you include the `AWS_ALIAS_DNS_NAME`
1098
- # attribute, AWS Cloud Map creates a Route 53 alias record. Note the
1099
- # following:
1148
+ # : When you register an instance, if you include the
1149
+ # `AWS_ALIAS_DNS_NAME` attribute, AWS Cloud Map creates a Route 53
1150
+ # alias record. Note the following:
1100
1151
  #
1101
- # * Route 53 automatically sets `EvaluateTargetHealth` to true for alias
1102
- # records. When `EvaluateTargetHealth` is true, the alias record
1103
- # inherits the health of the referenced AWS resource. such as an ELB
1104
- # load balancer. For more information, see [EvaluateTargetHealth][3].
1152
+ # * Route 53 automatically sets `EvaluateTargetHealth` to true for
1153
+ # alias records. When `EvaluateTargetHealth` is true, the alias
1154
+ # record inherits the health of the referenced AWS resource. such as
1155
+ # an ELB load balancer. For more information, see
1156
+ # [EvaluateTargetHealth][3].
1105
1157
  #
1106
- # * If you include `HealthCheckConfig` and then use the service to
1107
- # register an instance that creates an alias record, Route 53 doesn't
1108
- # create the health check.
1158
+ # * If you include `HealthCheckConfig` and then use the service to
1159
+ # register an instance that creates an alias record, Route 53
1160
+ # doesn't create the health check.
1109
1161
  #
1110
- # **Charges for health checks**
1162
+ # Charges for health checks
1111
1163
  #
1112
- # Health checks are basic Route 53 health checks that monitor an AWS
1113
- # endpoint. For information about pricing for health checks, see [Amazon
1114
- # Route 53 Pricing][1].
1164
+ # : Health checks are basic Route 53 health checks that monitor an AWS
1165
+ # endpoint. For information about pricing for health checks, see
1166
+ # [Amazon Route 53 Pricing][1].
1115
1167
  #
1116
1168
  #
1117
1169
  #
@@ -1163,8 +1215,8 @@ module Aws::ServiceDiscovery
1163
1215
  #
1164
1216
  # @!attribute [rw] resource_path
1165
1217
  # The path that you want Route 53 to request when performing health
1166
- # checks. The path can be any value for which your endpoint will
1167
- # return an HTTP status code of 2xx or 3xx when the endpoint is
1218
+ # checks. The path can be any value for which your endpoint returns an
1219
+ # HTTP status code of a 2xx or 3xx format when the endpoint is
1168
1220
  # healthy, such as the file `/docs/route53-health-check.html`.
1169
1221
  # Route 53 automatically adds the DNS name for the service. If you
1170
1222
  # don't specify a value for `ResourcePath`, the default value is `/`.
@@ -1176,9 +1228,9 @@ module Aws::ServiceDiscovery
1176
1228
  # @!attribute [rw] failure_threshold
1177
1229
  # The number of consecutive health checks that an endpoint must pass
1178
1230
  # or fail for Route 53 to change the current status of the endpoint
1179
- # from unhealthy to healthy or vice versa. For more information, see
1180
- # [How Route 53 Determines Whether an Endpoint Is Healthy][1] in the
1181
- # *Route 53 Developer Guide*.
1231
+ # from unhealthy to healthy or the other way around. For more
1232
+ # information, see [How Route 53 Determines Whether an Endpoint Is
1233
+ # Healthy][1] in the *Route 53 Developer Guide*.
1182
1234
  #
1183
1235
  #
1184
1236
  #
@@ -1261,20 +1313,19 @@ module Aws::ServiceDiscovery
1261
1313
  # }
1262
1314
  #
1263
1315
  # @!attribute [rw] failure_threshold
1316
+ # This parameter has been deprecated and is always set to 1. AWS Cloud
1317
+ # Map waits for approximately 30 seconds after receiving an
1318
+ # `UpdateInstanceCustomHealthStatus` request before changing the
1319
+ # status of the service instance.
1320
+ #
1264
1321
  # The number of 30-second intervals that you want AWS Cloud Map to
1265
1322
  # wait after receiving an `UpdateInstanceCustomHealthStatus` request
1266
- # before it changes the health status of a service instance. For
1267
- # example, suppose you specify a value of `2` for `FailureTheshold`,
1268
- # and then your application sends an
1269
- # `UpdateInstanceCustomHealthStatus` request. AWS Cloud Map waits for
1270
- # approximately 60 seconds (2 x 30) before changing the status of the
1271
- # service instance based on that request.
1323
+ # before it changes the health status of a service instance.
1272
1324
  #
1273
1325
  # Sending a second or subsequent `UpdateInstanceCustomHealthStatus`
1274
- # request with the same value before `FailureThreshold x 30` seconds
1275
- # has passed doesn't accelerate the change. AWS Cloud Map still waits
1276
- # `FailureThreshold x 30` seconds after the first request to make the
1277
- # change.
1326
+ # request with the same value before 30 seconds has passed doesn't
1327
+ # accelerate the change. AWS Cloud Map still waits `30` seconds after
1328
+ # the first request to make the change.
1278
1329
  # @return [Integer]
1279
1330
  #
1280
1331
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/HealthCheckCustomConfig AWS API Documentation
@@ -1299,8 +1350,9 @@ module Aws::ServiceDiscovery
1299
1350
  # @return [String]
1300
1351
  #
1301
1352
  # @!attribute [rw] namespace_name
1302
- # The name of the namespace that you specified when you registered the
1303
- # instance.
1353
+ # ` </p> The HttpName name of the namespace, found in the
1354
+ # HttpProperties member of the Properties member of the namespace.
1355
+ # `
1304
1356
  # @return [String]
1305
1357
  #
1306
1358
  # @!attribute [rw] service_name
@@ -1399,87 +1451,94 @@ module Aws::ServiceDiscovery
1399
1451
  #
1400
1452
  # Supported attribute keys include the following:
1401
1453
  #
1402
- # **AWS\_ALIAS\_DNS\_NAME**
1454
+ # AWS\_ALIAS\_DNS\_NAME
1403
1455
  #
1404
- # ****
1456
+ # : If you want AWS Cloud Map to create a Route 53 alias record that
1457
+ # routes traffic to an Elastic Load Balancing load balancer, specify
1458
+ # the DNS name that is associated with the load balancer. For
1459
+ # information about how to get the DNS name, see
1460
+ # [AliasTarget-&gt;DNSName][1] in the *Route 53 API Reference*.
1405
1461
  #
1406
- # If you want AWS Cloud Map to create a Route 53 alias record that
1407
- # routes traffic to an Elastic Load Balancing load balancer, specify
1408
- # the DNS name that is associated with the load balancer. For
1409
- # information about how to get the DNS name, see "DNSName" in the
1410
- # topic [AliasTarget][1].
1462
+ # Note the following:
1411
1463
  #
1412
- # Note the following:
1464
+ # * The configuration for the service that is specified by
1465
+ # `ServiceId` must include settings for an `A` record, an `AAAA`
1466
+ # record, or both.
1413
1467
  #
1414
- # * The configuration for the service that is specified by `ServiceId`
1415
- # must include settings for an `A` record, an `AAAA` record, or
1416
- # both.
1468
+ # * In the service that is specified by `ServiceId`, the value of
1469
+ # `RoutingPolicy` must be `WEIGHTED`.
1417
1470
  #
1418
- # * In the service that is specified by `ServiceId`, the value of
1419
- # `RoutingPolicy` must be `WEIGHTED`.
1471
+ # * If the service that is specified by `ServiceId` includes
1472
+ # `HealthCheckConfig` settings, AWS Cloud Map creates the health
1473
+ # check, but it won't associate the health check with the alias
1474
+ # record.
1420
1475
  #
1421
- # * If the service that is specified by `ServiceId` includes
1422
- # `HealthCheckConfig` settings, AWS Cloud Map will create the health
1423
- # check, but it won't associate the health check with the alias
1424
- # record.
1476
+ # * Auto naming currently doesn't support creating alias records
1477
+ # that route traffic to AWS resources other than ELB load
1478
+ # balancers.
1425
1479
  #
1426
- # * Auto naming currently doesn't support creating alias records that
1427
- # route traffic to AWS resources other than ELB load balancers.
1480
+ # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
1481
+ # values for any of the `AWS_INSTANCE` attributes.
1428
1482
  #
1429
- # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
1430
- # values for any of the `AWS_INSTANCE` attributes.
1483
+ # AWS\_EC2\_INSTANCE\_ID
1431
1484
  #
1432
- # **AWS\_EC2\_INSTANCE\_ID**
1485
+ # : *HTTP namespaces only.* The Amazon EC2 instance ID for the
1486
+ # instance. The `AWS_INSTANCE_IPV4` attribute contains the primary
1487
+ # private IPv4 address.
1433
1488
  #
1434
- # *HTTP namespaces only.* The Amazon EC2 instance ID for the instance.
1435
- # The `AWS_INSTANCE_IPV4` attribute contains the primary private IPv4
1436
- # address.
1489
+ # AWS\_INIT\_HEALTH\_STATUS
1437
1490
  #
1438
- # **AWS\_INSTANCE\_CNAME**
1491
+ # : If the service configuration includes `HealthCheckCustomConfig`,
1492
+ # you can optionally use `AWS_INIT_HEALTH_STATUS` to specify the
1493
+ # initial status of the custom health check, `HEALTHY` or
1494
+ # `UNHEALTHY`. If you don't specify a value for
1495
+ # `AWS_INIT_HEALTH_STATUS`, the initial status is `HEALTHY`.
1439
1496
  #
1440
- # If the service configuration includes a `CNAME` record, the domain
1441
- # name that you want Route 53 to return in response to DNS queries,
1442
- # for example, `example.com`.
1497
+ # AWS\_INSTANCE\_CNAME
1443
1498
  #
1444
- # This value is required if the service specified by `ServiceId`
1445
- # includes settings for an `CNAME` record.
1499
+ # : If the service configuration includes a `CNAME` record, the domain
1500
+ # name that you want Route 53 to return in response to DNS queries,
1501
+ # for example, `example.com`.
1446
1502
  #
1447
- # **AWS\_INSTANCE\_IPV4**
1503
+ # This value is required if the service specified by `ServiceId`
1504
+ # includes settings for an `CNAME` record.
1448
1505
  #
1449
- # If the service configuration includes an `A` record, the IPv4
1450
- # address that you want Route 53 to return in response to DNS queries,
1451
- # for example, `192.0.2.44`.
1506
+ # AWS\_INSTANCE\_IPV4
1452
1507
  #
1453
- # This value is required if the service specified by `ServiceId`
1454
- # includes settings for an `A` record. If the service includes
1455
- # settings for an `SRV` record, you must specify a value for
1456
- # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1508
+ # : If the service configuration includes an `A` record, the IPv4
1509
+ # address that you want Route 53 to return in response to DNS
1510
+ # queries, for example, `192.0.2.44`.
1457
1511
  #
1458
- # **AWS\_INSTANCE\_IPV6**
1512
+ # This value is required if the service specified by `ServiceId`
1513
+ # includes settings for an `A` record. If the service includes
1514
+ # settings for an `SRV` record, you must specify a value for
1515
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1459
1516
  #
1460
- # If the service configuration includes an `AAAA` record, the IPv6
1461
- # address that you want Route 53 to return in response to DNS queries,
1462
- # for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1517
+ # AWS\_INSTANCE\_IPV6
1463
1518
  #
1464
- # This value is required if the service specified by `ServiceId`
1465
- # includes settings for an `AAAA` record. If the service includes
1466
- # settings for an `SRV` record, you must specify a value for
1467
- # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1519
+ # : If the service configuration includes an `AAAA` record, the IPv6
1520
+ # address that you want Route 53 to return in response to DNS
1521
+ # queries, for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1468
1522
  #
1469
- # **AWS\_INSTANCE\_PORT**
1523
+ # This value is required if the service specified by `ServiceId`
1524
+ # includes settings for an `AAAA` record. If the service includes
1525
+ # settings for an `SRV` record, you must specify a value for
1526
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
1470
1527
  #
1471
- # If the service includes an `SRV` record, the value that you want
1472
- # Route 53 to return for the port.
1528
+ # AWS\_INSTANCE\_PORT
1473
1529
  #
1474
- # If the service includes `HealthCheckConfig`, the port on the
1475
- # endpoint that you want Route 53 to send requests to.
1530
+ # : If the service includes an `SRV` record, the value that you want
1531
+ # Route 53 to return for the port.
1476
1532
  #
1477
- # This value is required if you specified settings for an `SRV` record
1478
- # or a Route 53 health check when you created the service.
1533
+ # If the service includes `HealthCheckConfig`, the port on the
1534
+ # endpoint that you want Route 53 to send requests to.
1479
1535
  #
1536
+ # This value is required if you specified settings for an `SRV`
1537
+ # record or a Route 53 health check when you created the service.
1480
1538
  #
1481
1539
  #
1482
- # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html
1540
+ #
1541
+ # [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-DNSName
1483
1542
  # @return [Hash<String,String>]
1484
1543
  #
1485
1544
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Instance AWS API Documentation
@@ -1523,31 +1582,48 @@ module Aws::ServiceDiscovery
1523
1582
  #
1524
1583
  # Supported attribute keys include the following:
1525
1584
  #
1526
- # * `AWS_ALIAS_DNS_NAME`\: For an alias record that routes traffic to
1527
- # an Elastic Load Balancing load balancer, the DNS name that is
1528
- # associated with the load balancer.
1585
+ # AWS\_ALIAS\_DNS\_NAME
1586
+ #
1587
+ # : For an alias record that routes traffic to an Elastic Load
1588
+ # Balancing load balancer, the DNS name that is associated with the
1589
+ # load balancer.
1529
1590
  #
1530
- # * `AWS_EC2_INSTANCE_ID`\: (HTTP namespaces only) The Amazon EC2
1531
- # instance ID for the instance. When the `AWS_EC2_INSTANCE_ID`
1532
- # attribute is specified, then the `AWS_INSTANCE_IPV4` attribute
1533
- # contains the primary private IPv4 address.
1591
+ # AWS\_EC2\_INSTANCE\_ID (HTTP namespaces only)
1534
1592
  #
1535
- # * `AWS_INSTANCE_CNAME`\: For a `CNAME` record, the domain name that
1536
- # Route 53 returns in response to DNS queries, for example,
1537
- # `example.com`.
1593
+ # : The Amazon EC2 instance ID for the instance. When the
1594
+ # `AWS_EC2_INSTANCE_ID` attribute is specified, then the
1595
+ # `AWS_INSTANCE_IPV4` attribute contains the primary private IPv4
1596
+ # address.
1538
1597
  #
1539
- # * `AWS_INSTANCE_IPV4`\: For an `A` record, the IPv4 address that
1540
- # Route 53 returns in response to DNS queries, for example,
1541
- # `192.0.2.44`.
1598
+ # AWS\_INIT\_HEALTH\_STATUS
1542
1599
  #
1543
- # * `AWS_INSTANCE_IPV6`\: For an `AAAA` record, the IPv6 address that
1544
- # Route 53 returns in response to DNS queries, for example,
1600
+ # : If the service configuration includes `HealthCheckCustomConfig`,
1601
+ # you can optionally use `AWS_INIT_HEALTH_STATUS` to specify the
1602
+ # initial status of the custom health check, `HEALTHY` or
1603
+ # `UNHEALTHY`. If you don't specify a value for
1604
+ # `AWS_INIT_HEALTH_STATUS`, the initial status is `HEALTHY`.
1605
+ #
1606
+ # AWS\_INSTANCE\_CNAME
1607
+ #
1608
+ # : For a `CNAME` record, the domain name that Route 53 returns in
1609
+ # response to DNS queries, for example, `example.com`.
1610
+ #
1611
+ # AWS\_INSTANCE\_IPV4
1612
+ #
1613
+ # : For an `A` record, the IPv4 address that Route 53 returns in
1614
+ # response to DNS queries, for example, `192.0.2.44`.
1615
+ #
1616
+ # AWS\_INSTANCE\_IPV6
1617
+ #
1618
+ # : For an `AAAA` record, the IPv6 address that Route 53 returns in
1619
+ # response to DNS queries, for example,
1545
1620
  # `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
1546
1621
  #
1547
- # * `AWS_INSTANCE_PORT`\: For an `SRV` record, the value that Route 53
1548
- # returns for the port. In addition, if the service includes
1549
- # `HealthCheckConfig`, the port on the endpoint that Route 53 sends
1550
- # requests to.
1622
+ # AWS\_INSTANCE\_PORT
1623
+ #
1624
+ # : For an `SRV` record, the value that Route 53 returns for the port.
1625
+ # In addition, if the service includes `HealthCheckConfig`, the port
1626
+ # on the endpoint that Route 53 sends requests to.
1551
1627
  # @return [Hash<String,String>]
1552
1628
  #
1553
1629
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/InstanceSummary AWS API Documentation
@@ -1940,14 +2016,20 @@ module Aws::ServiceDiscovery
1940
2016
  # The type of the namespace. The methods for discovering instances
1941
2017
  # depends on the value that you specify:
1942
2018
  #
1943
- # * `HTTP`\: Instances can be discovered only programmatically, using
1944
- # the AWS Cloud Map `DiscoverInstances` API.
2019
+ # HTTP
2020
+ #
2021
+ # : Instances can be discovered only programmatically, using the AWS
2022
+ # Cloud Map `DiscoverInstances` API.
1945
2023
  #
1946
- # * `DNS_PUBLIC`\: Instances can be discovered using public DNS
1947
- # queries and using the `DiscoverInstances` API.
2024
+ # DNS\_PUBLIC
1948
2025
  #
1949
- # * `DNS_PRIVATE`\: Instances can be discovered using DNS queries in
1950
- # VPCs and using the `DiscoverInstances` API.
2026
+ # : Instances can be discovered using public DNS queries and using the
2027
+ # `DiscoverInstances` API.
2028
+ #
2029
+ # DNS\_PRIVATE
2030
+ #
2031
+ # : Instances can be discovered using DNS queries in VPCs and using
2032
+ # the `DiscoverInstances` API.
1951
2033
  # @return [String]
1952
2034
  #
1953
2035
  # @!attribute [rw] description
@@ -1973,7 +2055,7 @@ module Aws::ServiceDiscovery
1973
2055
  #
1974
2056
  # @!attribute [rw] creator_request_id
1975
2057
  # A unique string that identifies the request and that allows failed
1976
- # requests to be retried without the risk of executing an operation
2058
+ # requests to be retried without the risk of running an operation
1977
2059
  # twice.
1978
2060
  # @return [String]
1979
2061
  #
@@ -2045,14 +2127,20 @@ module Aws::ServiceDiscovery
2045
2127
  # `ListNamespaces` returns a namespace. Valid values for `condition`
2046
2128
  # include:
2047
2129
  #
2048
- # * `EQ`\: When you specify `EQ` for the condition, you can choose to
2049
- # list only public namespaces or private namespaces, but not both.
2050
- # `EQ` is the default condition and can be omitted.
2130
+ # EQ
2131
+ #
2132
+ # : When you specify `EQ` for the condition, you can choose to list
2133
+ # only public namespaces or private namespaces, but not both. `EQ`
2134
+ # is the default condition and can be omitted.
2135
+ #
2136
+ # IN
2051
2137
  #
2052
- # * `IN`\: When you specify `IN` for the condition, you can choose to
2053
- # list public namespaces, private namespaces, or both.
2138
+ # : When you specify `IN` for the condition, you can choose to list
2139
+ # public namespaces, private namespaces, or both.
2054
2140
  #
2055
- # * `BETWEEN`\: Not applicable
2141
+ # BETWEEN
2142
+ #
2143
+ # : Not applicable
2056
2144
  # @return [String]
2057
2145
  #
2058
2146
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/NamespaceFilter AWS API Documentation
@@ -2129,8 +2217,7 @@ module Aws::ServiceDiscovery
2129
2217
  # @return [Integer]
2130
2218
  #
2131
2219
  # @!attribute [rw] properties
2132
- # A complex type that contains information that is specific to the
2133
- # namespace type.
2220
+ # The properties of the namespace.
2134
2221
  # @return [Types::NamespaceProperties]
2135
2222
  #
2136
2223
  # @!attribute [rw] create_date
@@ -2165,15 +2252,21 @@ module Aws::ServiceDiscovery
2165
2252
  # @!attribute [rw] status
2166
2253
  # The status of the operation. Values include the following:
2167
2254
  #
2168
- # * **SUBMITTED**\: This is the initial state immediately after you
2169
- # submit a request.
2255
+ # SUBMITTED
2170
2256
  #
2171
- # * **PENDING**\: AWS Cloud Map is performing the operation.
2257
+ # : This is the initial state immediately after you submit a request.
2172
2258
  #
2173
- # * **SUCCESS**\: The operation succeeded.
2259
+ # PENDING
2174
2260
  #
2175
- # * **FAIL**\: The operation failed. For the failure reason, see
2176
- # `ErrorMessage`.
2261
+ # : AWS Cloud Map is performing the operation.
2262
+ #
2263
+ # SUCCESS
2264
+ #
2265
+ # : The operation succeeded.
2266
+ #
2267
+ # FAIL
2268
+ #
2269
+ # : The operation failed. For the failure reason, see `ErrorMessage`.
2177
2270
  # @return [String]
2178
2271
  #
2179
2272
  # @!attribute [rw] error_message
@@ -2219,14 +2312,17 @@ module Aws::ServiceDiscovery
2219
2312
  # @!attribute [rw] targets
2220
2313
  # The name of the target entity that is associated with the operation:
2221
2314
  #
2222
- # * **NAMESPACE**\: The namespace ID is returned in the `ResourceId`
2223
- # property.
2315
+ # NAMESPACE
2224
2316
  #
2225
- # * **SERVICE**\: The service ID is returned in the `ResourceId`
2226
- # property.
2317
+ # : The namespace ID is returned in the `ResourceId` property.
2227
2318
  #
2228
- # * **INSTANCE**\: The instance ID is returned in the `ResourceId`
2229
- # property.
2319
+ # SERVICE
2320
+ #
2321
+ # : The service ID is returned in the `ResourceId` property.
2322
+ #
2323
+ # INSTANCE
2324
+ #
2325
+ # : The instance ID is returned in the `ResourceId` property.
2230
2326
  # @return [Hash<String,String>]
2231
2327
  #
2232
2328
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Operation AWS API Documentation
@@ -2375,7 +2471,7 @@ module Aws::ServiceDiscovery
2375
2471
  #
2376
2472
  # {
2377
2473
  # service_id: "ResourceId", # required
2378
- # instance_id: "ResourceId", # required
2474
+ # instance_id: "InstanceId", # required
2379
2475
  # creator_request_id: "ResourceId",
2380
2476
  # attributes: { # required
2381
2477
  # "AttrKey" => "AttrValue",
@@ -2442,101 +2538,102 @@ module Aws::ServiceDiscovery
2442
2538
  #
2443
2539
  # Supported attribute keys include the following:
2444
2540
  #
2445
- # **AWS\_ALIAS\_DNS\_NAME**
2541
+ # AWS\_ALIAS\_DNS\_NAME
2446
2542
  #
2447
- # If you want AWS Cloud Map to create an Amazon Route 53 alias record
2448
- # that routes traffic to an Elastic Load Balancing load balancer,
2449
- # specify the DNS name that is associated with the load balancer. For
2450
- # information about how to get the DNS name, see "DNSName" in the
2451
- # topic [AliasTarget][1] in the *Route 53 API Reference*.
2543
+ # : If you want AWS Cloud Map to create an Amazon Route 53 alias
2544
+ # record that routes traffic to an Elastic Load Balancing load
2545
+ # balancer, specify the DNS name that is associated with the load
2546
+ # balancer. For information about how to get the DNS name, see
2547
+ # "DNSName" in the topic [AliasTarget][1] in the *Route 53 API
2548
+ # Reference*.
2452
2549
  #
2453
- # Note the following:
2550
+ # Note the following:
2454
2551
  #
2455
- # * The configuration for the service that is specified by `ServiceId`
2456
- # must include settings for an `A` record, an `AAAA` record, or
2457
- # both.
2552
+ # * The configuration for the service that is specified by
2553
+ # `ServiceId` must include settings for an `A` record, an `AAAA`
2554
+ # record, or both.
2458
2555
  #
2459
- # * In the service that is specified by `ServiceId`, the value of
2460
- # `RoutingPolicy` must be `WEIGHTED`.
2556
+ # * In the service that is specified by `ServiceId`, the value of
2557
+ # `RoutingPolicy` must be `WEIGHTED`.
2461
2558
  #
2462
- # * If the service that is specified by `ServiceId` includes
2463
- # `HealthCheckConfig` settings, AWS Cloud Map will create the
2464
- # Route 53 health check, but it won't associate the health check
2465
- # with the alias record.
2559
+ # * If the service that is specified by `ServiceId` includes
2560
+ # `HealthCheckConfig` settings, AWS Cloud Map will create the
2561
+ # Route 53 health check, but it doesn't associate the health
2562
+ # check with the alias record.
2466
2563
  #
2467
- # * Auto naming currently doesn't support creating alias records that
2468
- # route traffic to AWS resources other than Elastic Load Balancing
2469
- # load balancers.
2564
+ # * Auto naming currently doesn't support creating alias records
2565
+ # that route traffic to AWS resources other than Elastic Load
2566
+ # Balancing load balancers.
2470
2567
  #
2471
- # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
2472
- # values for any of the `AWS_INSTANCE` attributes.
2568
+ # * If you specify a value for `AWS_ALIAS_DNS_NAME`, don't specify
2569
+ # values for any of the `AWS_INSTANCE` attributes.
2473
2570
  #
2474
- # **AWS\_EC2\_INSTANCE\_ID**
2571
+ # AWS\_EC2\_INSTANCE\_ID
2475
2572
  #
2476
- # *HTTP namespaces only.* The Amazon EC2 instance ID for the instance.
2477
- # If the `AWS_EC2_INSTANCE_ID` attribute is specified, then the only
2478
- # other attribute that can be specified is `AWS_INIT_HEALTH_STATUS`.
2479
- # When the `AWS_EC2_INSTANCE_ID` attribute is specified, then the
2480
- # `AWS_INSTANCE_IPV4` attribute will be filled out with the primary
2481
- # private IPv4 address.
2573
+ # : *HTTP namespaces only.* The Amazon EC2 instance ID for the
2574
+ # instance. If the `AWS_EC2_INSTANCE_ID` attribute is specified,
2575
+ # then the only other attribute that can be specified is
2576
+ # `AWS_INIT_HEALTH_STATUS`. When the `AWS_EC2_INSTANCE_ID` attribute
2577
+ # is specified, then the `AWS_INSTANCE_IPV4` attribute will be
2578
+ # filled out with the primary private IPv4 address.
2482
2579
  #
2483
- # **AWS\_INIT\_HEALTH\_STATUS**
2580
+ # AWS\_INIT\_HEALTH\_STATUS
2484
2581
  #
2485
- # If the service configuration includes `HealthCheckCustomConfig`, you
2486
- # can optionally use `AWS_INIT_HEALTH_STATUS` to specify the initial
2487
- # status of the custom health check, `HEALTHY` or `UNHEALTHY`. If you
2488
- # don't specify a value for `AWS_INIT_HEALTH_STATUS`, the initial
2489
- # status is `HEALTHY`.
2582
+ # : If the service configuration includes `HealthCheckCustomConfig`,
2583
+ # you can optionally use `AWS_INIT_HEALTH_STATUS` to specify the
2584
+ # initial status of the custom health check, `HEALTHY` or
2585
+ # `UNHEALTHY`. If you don't specify a value for
2586
+ # `AWS_INIT_HEALTH_STATUS`, the initial status is `HEALTHY`.
2490
2587
  #
2491
- # **AWS\_INSTANCE\_CNAME**
2588
+ # AWS\_INSTANCE\_CNAME
2492
2589
  #
2493
- # If the service configuration includes a `CNAME` record, the domain
2494
- # name that you want Route 53 to return in response to DNS queries,
2495
- # for example, `example.com`.
2590
+ # : If the service configuration includes a `CNAME` record, the domain
2591
+ # name that you want Route 53 to return in response to DNS queries,
2592
+ # for example, `example.com`.
2496
2593
  #
2497
- # This value is required if the service specified by `ServiceId`
2498
- # includes settings for an `CNAME` record.
2594
+ # This value is required if the service specified by `ServiceId`
2595
+ # includes settings for an `CNAME` record.
2499
2596
  #
2500
- # **AWS\_INSTANCE\_IPV4**
2597
+ # AWS\_INSTANCE\_IPV4
2501
2598
  #
2502
- # If the service configuration includes an `A` record, the IPv4
2503
- # address that you want Route 53 to return in response to DNS queries,
2504
- # for example, `192.0.2.44`.
2599
+ # : If the service configuration includes an `A` record, the IPv4
2600
+ # address that you want Route 53 to return in response to DNS
2601
+ # queries, for example, `192.0.2.44`.
2505
2602
  #
2506
- # This value is required if the service specified by `ServiceId`
2507
- # includes settings for an `A` record. If the service includes
2508
- # settings for an `SRV` record, you must specify a value for
2509
- # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
2603
+ # This value is required if the service specified by `ServiceId`
2604
+ # includes settings for an `A` record. If the service includes
2605
+ # settings for an `SRV` record, you must specify a value for
2606
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
2510
2607
  #
2511
- # **AWS\_INSTANCE\_IPV6**
2608
+ # AWS\_INSTANCE\_IPV6
2512
2609
  #
2513
- # If the service configuration includes an `AAAA` record, the IPv6
2514
- # address that you want Route 53 to return in response to DNS queries,
2515
- # for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
2610
+ # : If the service configuration includes an `AAAA` record, the IPv6
2611
+ # address that you want Route 53 to return in response to DNS
2612
+ # queries, for example, `2001:0db8:85a3:0000:0000:abcd:0001:2345`.
2516
2613
  #
2517
- # This value is required if the service specified by `ServiceId`
2518
- # includes settings for an `AAAA` record. If the service includes
2519
- # settings for an `SRV` record, you must specify a value for
2520
- # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
2614
+ # This value is required if the service specified by `ServiceId`
2615
+ # includes settings for an `AAAA` record. If the service includes
2616
+ # settings for an `SRV` record, you must specify a value for
2617
+ # `AWS_INSTANCE_IPV4`, `AWS_INSTANCE_IPV6`, or both.
2521
2618
  #
2522
- # **AWS\_INSTANCE\_PORT**
2619
+ # AWS\_INSTANCE\_PORT
2523
2620
  #
2524
- # If the service includes an `SRV` record, the value that you want
2525
- # Route 53 to return for the port.
2621
+ # : If the service includes an `SRV` record, the value that you want
2622
+ # Route 53 to return for the port.
2526
2623
  #
2527
- # If the service includes `HealthCheckConfig`, the port on the
2528
- # endpoint that you want Route 53 to send requests to.
2624
+ # If the service includes `HealthCheckConfig`, the port on the
2625
+ # endpoint that you want Route 53 to send requests to.
2529
2626
  #
2530
- # This value is required if you specified settings for an `SRV` record
2531
- # or a Route 53 health check when you created the service.
2627
+ # This value is required if you specified settings for an `SRV`
2628
+ # record or a Route 53 health check when you created the service.
2532
2629
  #
2533
- # **Custom attributes**
2630
+ # Custom attributes
2534
2631
  #
2535
- # You can add up to 30 custom attributes. For each key-value pair, the
2536
- # maximum length of the attribute name is 255 characters, and the
2537
- # maximum length of the attribute value is 1,024 characters. The total
2538
- # size of all provided attributes (sum of all keys and values) must
2539
- # not exceed 5,000 characters.
2632
+ # : You can add up to 30 custom attributes. For each key-value pair,
2633
+ # the maximum length of the attribute name is 255 characters, and
2634
+ # the maximum length of the attribute value is 1,024 characters. The
2635
+ # total size of all provided attributes (sum of all keys and values)
2636
+ # must not exceed 5,000 characters.
2540
2637
  #
2541
2638
  #
2542
2639
  #
@@ -2671,6 +2768,25 @@ module Aws::ServiceDiscovery
2671
2768
  # instance.
2672
2769
  # @return [Types::DnsConfig]
2673
2770
  #
2771
+ # @!attribute [rw] type
2772
+ # Describes the systems that can be used to discover the service
2773
+ # instances.
2774
+ #
2775
+ # DNS\_HTTP
2776
+ #
2777
+ # : The service instances can be discovered using either DNS queries
2778
+ # or the `DiscoverInstances` API operation.
2779
+ #
2780
+ # HTTP
2781
+ #
2782
+ # : The service instances can only be discovered using the
2783
+ # `DiscoverInstances` API operation.
2784
+ #
2785
+ # DNS
2786
+ #
2787
+ # : Reserved.
2788
+ # @return [String]
2789
+ #
2674
2790
  # @!attribute [rw] health_check_config
2675
2791
  # *Public DNS and HTTP namespaces only.* A complex type that contains
2676
2792
  # settings for an optional health check. If you specify settings for a
@@ -2702,9 +2818,9 @@ module Aws::ServiceDiscovery
2702
2818
  #
2703
2819
  # @!attribute [rw] creator_request_id
2704
2820
  # A unique string that identifies the request and that allows failed
2705
- # requests to be retried without the risk of executing the operation
2821
+ # requests to be retried without the risk of running the operation
2706
2822
  # twice. `CreatorRequestId` can be any unique string, for example, a
2707
- # date/time stamp.
2823
+ # date/timestamp.
2708
2824
  # @return [String]
2709
2825
  #
2710
2826
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/Service AWS API Documentation
@@ -2717,6 +2833,7 @@ module Aws::ServiceDiscovery
2717
2833
  :description,
2718
2834
  :instance_count,
2719
2835
  :dns_config,
2836
+ :type,
2720
2837
  :health_check_config,
2721
2838
  :health_check_custom_config,
2722
2839
  :create_date,
@@ -2776,81 +2893,15 @@ module Aws::ServiceDiscovery
2776
2893
  # @return [String]
2777
2894
  #
2778
2895
  # @!attribute [rw] dns_config
2779
- # A complex type that contains information about the Route 53 DNS
2780
- # records that you want AWS Cloud Map to create when you register an
2781
- # instance.
2896
+ # Information about the Route 53 DNS records that you want AWS Cloud
2897
+ # Map to create when you register an instance.
2782
2898
  # @return [Types::DnsConfigChange]
2783
2899
  #
2784
2900
  # @!attribute [rw] health_check_config
2785
- # *Public DNS and HTTP namespaces only.* A complex type that contains
2786
- # settings for an optional health check. If you specify settings for a
2787
- # health check, AWS Cloud Map associates the health check with the
2788
- # records that you specify in `DnsConfig`.
2789
- #
2790
- # If you specify a health check configuration, you can specify either
2791
- # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
2792
- #
2793
- # Health checks are basic Route 53 health checks that monitor an AWS
2794
- # endpoint. For information about pricing for health checks, see
2795
- # [Amazon Route 53 Pricing][1].
2796
- #
2797
- # Note the following about configuring health checks.
2798
- #
2799
- # <b> <code>A</code> and <code>AAAA</code> records</b>
2800
- #
2801
- # If `DnsConfig` includes configurations for both `A` and `AAAA`
2802
- # records, AWS Cloud Map creates a health check that uses the IPv4
2803
- # address to check the health of the resource. If the endpoint that is
2804
- # specified by the IPv4 address is unhealthy, Route 53 considers both
2805
- # the `A` and `AAAA` records to be unhealthy.
2806
- #
2807
- # <b> <code>CNAME</code> records</b>
2808
- #
2809
- # You can't specify settings for `HealthCheckConfig` when the
2810
- # `DNSConfig` includes `CNAME` for the value of `Type`. If you do, the
2811
- # `CreateService` request will fail with an `InvalidInput` error.
2812
- #
2813
- # **Request interval**
2814
- #
2815
- # A Route 53 health checker in each health-checking region sends a
2816
- # health check request to an endpoint every 30 seconds. On average,
2817
- # your endpoint receives a health check request about every two
2818
- # seconds. However, health checkers don't coordinate with one
2819
- # another, so you'll sometimes see several requests per second
2820
- # followed by a few seconds with no health checks at all.
2821
- #
2822
- # **Health checking regions**
2823
- #
2824
- # Health checkers perform checks from all Route 53 health-checking
2825
- # regions. For a list of the current regions, see [Regions][2].
2826
- #
2827
- # **Alias records**
2828
- #
2829
- # When you register an instance, if you include the
2830
- # `AWS_ALIAS_DNS_NAME` attribute, AWS Cloud Map creates a Route 53
2831
- # alias record. Note the following:
2832
- #
2833
- # * Route 53 automatically sets `EvaluateTargetHealth` to true for
2834
- # alias records. When `EvaluateTargetHealth` is true, the alias
2835
- # record inherits the health of the referenced AWS resource. such as
2836
- # an ELB load balancer. For more information, see
2837
- # [EvaluateTargetHealth][3].
2838
- #
2839
- # * If you include `HealthCheckConfig` and then use the service to
2840
- # register an instance that creates an alias record, Route 53
2841
- # doesn't create the health check.
2842
- #
2843
- # **Charges for health checks**
2844
- #
2845
- # Health checks are basic Route 53 health checks that monitor an AWS
2846
- # endpoint. For information about pricing for health checks, see
2847
- # [Amazon Route 53 Pricing][1].
2848
- #
2849
- #
2850
- #
2851
- # [1]: http://aws.amazon.com/route53/pricing/
2852
- # [2]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
2853
- # [3]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
2901
+ # *Public DNS and HTTP namespaces only.* Settings for an optional
2902
+ # health check. If you specify settings for a health check, AWS Cloud
2903
+ # Map associates the health check with the records that you specify in
2904
+ # `DnsConfig`.
2854
2905
  # @return [Types::HealthCheckConfig]
2855
2906
  #
2856
2907
  # @see http://docs.aws.amazon.com/goto/WebAPI/servicediscovery-2017-03-14/ServiceChange AWS API Documentation
@@ -2938,6 +2989,25 @@ module Aws::ServiceDiscovery
2938
2989
  # The name of the service.
2939
2990
  # @return [String]
2940
2991
  #
2992
+ # @!attribute [rw] type
2993
+ # Describes the systems that can be used to discover the service
2994
+ # instances.
2995
+ #
2996
+ # DNS\_HTTP
2997
+ #
2998
+ # : The service instances can be discovered using either DNS queries
2999
+ # or the `DiscoverInstances` API operation.
3000
+ #
3001
+ # HTTP
3002
+ #
3003
+ # : The service instances can only be discovered using the
3004
+ # `DiscoverInstances` API operation.
3005
+ #
3006
+ # DNS
3007
+ #
3008
+ # : Reserved.
3009
+ # @return [String]
3010
+ #
2941
3011
  # @!attribute [rw] description
2942
3012
  # The description that you specify when you create the service.
2943
3013
  # @return [String]
@@ -2950,88 +3020,22 @@ module Aws::ServiceDiscovery
2950
3020
  # @return [Integer]
2951
3021
  #
2952
3022
  # @!attribute [rw] dns_config
2953
- # A complex type that contains information about the Amazon Route 53
2954
- # DNS records that you want AWS Cloud Map to create when you register
2955
- # an instance.
3023
+ # Information about the Route 53 DNS records that you want AWS Cloud
3024
+ # Map to create when you register an instance.
2956
3025
  # @return [Types::DnsConfig]
2957
3026
  #
2958
3027
  # @!attribute [rw] health_check_config
2959
- # *Public DNS and HTTP namespaces only.* A complex type that contains
2960
- # settings for an optional health check. If you specify settings for a
2961
- # health check, AWS Cloud Map associates the health check with the
2962
- # records that you specify in `DnsConfig`.
2963
- #
2964
- # If you specify a health check configuration, you can specify either
2965
- # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
2966
- #
2967
- # Health checks are basic Route 53 health checks that monitor an AWS
2968
- # endpoint. For information about pricing for health checks, see
2969
- # [Amazon Route 53 Pricing][1].
2970
- #
2971
- # Note the following about configuring health checks.
2972
- #
2973
- # <b> <code>A</code> and <code>AAAA</code> records</b>
2974
- #
2975
- # If `DnsConfig` includes configurations for both `A` and `AAAA`
2976
- # records, AWS Cloud Map creates a health check that uses the IPv4
2977
- # address to check the health of the resource. If the endpoint that is
2978
- # specified by the IPv4 address is unhealthy, Route 53 considers both
2979
- # the `A` and `AAAA` records to be unhealthy.
2980
- #
2981
- # <b> <code>CNAME</code> records</b>
2982
- #
2983
- # You can't specify settings for `HealthCheckConfig` when the
2984
- # `DNSConfig` includes `CNAME` for the value of `Type`. If you do, the
2985
- # `CreateService` request will fail with an `InvalidInput` error.
2986
- #
2987
- # **Request interval**
2988
- #
2989
- # A Route 53 health checker in each health-checking region sends a
2990
- # health check request to an endpoint every 30 seconds. On average,
2991
- # your endpoint receives a health check request about every two
2992
- # seconds. However, health checkers don't coordinate with one
2993
- # another, so you'll sometimes see several requests per second
2994
- # followed by a few seconds with no health checks at all.
2995
- #
2996
- # **Health checking regions**
2997
- #
2998
- # Health checkers perform checks from all Route 53 health-checking
2999
- # regions. For a list of the current regions, see [Regions][2].
3000
- #
3001
- # **Alias records**
3002
- #
3003
- # When you register an instance, if you include the
3004
- # `AWS_ALIAS_DNS_NAME` attribute, AWS Cloud Map creates a Route 53
3005
- # alias record. Note the following:
3006
- #
3007
- # * Route 53 automatically sets `EvaluateTargetHealth` to true for
3008
- # alias records. When `EvaluateTargetHealth` is true, the alias
3009
- # record inherits the health of the referenced AWS resource. such as
3010
- # an ELB load balancer. For more information, see
3011
- # [EvaluateTargetHealth][3].
3012
- #
3013
- # * If you include `HealthCheckConfig` and then use the service to
3014
- # register an instance that creates an alias record, Route 53
3015
- # doesn't create the health check.
3016
- #
3017
- # **Charges for health checks**
3018
- #
3019
- # Health checks are basic Route 53 health checks that monitor an AWS
3020
- # endpoint. For information about pricing for health checks, see
3021
- # [Amazon Route 53 Pricing][1].
3022
- #
3023
- #
3024
- #
3025
- # [1]: http://aws.amazon.com/route53/pricing/
3026
- # [2]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_HealthCheckConfig.html#Route53-Type-HealthCheckConfig-Regions
3027
- # [3]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_AliasTarget.html#Route53-Type-AliasTarget-EvaluateTargetHealth
3028
+ # *Public DNS and HTTP namespaces only.* Settings for an optional
3029
+ # health check. If you specify settings for a health check, AWS Cloud
3030
+ # Map associates the health check with the records that you specify in
3031
+ # `DnsConfig`.
3028
3032
  # @return [Types::HealthCheckConfig]
3029
3033
  #
3030
3034
  # @!attribute [rw] health_check_custom_config
3031
- # A complex type that contains information about an optional custom
3032
- # health check. A custom health check, which requires that you use a
3033
- # third-party health checker to evaluate the health of your resources,
3034
- # is useful in the following circumstances:
3035
+ # Information about an optional custom health check. A custom health
3036
+ # check, which requires that you use a third-party health checker to
3037
+ # evaluate the health of your resources, is useful in the following
3038
+ # circumstances:
3035
3039
  #
3036
3040
  # * You can't use a health check that is defined by
3037
3041
  # `HealthCheckConfig` because the resource isn't available over the
@@ -3044,48 +3048,6 @@ module Aws::ServiceDiscovery
3044
3048
  #
3045
3049
  # If you specify a health check configuration, you can specify either
3046
3050
  # `HealthCheckCustomConfig` or `HealthCheckConfig` but not both.
3047
- #
3048
- # To change the status of a custom health check, submit an
3049
- # `UpdateInstanceCustomHealthStatus` request. AWS Cloud Map doesn't
3050
- # monitor the status of the resource, it just keeps a record of the
3051
- # status specified in the most recent
3052
- # `UpdateInstanceCustomHealthStatus` request.
3053
- #
3054
- # Here's how custom health checks work:
3055
- #
3056
- # 1. You create a service and specify a value for `FailureThreshold`.
3057
- #
3058
- # The failure threshold indicates the number of 30-second
3059
- # intervals you want AWS Cloud Map to wait between the time that
3060
- # your application sends an [UpdateInstanceCustomHealthStatus][1]
3061
- # request and the time that AWS Cloud Map stops routing internet
3062
- # traffic to the corresponding resource.
3063
- #
3064
- # 2. You register an instance.
3065
- #
3066
- # 3. You configure a third-party health checker to monitor the
3067
- # resource that is associated with the new instance.
3068
- #
3069
- # <note markdown="1"> AWS Cloud Map doesn't check the health of the resource
3070
- # directly.
3071
- #
3072
- # </note>
3073
- #
3074
- # 4. The third-party health-checker determines that the resource is
3075
- # unhealthy and notifies your application.
3076
- #
3077
- # 5. Your application submits an `UpdateInstanceCustomHealthStatus`
3078
- # request.
3079
- #
3080
- # 6. AWS Cloud Map waits for (`FailureThreshold` x 30) seconds.
3081
- #
3082
- # 7. If another `UpdateInstanceCustomHealthStatus` request doesn't
3083
- # arrive during that time to change the status back to healthy,
3084
- # AWS Cloud Map stops routing traffic to the resource.
3085
- #
3086
- #
3087
- #
3088
- # [1]: https://docs.aws.amazon.com/cloud-map/latest/api/API_UpdateInstanceCustomHealthStatus.html
3089
3051
  # @return [Types::HealthCheckCustomConfig]
3090
3052
  #
3091
3053
  # @!attribute [rw] create_date
@@ -3098,6 +3060,7 @@ module Aws::ServiceDiscovery
3098
3060
  :id,
3099
3061
  :arn,
3100
3062
  :name,
3063
+ :type,
3101
3064
  :description,
3102
3065
  :instance_count,
3103
3066
  :dns_config,