aws-sdk-globalaccelerator 1.0.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.
@@ -0,0 +1,14 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::GlobalAccelerator
9
+ module Errors
10
+
11
+ extend Aws::Errors::DynamicErrors
12
+
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::GlobalAccelerator
9
+ class Resource
10
+
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
16
+
17
+ # @return [Client]
18
+ def client
19
+ @client
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,1171 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws::GlobalAccelerator
9
+ module Types
10
+
11
+ # An accelerator is a complex type that includes one or more listeners
12
+ # that process inbound connections and then direct traffic to one or
13
+ # more endpoint groups, each of which includes endpoints, such as load
14
+ # balancers.
15
+ #
16
+ # @!attribute [rw] accelerator_arn
17
+ # The Amazon Resource Name (ARN) of the accelerator.
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] name
21
+ # The name of the accelerator. The name can have a maximum of 32
22
+ # characters, must contain only alphanumeric characters or hyphens
23
+ # (-), and must not begin or end with a hyphen.
24
+ # @return [String]
25
+ #
26
+ # @!attribute [rw] ip_address_type
27
+ # The value for the address type must be IPv4.
28
+ # @return [String]
29
+ #
30
+ # @!attribute [rw] enabled
31
+ # Indicates whether theaccelerator is enabled. The value is true or
32
+ # false. The default value is true.
33
+ #
34
+ # If the value is set to true, the accelerator cannot be deleted. If
35
+ # set to false, accelerator can be deleted.
36
+ # @return [Boolean]
37
+ #
38
+ # @!attribute [rw] ip_sets
39
+ # IP address set associated with the accelerator.
40
+ # @return [Array<Types::IpSet>]
41
+ #
42
+ # @!attribute [rw] status
43
+ # Describes the deployment status of the accelerator.
44
+ # @return [String]
45
+ #
46
+ # @!attribute [rw] created_time
47
+ # The date and time that the accelerator was created.
48
+ # @return [Time]
49
+ #
50
+ # @!attribute [rw] last_modified_time
51
+ # The date and time that the accelerator was last modified.
52
+ # @return [Time]
53
+ #
54
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/Accelerator AWS API Documentation
55
+ #
56
+ class Accelerator < Struct.new(
57
+ :accelerator_arn,
58
+ :name,
59
+ :ip_address_type,
60
+ :enabled,
61
+ :ip_sets,
62
+ :status,
63
+ :created_time,
64
+ :last_modified_time)
65
+ include Aws::Structure
66
+ end
67
+
68
+ # Attributes of an accelerator.
69
+ #
70
+ # @!attribute [rw] flow_logs_enabled
71
+ # Indicates whether flow logs are enabled. The value is true or false.
72
+ # The default value is false. If the value is true, FlowLogsS3Bucket
73
+ # and FlowLogsS3Prefix must be specified.
74
+ # @return [Boolean]
75
+ #
76
+ # @!attribute [rw] flow_logs_s3_bucket
77
+ # The name of the Amazon S3 bucket for the flow logs. This attribute
78
+ # is required if flow logs are enabled. The bucket must exist and have
79
+ # a bucket policy that grants AWS Global Accelerator permission to
80
+ # write to the bucket.
81
+ # @return [String]
82
+ #
83
+ # @!attribute [rw] flow_logs_s3_prefix
84
+ # The prefix for the location in the Amazon S3 bucket for the flow
85
+ # logs. If you don’t specify a prefix, the flow logs are stored in the
86
+ # root of the bucket.
87
+ # @return [String]
88
+ #
89
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/AcceleratorAttributes AWS API Documentation
90
+ #
91
+ class AcceleratorAttributes < Struct.new(
92
+ :flow_logs_enabled,
93
+ :flow_logs_s3_bucket,
94
+ :flow_logs_s3_prefix)
95
+ include Aws::Structure
96
+ end
97
+
98
+ # @note When making an API call, you may pass CreateAcceleratorRequest
99
+ # data as a hash:
100
+ #
101
+ # {
102
+ # name: "GenericString", # required
103
+ # ip_address_type: "IPV4", # accepts IPV4
104
+ # enabled: false,
105
+ # idempotency_token: "IdempotencyToken", # required
106
+ # }
107
+ #
108
+ # @!attribute [rw] name
109
+ # The name of an accelerator. The name can have a maximum of 32
110
+ # characters, must contain only alphanumeric characters or hyphens
111
+ # (-), and must not begin or end with a hyphen.
112
+ # @return [String]
113
+ #
114
+ # @!attribute [rw] ip_address_type
115
+ # The value for the address type must be IPv4.
116
+ # @return [String]
117
+ #
118
+ # @!attribute [rw] enabled
119
+ # Indicates whether an accelerator is enabled. The value is true or
120
+ # false. The default value is true.
121
+ #
122
+ # If the value is set to true, an accelerator cannot be deleted. If
123
+ # set to false, the accelerator can be deleted.
124
+ # @return [Boolean]
125
+ #
126
+ # @!attribute [rw] idempotency_token
127
+ # A unique, case-sensitive identifier that you provide to ensure the
128
+ # idempotency—that is, the uniqueness—of an accelerator.
129
+ # @return [String]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateAcceleratorRequest AWS API Documentation
132
+ #
133
+ class CreateAcceleratorRequest < Struct.new(
134
+ :name,
135
+ :ip_address_type,
136
+ :enabled,
137
+ :idempotency_token)
138
+ include Aws::Structure
139
+ end
140
+
141
+ # @!attribute [rw] accelerator
142
+ # The accelerator that is created by specifying a listener and the
143
+ # supported IP address types.
144
+ # @return [Types::Accelerator]
145
+ #
146
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateAcceleratorResponse AWS API Documentation
147
+ #
148
+ class CreateAcceleratorResponse < Struct.new(
149
+ :accelerator)
150
+ include Aws::Structure
151
+ end
152
+
153
+ # @note When making an API call, you may pass CreateEndpointGroupRequest
154
+ # data as a hash:
155
+ #
156
+ # {
157
+ # listener_arn: "GenericString", # required
158
+ # endpoint_group_region: "GenericString", # required
159
+ # endpoint_configurations: [
160
+ # {
161
+ # endpoint_id: "GenericString",
162
+ # weight: 1,
163
+ # },
164
+ # ],
165
+ # traffic_dial_percentage: 1.0,
166
+ # health_check_port: 1,
167
+ # health_check_protocol: "TCP", # accepts TCP, HTTP, HTTPS
168
+ # health_check_path: "GenericString",
169
+ # health_check_interval_seconds: 1,
170
+ # threshold_count: 1,
171
+ # idempotency_token: "IdempotencyToken", # required
172
+ # }
173
+ #
174
+ # @!attribute [rw] listener_arn
175
+ # The Amazon Resource Name (ARN) of the listener.
176
+ # @return [String]
177
+ #
178
+ # @!attribute [rw] endpoint_group_region
179
+ # The name of the AWS Region where the endpoint group is located. A
180
+ # listener can have only one endpoint group in a specific Region.
181
+ # @return [String]
182
+ #
183
+ # @!attribute [rw] endpoint_configurations
184
+ # The list of endpoint objects.
185
+ # @return [Array<Types::EndpointConfiguration>]
186
+ #
187
+ # @!attribute [rw] traffic_dial_percentage
188
+ # The percentage of traffic to send to an AWS Region. Additional
189
+ # traffic is distributed to other endpoint groups for this listener.
190
+ #
191
+ # Use this action to increase (dial up) or decrease (dial down)
192
+ # traffic to a specific Region. The percentage is applied to the
193
+ # traffic that would otherwise have been routed to the Region based on
194
+ # optimal routing.
195
+ #
196
+ # The default value is 100.
197
+ # @return [Float]
198
+ #
199
+ # @!attribute [rw] health_check_port
200
+ # The port that AWS Global Accelerator uses to check the health of
201
+ # endpoints that are part of this endpoint group. The default port is
202
+ # the listener port that this endpoint group is associated with. If
203
+ # listener port is a list of ports, Global Accelerator uses the first
204
+ # port in the list.
205
+ # @return [Integer]
206
+ #
207
+ # @!attribute [rw] health_check_protocol
208
+ # The protocol that AWS Global Accelerator uses to check the health of
209
+ # endpoints that are part of this endpoint group. The default value is
210
+ # TCP.
211
+ # @return [String]
212
+ #
213
+ # @!attribute [rw] health_check_path
214
+ # If the protocol is HTTP/S, then this specifies the path that is the
215
+ # destination for health check targets. The default value is slash
216
+ # (/).
217
+ # @return [String]
218
+ #
219
+ # @!attribute [rw] health_check_interval_seconds
220
+ # The time, in seconds, between each health check for an endpoint. The
221
+ # default value is 30.
222
+ # @return [Integer]
223
+ #
224
+ # @!attribute [rw] threshold_count
225
+ # The number of consecutive health checks required to set the state of
226
+ # a healthy endpoint to unhealthy, or to set an unhealthy endpoint to
227
+ # healthy. The default value is 3.
228
+ # @return [Integer]
229
+ #
230
+ # @!attribute [rw] idempotency_token
231
+ # A unique, case-sensitive identifier that you provide to ensure the
232
+ # idempotency—that is, the uniqueness—of the request.
233
+ # @return [String]
234
+ #
235
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateEndpointGroupRequest AWS API Documentation
236
+ #
237
+ class CreateEndpointGroupRequest < Struct.new(
238
+ :listener_arn,
239
+ :endpoint_group_region,
240
+ :endpoint_configurations,
241
+ :traffic_dial_percentage,
242
+ :health_check_port,
243
+ :health_check_protocol,
244
+ :health_check_path,
245
+ :health_check_interval_seconds,
246
+ :threshold_count,
247
+ :idempotency_token)
248
+ include Aws::Structure
249
+ end
250
+
251
+ # @!attribute [rw] endpoint_group
252
+ # The information about the endpoint group that was created.
253
+ # @return [Types::EndpointGroup]
254
+ #
255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateEndpointGroupResponse AWS API Documentation
256
+ #
257
+ class CreateEndpointGroupResponse < Struct.new(
258
+ :endpoint_group)
259
+ include Aws::Structure
260
+ end
261
+
262
+ # @note When making an API call, you may pass CreateListenerRequest
263
+ # data as a hash:
264
+ #
265
+ # {
266
+ # accelerator_arn: "GenericString", # required
267
+ # port_ranges: [ # required
268
+ # {
269
+ # from_port: 1,
270
+ # to_port: 1,
271
+ # },
272
+ # ],
273
+ # protocol: "TCP", # required, accepts TCP, UDP
274
+ # client_affinity: "NONE", # accepts NONE, SOURCE_IP
275
+ # idempotency_token: "IdempotencyToken", # required
276
+ # }
277
+ #
278
+ # @!attribute [rw] accelerator_arn
279
+ # The Amazon Resource Name (ARN) of your accelerator.
280
+ # @return [String]
281
+ #
282
+ # @!attribute [rw] port_ranges
283
+ # The list of port ranges to support for connections from clients to
284
+ # your accelerator.
285
+ # @return [Array<Types::PortRange>]
286
+ #
287
+ # @!attribute [rw] protocol
288
+ # The protocol for connections from clients to your accelerator.
289
+ # @return [String]
290
+ #
291
+ # @!attribute [rw] client_affinity
292
+ # Client affinity lets you direct all requests from a user to the same
293
+ # endpoint, if you have stateful applications, regardless of the port
294
+ # and protocol of the client request. Clienty affinity gives you
295
+ # control over whether to always route each client to the same
296
+ # specific endpoint.
297
+ #
298
+ # AWS Global Accelerator uses a consistent-flow hashing algorithm to
299
+ # choose the optimal endpoint for a connection. If client affinity is
300
+ # `NONE`, Global Accelerator uses the "five-tuple" (5-tuple)
301
+ # properties—client IP address, client port, destination IP address,
302
+ # destination port, and protocol—to select the hash value, and then
303
+ # chooses the best endpoint. However, with this setting, if someone
304
+ # uses different ports to connect to Global Accelerator, their
305
+ # connections might not be always routed to the same endpoint because
306
+ # the hash value changes.
307
+ #
308
+ # If you want a given client to always be routed to the same endpoint,
309
+ # set client affinity to `CLIENT_IP` instead. When you use the
310
+ # `CLIENT_IP` setting, Global Accelerator uses the "two-tuple"
311
+ # (2-tuple) properties— client IP address and destination IP
312
+ # address—to select the hash value. For UDP, Global Accelerator always
313
+ # uses two-tuple properties to select the hash value.
314
+ #
315
+ # The default value is `NONE`.
316
+ # @return [String]
317
+ #
318
+ # @!attribute [rw] idempotency_token
319
+ # A unique, case-sensitive identifier that you provide to ensure the
320
+ # idempotency—that is, the uniqueness—of the request.
321
+ # @return [String]
322
+ #
323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateListenerRequest AWS API Documentation
324
+ #
325
+ class CreateListenerRequest < Struct.new(
326
+ :accelerator_arn,
327
+ :port_ranges,
328
+ :protocol,
329
+ :client_affinity,
330
+ :idempotency_token)
331
+ include Aws::Structure
332
+ end
333
+
334
+ # @!attribute [rw] listener
335
+ # The listener that you've created.
336
+ # @return [Types::Listener]
337
+ #
338
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/CreateListenerResponse AWS API Documentation
339
+ #
340
+ class CreateListenerResponse < Struct.new(
341
+ :listener)
342
+ include Aws::Structure
343
+ end
344
+
345
+ # @note When making an API call, you may pass DeleteAcceleratorRequest
346
+ # data as a hash:
347
+ #
348
+ # {
349
+ # accelerator_arn: "GenericString", # required
350
+ # }
351
+ #
352
+ # @!attribute [rw] accelerator_arn
353
+ # The Amazon Resource Name (ARN) of an accelerator.
354
+ # @return [String]
355
+ #
356
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteAcceleratorRequest AWS API Documentation
357
+ #
358
+ class DeleteAcceleratorRequest < Struct.new(
359
+ :accelerator_arn)
360
+ include Aws::Structure
361
+ end
362
+
363
+ # @note When making an API call, you may pass DeleteEndpointGroupRequest
364
+ # data as a hash:
365
+ #
366
+ # {
367
+ # endpoint_group_arn: "GenericString", # required
368
+ # }
369
+ #
370
+ # @!attribute [rw] endpoint_group_arn
371
+ # The Amazon Resource Name (ARN) of the endpoint group to delete.
372
+ # @return [String]
373
+ #
374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteEndpointGroupRequest AWS API Documentation
375
+ #
376
+ class DeleteEndpointGroupRequest < Struct.new(
377
+ :endpoint_group_arn)
378
+ include Aws::Structure
379
+ end
380
+
381
+ # @note When making an API call, you may pass DeleteListenerRequest
382
+ # data as a hash:
383
+ #
384
+ # {
385
+ # listener_arn: "GenericString", # required
386
+ # }
387
+ #
388
+ # @!attribute [rw] listener_arn
389
+ # The Amazon Resource Name (ARN) of the listener.
390
+ # @return [String]
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DeleteListenerRequest AWS API Documentation
393
+ #
394
+ class DeleteListenerRequest < Struct.new(
395
+ :listener_arn)
396
+ include Aws::Structure
397
+ end
398
+
399
+ # @note When making an API call, you may pass DescribeAcceleratorAttributesRequest
400
+ # data as a hash:
401
+ #
402
+ # {
403
+ # accelerator_arn: "GenericString",
404
+ # }
405
+ #
406
+ # @!attribute [rw] accelerator_arn
407
+ # The Amazon Resource Name (ARN) of the accelerator with the
408
+ # attributes that you want to describe.
409
+ # @return [String]
410
+ #
411
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeAcceleratorAttributesRequest AWS API Documentation
412
+ #
413
+ class DescribeAcceleratorAttributesRequest < Struct.new(
414
+ :accelerator_arn)
415
+ include Aws::Structure
416
+ end
417
+
418
+ # @!attribute [rw] accelerator_attributes
419
+ # The attributes of the accelerator.
420
+ # @return [Types::AcceleratorAttributes]
421
+ #
422
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeAcceleratorAttributesResponse AWS API Documentation
423
+ #
424
+ class DescribeAcceleratorAttributesResponse < Struct.new(
425
+ :accelerator_attributes)
426
+ include Aws::Structure
427
+ end
428
+
429
+ # @note When making an API call, you may pass DescribeAcceleratorRequest
430
+ # data as a hash:
431
+ #
432
+ # {
433
+ # accelerator_arn: "GenericString", # required
434
+ # }
435
+ #
436
+ # @!attribute [rw] accelerator_arn
437
+ # The Amazon Resource Name (ARN) of the accelerator to describe.
438
+ # @return [String]
439
+ #
440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeAcceleratorRequest AWS API Documentation
441
+ #
442
+ class DescribeAcceleratorRequest < Struct.new(
443
+ :accelerator_arn)
444
+ include Aws::Structure
445
+ end
446
+
447
+ # @!attribute [rw] accelerator
448
+ # The description of the accelerator.
449
+ # @return [Types::Accelerator]
450
+ #
451
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeAcceleratorResponse AWS API Documentation
452
+ #
453
+ class DescribeAcceleratorResponse < Struct.new(
454
+ :accelerator)
455
+ include Aws::Structure
456
+ end
457
+
458
+ # @note When making an API call, you may pass DescribeEndpointGroupRequest
459
+ # data as a hash:
460
+ #
461
+ # {
462
+ # endpoint_group_arn: "GenericString", # required
463
+ # }
464
+ #
465
+ # @!attribute [rw] endpoint_group_arn
466
+ # The Amazon Resource Name (ARN) of the endpoint group to describe.
467
+ # @return [String]
468
+ #
469
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeEndpointGroupRequest AWS API Documentation
470
+ #
471
+ class DescribeEndpointGroupRequest < Struct.new(
472
+ :endpoint_group_arn)
473
+ include Aws::Structure
474
+ end
475
+
476
+ # @!attribute [rw] endpoint_group
477
+ # The description of an endpoint group.
478
+ # @return [Types::EndpointGroup]
479
+ #
480
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeEndpointGroupResponse AWS API Documentation
481
+ #
482
+ class DescribeEndpointGroupResponse < Struct.new(
483
+ :endpoint_group)
484
+ include Aws::Structure
485
+ end
486
+
487
+ # @note When making an API call, you may pass DescribeListenerRequest
488
+ # data as a hash:
489
+ #
490
+ # {
491
+ # listener_arn: "GenericString", # required
492
+ # }
493
+ #
494
+ # @!attribute [rw] listener_arn
495
+ # The Amazon Resource Name (ARN) of the listener to describe.
496
+ # @return [String]
497
+ #
498
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerRequest AWS API Documentation
499
+ #
500
+ class DescribeListenerRequest < Struct.new(
501
+ :listener_arn)
502
+ include Aws::Structure
503
+ end
504
+
505
+ # @!attribute [rw] listener
506
+ # The description of a listener.
507
+ # @return [Types::Listener]
508
+ #
509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/DescribeListenerResponse AWS API Documentation
510
+ #
511
+ class DescribeListenerResponse < Struct.new(
512
+ :listener)
513
+ include Aws::Structure
514
+ end
515
+
516
+ # A complex type for endpoints.
517
+ #
518
+ # @note When making an API call, you may pass EndpointConfiguration
519
+ # data as a hash:
520
+ #
521
+ # {
522
+ # endpoint_id: "GenericString",
523
+ # weight: 1,
524
+ # }
525
+ #
526
+ # @!attribute [rw] endpoint_id
527
+ # An ID for the endpoint. If the endpoint is a Network Load Balancer
528
+ # or Application Load Balancer, this is the Amazon Resource Name (ARN)
529
+ # of the resource. If the endpoint is an Elastic IP address, this is
530
+ # the Elastic IP address allocation ID.
531
+ # @return [String]
532
+ #
533
+ # @!attribute [rw] weight
534
+ # The weight associated with the endpoint. When you add weights to
535
+ # endpoints, you configure AWS Global Accelerator to route traffic
536
+ # based on proportions that you specify. For example, you might
537
+ # specify endpoint weights of 4, 5, 5, and 6 (sum=20). The result is
538
+ # that 4/20 of your traffic, on average, is routed to the first
539
+ # endpoint, 5/20 is routed both to the second and third endpoints, and
540
+ # 6/20 is routed to the last endpoint. For more information, see
541
+ # [Endpoint Weights][1] in the *AWS Global Accelerator Developer
542
+ # Guide*.
543
+ #
544
+ #
545
+ #
546
+ # [1]: https://docs.awa.amazon.com/global-accelerator/latest/dg/about-endpoints-endpoint-weights.html
547
+ # @return [Integer]
548
+ #
549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/EndpointConfiguration AWS API Documentation
550
+ #
551
+ class EndpointConfiguration < Struct.new(
552
+ :endpoint_id,
553
+ :weight)
554
+ include Aws::Structure
555
+ end
556
+
557
+ # A complex type for an endpoint. Each endpoint group can include one or
558
+ # more endpoints, such as load balancers.
559
+ #
560
+ # @!attribute [rw] endpoint_id
561
+ # An ID for the endpoint. If the endpoint is a Network Load Balancer
562
+ # or Application Load Balancer, this is the Amazon Resource Name (ARN)
563
+ # of the resource. If the endpoint is an Elastic IP address, this is
564
+ # the Elastic IP address allocation ID.
565
+ # @return [String]
566
+ #
567
+ # @!attribute [rw] weight
568
+ # The weight associated with the endpoint. When you add weights to
569
+ # endpoints, you configure AWS Global Accelerator to route traffic
570
+ # based on proportions that you specify. For example, you might
571
+ # specify endpoint weights of 4, 5, 5, and 6 (sum=20). The result is
572
+ # that 4/20 of your traffic, on average, is routed to the first
573
+ # endpoint, 5/20 is routed both to the second and third endpoints, and
574
+ # 6/20 is routed to the last endpoint. For more information, see
575
+ # [Endpoint Weights][1] in the *AWS Global Accelerator Developer
576
+ # Guide*.
577
+ #
578
+ #
579
+ #
580
+ # [1]: https://docs.awa.amazon.com/global-accelerator/latest/dg/about-endpoints-endpoint-weights.html
581
+ # @return [Integer]
582
+ #
583
+ # @!attribute [rw] health_state
584
+ # The health status of the endpoint.
585
+ # @return [String]
586
+ #
587
+ # @!attribute [rw] health_reason
588
+ # The reason code associated with why the endpoint is not healthy. If
589
+ # the endpoint state is healthy, a reason code is not provided.
590
+ #
591
+ # If the endpoint state is **unhealthy**, the reason code can be one
592
+ # of the following values:
593
+ #
594
+ # * **Timeout**\: The health check requests to the endpoint are timing
595
+ # out before returning a status.
596
+ #
597
+ # * **Failed**\: The health check failed, for example because the
598
+ # endpoint response was invalid (malformed).
599
+ #
600
+ # If the endpoint state is **initial**, the reason code can be one of
601
+ # the following values:
602
+ #
603
+ # * **ProvisioningInProgress**\: The endpoint is in the process of
604
+ # being provisioned.
605
+ #
606
+ # * **InitialHealthChecking**\: Global Accelerator is still setting up
607
+ # the minimum number of health checks for the endpoint that are
608
+ # required to determine its health status.
609
+ # @return [String]
610
+ #
611
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/EndpointDescription AWS API Documentation
612
+ #
613
+ class EndpointDescription < Struct.new(
614
+ :endpoint_id,
615
+ :weight,
616
+ :health_state,
617
+ :health_reason)
618
+ include Aws::Structure
619
+ end
620
+
621
+ # A complex type for the endpoint group. An AWS Region can have only one
622
+ # endpoint group for a specific listener.
623
+ #
624
+ # @!attribute [rw] endpoint_group_arn
625
+ # The Amazon Resource Name (ARN) of the endpoint group.
626
+ # @return [String]
627
+ #
628
+ # @!attribute [rw] endpoint_group_region
629
+ # The AWS Region that this endpoint group belongs.
630
+ # @return [String]
631
+ #
632
+ # @!attribute [rw] endpoint_descriptions
633
+ # The list of endpoint objects.
634
+ # @return [Array<Types::EndpointDescription>]
635
+ #
636
+ # @!attribute [rw] traffic_dial_percentage
637
+ # The percentage of traffic to send to an AWS Region. Additional
638
+ # traffic is distributed to other endpoint groups for this listener.
639
+ #
640
+ # Use this action to increase (dial up) or decrease (dial down)
641
+ # traffic to a specific Region. The percentage is applied to the
642
+ # traffic that would otherwise have been routed to the Region based on
643
+ # optimal routing.
644
+ #
645
+ # The default value is 100.
646
+ # @return [Float]
647
+ #
648
+ # @!attribute [rw] health_check_port
649
+ # The port that Global Accelerator uses to perform health checks on
650
+ # endpoints that are part of this endpoint group.
651
+ #
652
+ # The default port is the port for the listener that this endpoint
653
+ # group is associated with. If the listener port is a list, Global
654
+ # Accelerator uses the first specified port in the list of ports.
655
+ # @return [Integer]
656
+ #
657
+ # @!attribute [rw] health_check_protocol
658
+ # The protocol that Global Accelerator uses to perform health checks
659
+ # on endpoints that are part of this endpoint group. The default value
660
+ # is TCP.
661
+ # @return [String]
662
+ #
663
+ # @!attribute [rw] health_check_path
664
+ # If the protocol is HTTP/S, then this value provides the ping path
665
+ # that Global Accelerator uses for the destination on the endpoints
666
+ # for health checks. The default is slash (/).
667
+ # @return [String]
668
+ #
669
+ # @!attribute [rw] health_check_interval_seconds
670
+ # The elapsed time, in seconds, between health checks for each
671
+ # endpoint. The default value is 30.
672
+ # @return [Integer]
673
+ #
674
+ # @!attribute [rw] threshold_count
675
+ # The number of consecutive health checks required to set the state of
676
+ # a healthy endpoint to unhealthy, or to set an unhealthy endpoint to
677
+ # healthy. The default value is 3.
678
+ # @return [Integer]
679
+ #
680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/EndpointGroup AWS API Documentation
681
+ #
682
+ class EndpointGroup < Struct.new(
683
+ :endpoint_group_arn,
684
+ :endpoint_group_region,
685
+ :endpoint_descriptions,
686
+ :traffic_dial_percentage,
687
+ :health_check_port,
688
+ :health_check_protocol,
689
+ :health_check_path,
690
+ :health_check_interval_seconds,
691
+ :threshold_count)
692
+ include Aws::Structure
693
+ end
694
+
695
+ # A complex type for the set of IP addresses for an accelerator.
696
+ #
697
+ # @!attribute [rw] ip_family
698
+ # The types of IP addresses included in this IP set.
699
+ # @return [String]
700
+ #
701
+ # @!attribute [rw] ip_addresses
702
+ # The array of IP addresses in the IP address set. An IP address set
703
+ # can have a maximum of two IP addresses.
704
+ # @return [Array<String>]
705
+ #
706
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/IpSet AWS API Documentation
707
+ #
708
+ class IpSet < Struct.new(
709
+ :ip_family,
710
+ :ip_addresses)
711
+ include Aws::Structure
712
+ end
713
+
714
+ # @note When making an API call, you may pass ListAcceleratorsRequest
715
+ # data as a hash:
716
+ #
717
+ # {
718
+ # max_results: 1,
719
+ # next_token: "GenericString",
720
+ # }
721
+ #
722
+ # @!attribute [rw] max_results
723
+ # The number of Global Accelerator objects that you want to return
724
+ # with this call. The default value is 10.
725
+ # @return [Integer]
726
+ #
727
+ # @!attribute [rw] next_token
728
+ # The token for the next set of results. You receive this token from a
729
+ # previous call.
730
+ # @return [String]
731
+ #
732
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsRequest AWS API Documentation
733
+ #
734
+ class ListAcceleratorsRequest < Struct.new(
735
+ :max_results,
736
+ :next_token)
737
+ include Aws::Structure
738
+ end
739
+
740
+ # @!attribute [rw] accelerators
741
+ # The list of accelerators for a customer account.
742
+ # @return [Array<Types::Accelerator>]
743
+ #
744
+ # @!attribute [rw] next_token
745
+ # The token for the next set of results. You receive this token from a
746
+ # previous call.
747
+ # @return [String]
748
+ #
749
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListAcceleratorsResponse AWS API Documentation
750
+ #
751
+ class ListAcceleratorsResponse < Struct.new(
752
+ :accelerators,
753
+ :next_token)
754
+ include Aws::Structure
755
+ end
756
+
757
+ # @note When making an API call, you may pass ListEndpointGroupsRequest
758
+ # data as a hash:
759
+ #
760
+ # {
761
+ # listener_arn: "GenericString", # required
762
+ # max_results: 1,
763
+ # next_token: "GenericString",
764
+ # }
765
+ #
766
+ # @!attribute [rw] listener_arn
767
+ # The Amazon Resource Name (ARN) of the listener.
768
+ # @return [String]
769
+ #
770
+ # @!attribute [rw] max_results
771
+ # The number of endpoint group objects that you want to return with
772
+ # this call. The default value is 10.
773
+ # @return [Integer]
774
+ #
775
+ # @!attribute [rw] next_token
776
+ # The token for the next set of results. You receive this token from a
777
+ # previous call.
778
+ # @return [String]
779
+ #
780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListEndpointGroupsRequest AWS API Documentation
781
+ #
782
+ class ListEndpointGroupsRequest < Struct.new(
783
+ :listener_arn,
784
+ :max_results,
785
+ :next_token)
786
+ include Aws::Structure
787
+ end
788
+
789
+ # @!attribute [rw] endpoint_groups
790
+ # The list of the endpoint groups associated with a listener.
791
+ # @return [Array<Types::EndpointGroup>]
792
+ #
793
+ # @!attribute [rw] next_token
794
+ # The token for the next set of results. You receive this token from a
795
+ # previous call.
796
+ # @return [String]
797
+ #
798
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListEndpointGroupsResponse AWS API Documentation
799
+ #
800
+ class ListEndpointGroupsResponse < Struct.new(
801
+ :endpoint_groups,
802
+ :next_token)
803
+ include Aws::Structure
804
+ end
805
+
806
+ # @note When making an API call, you may pass ListListenersRequest
807
+ # data as a hash:
808
+ #
809
+ # {
810
+ # accelerator_arn: "GenericString", # required
811
+ # max_results: 1,
812
+ # next_token: "GenericString",
813
+ # }
814
+ #
815
+ # @!attribute [rw] accelerator_arn
816
+ # The Amazon Resource Name (ARN) of the accelerator for which you want
817
+ # to list listener objects.
818
+ # @return [String]
819
+ #
820
+ # @!attribute [rw] max_results
821
+ # The number of listener objects that you want to return with this
822
+ # call. The default value is 10.
823
+ # @return [Integer]
824
+ #
825
+ # @!attribute [rw] next_token
826
+ # The token for the next set of results. You receive this token from a
827
+ # previous call.
828
+ # @return [String]
829
+ #
830
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListListenersRequest AWS API Documentation
831
+ #
832
+ class ListListenersRequest < Struct.new(
833
+ :accelerator_arn,
834
+ :max_results,
835
+ :next_token)
836
+ include Aws::Structure
837
+ end
838
+
839
+ # @!attribute [rw] listeners
840
+ # The list of listeners for an accelerator.
841
+ # @return [Array<Types::Listener>]
842
+ #
843
+ # @!attribute [rw] next_token
844
+ # The token for the next set of results. You receive this token from a
845
+ # previous call.
846
+ # @return [String]
847
+ #
848
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/ListListenersResponse AWS API Documentation
849
+ #
850
+ class ListListenersResponse < Struct.new(
851
+ :listeners,
852
+ :next_token)
853
+ include Aws::Structure
854
+ end
855
+
856
+ # A complex type for a listener.
857
+ #
858
+ # @!attribute [rw] listener_arn
859
+ # The Amazon Resource Name (ARN) of the listener.
860
+ # @return [String]
861
+ #
862
+ # @!attribute [rw] port_ranges
863
+ # The list of port ranges for the connections from clients to the
864
+ # accelerator.
865
+ # @return [Array<Types::PortRange>]
866
+ #
867
+ # @!attribute [rw] protocol
868
+ # The protocol for the connections from clients to the accelerator.
869
+ # @return [String]
870
+ #
871
+ # @!attribute [rw] client_affinity
872
+ # The client properties that Global Accelerator uses to select an
873
+ # endpoint so that you can choose to route traffic from users to their
874
+ # original endpoint. The default value is `NONE`.
875
+ # @return [String]
876
+ #
877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/Listener AWS API Documentation
878
+ #
879
+ class Listener < Struct.new(
880
+ :listener_arn,
881
+ :port_ranges,
882
+ :protocol,
883
+ :client_affinity)
884
+ include Aws::Structure
885
+ end
886
+
887
+ # A complex type for a range of ports for a listener.
888
+ #
889
+ # @note When making an API call, you may pass PortRange
890
+ # data as a hash:
891
+ #
892
+ # {
893
+ # from_port: 1,
894
+ # to_port: 1,
895
+ # }
896
+ #
897
+ # @!attribute [rw] from_port
898
+ # The first port in the range of ports, inclusive.
899
+ # @return [Integer]
900
+ #
901
+ # @!attribute [rw] to_port
902
+ # The last port in the range of ports, inclusive.
903
+ # @return [Integer]
904
+ #
905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/PortRange AWS API Documentation
906
+ #
907
+ class PortRange < Struct.new(
908
+ :from_port,
909
+ :to_port)
910
+ include Aws::Structure
911
+ end
912
+
913
+ # @note When making an API call, you may pass UpdateAcceleratorAttributesRequest
914
+ # data as a hash:
915
+ #
916
+ # {
917
+ # accelerator_arn: "GenericString",
918
+ # flow_logs_enabled: false,
919
+ # flow_logs_s3_bucket: "GenericString",
920
+ # flow_logs_s3_prefix: "GenericString",
921
+ # }
922
+ #
923
+ # @!attribute [rw] accelerator_arn
924
+ # The Amazon Resource Name (ARN) of the accelerator that you want to
925
+ # update.
926
+ # @return [String]
927
+ #
928
+ # @!attribute [rw] flow_logs_enabled
929
+ # Update whether flow logs are enabled.
930
+ # @return [Boolean]
931
+ #
932
+ # @!attribute [rw] flow_logs_s3_bucket
933
+ # Update the name of the Amazon S3 bucket for the flow logs.
934
+ # @return [String]
935
+ #
936
+ # @!attribute [rw] flow_logs_s3_prefix
937
+ # Update the prefix for the location in the Amazon S3 bucket for the
938
+ # flow logs.
939
+ # @return [String]
940
+ #
941
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateAcceleratorAttributesRequest AWS API Documentation
942
+ #
943
+ class UpdateAcceleratorAttributesRequest < Struct.new(
944
+ :accelerator_arn,
945
+ :flow_logs_enabled,
946
+ :flow_logs_s3_bucket,
947
+ :flow_logs_s3_prefix)
948
+ include Aws::Structure
949
+ end
950
+
951
+ # @!attribute [rw] accelerator_attributes
952
+ # Updated attributes for the accelerator.
953
+ # @return [Types::AcceleratorAttributes]
954
+ #
955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateAcceleratorAttributesResponse AWS API Documentation
956
+ #
957
+ class UpdateAcceleratorAttributesResponse < Struct.new(
958
+ :accelerator_attributes)
959
+ include Aws::Structure
960
+ end
961
+
962
+ # @note When making an API call, you may pass UpdateAcceleratorRequest
963
+ # data as a hash:
964
+ #
965
+ # {
966
+ # accelerator_arn: "GenericString", # required
967
+ # name: "GenericString",
968
+ # ip_address_type: "IPV4", # accepts IPV4
969
+ # enabled: false,
970
+ # }
971
+ #
972
+ # @!attribute [rw] accelerator_arn
973
+ # The Amazon Resource Name (ARN) of the accelerator to update.
974
+ # @return [String]
975
+ #
976
+ # @!attribute [rw] name
977
+ # The name of the accelerator. The name can have a maximum of 32
978
+ # characters, must contain only alphanumeric characters or hyphens
979
+ # (-), and must not begin or end with a hyphen.
980
+ # @return [String]
981
+ #
982
+ # @!attribute [rw] ip_address_type
983
+ # The value for the address type must be IPv4.
984
+ # @return [String]
985
+ #
986
+ # @!attribute [rw] enabled
987
+ # Indicates whether an accelerator is enabled. The value is true or
988
+ # false. The default value is true.
989
+ #
990
+ # If the value is set to true, the accelerator cannot be deleted. If
991
+ # set to false, the accelerator can be deleted.
992
+ # @return [Boolean]
993
+ #
994
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateAcceleratorRequest AWS API Documentation
995
+ #
996
+ class UpdateAcceleratorRequest < Struct.new(
997
+ :accelerator_arn,
998
+ :name,
999
+ :ip_address_type,
1000
+ :enabled)
1001
+ include Aws::Structure
1002
+ end
1003
+
1004
+ # @!attribute [rw] accelerator
1005
+ # Information about the updated accelerator.
1006
+ # @return [Types::Accelerator]
1007
+ #
1008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateAcceleratorResponse AWS API Documentation
1009
+ #
1010
+ class UpdateAcceleratorResponse < Struct.new(
1011
+ :accelerator)
1012
+ include Aws::Structure
1013
+ end
1014
+
1015
+ # @note When making an API call, you may pass UpdateEndpointGroupRequest
1016
+ # data as a hash:
1017
+ #
1018
+ # {
1019
+ # endpoint_group_arn: "GenericString", # required
1020
+ # endpoint_configurations: [
1021
+ # {
1022
+ # endpoint_id: "GenericString",
1023
+ # weight: 1,
1024
+ # },
1025
+ # ],
1026
+ # traffic_dial_percentage: 1.0,
1027
+ # health_check_port: 1,
1028
+ # health_check_protocol: "TCP", # accepts TCP, HTTP, HTTPS
1029
+ # health_check_path: "GenericString",
1030
+ # health_check_interval_seconds: 1,
1031
+ # threshold_count: 1,
1032
+ # }
1033
+ #
1034
+ # @!attribute [rw] endpoint_group_arn
1035
+ # The Amazon Resource Name (ARN) of the endpoint group.
1036
+ # @return [String]
1037
+ #
1038
+ # @!attribute [rw] endpoint_configurations
1039
+ # The list of endpoint objects.
1040
+ # @return [Array<Types::EndpointConfiguration>]
1041
+ #
1042
+ # @!attribute [rw] traffic_dial_percentage
1043
+ # The percentage of traffic to send to an AWS Region. Additional
1044
+ # traffic is distributed to other endpoint groups for this listener.
1045
+ #
1046
+ # Use this action to increase (dial up) or decrease (dial down)
1047
+ # traffic to a specific Region. The percentage is applied to the
1048
+ # traffic that would otherwise have been routed to the Region based on
1049
+ # optimal routing.
1050
+ #
1051
+ # The default value is 100.
1052
+ # @return [Float]
1053
+ #
1054
+ # @!attribute [rw] health_check_port
1055
+ # The port that AWS Global Accelerator uses to check the health of
1056
+ # endpoints that are part of this endpoint group. The default port is
1057
+ # the listener port that this endpoint group is associated with. If
1058
+ # the listener port is a list of ports, Global Accelerator uses the
1059
+ # first port in the list.
1060
+ # @return [Integer]
1061
+ #
1062
+ # @!attribute [rw] health_check_protocol
1063
+ # The protocol that AWS Global Accelerator uses to check the health of
1064
+ # endpoints that are part of this endpoint group. The default value is
1065
+ # TCP.
1066
+ # @return [String]
1067
+ #
1068
+ # @!attribute [rw] health_check_path
1069
+ # If the protocol is HTTP/S, then this specifies the path that is the
1070
+ # destination for health check targets. The default value is slash
1071
+ # (/).
1072
+ # @return [String]
1073
+ #
1074
+ # @!attribute [rw] health_check_interval_seconds
1075
+ # The time, in seconds, between each health check for an endpoint. The
1076
+ # default value is 30.
1077
+ # @return [Integer]
1078
+ #
1079
+ # @!attribute [rw] threshold_count
1080
+ # The number of consecutive health checks required to set the state of
1081
+ # a healthy endpoint to unhealthy, or to set an unhealthy endpoint to
1082
+ # healthy. The default value is 3.
1083
+ # @return [Integer]
1084
+ #
1085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateEndpointGroupRequest AWS API Documentation
1086
+ #
1087
+ class UpdateEndpointGroupRequest < Struct.new(
1088
+ :endpoint_group_arn,
1089
+ :endpoint_configurations,
1090
+ :traffic_dial_percentage,
1091
+ :health_check_port,
1092
+ :health_check_protocol,
1093
+ :health_check_path,
1094
+ :health_check_interval_seconds,
1095
+ :threshold_count)
1096
+ include Aws::Structure
1097
+ end
1098
+
1099
+ # @!attribute [rw] endpoint_group
1100
+ # The information about the endpoint group that was updated.
1101
+ # @return [Types::EndpointGroup]
1102
+ #
1103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateEndpointGroupResponse AWS API Documentation
1104
+ #
1105
+ class UpdateEndpointGroupResponse < Struct.new(
1106
+ :endpoint_group)
1107
+ include Aws::Structure
1108
+ end
1109
+
1110
+ # @note When making an API call, you may pass UpdateListenerRequest
1111
+ # data as a hash:
1112
+ #
1113
+ # {
1114
+ # listener_arn: "GenericString", # required
1115
+ # port_ranges: [
1116
+ # {
1117
+ # from_port: 1,
1118
+ # to_port: 1,
1119
+ # },
1120
+ # ],
1121
+ # protocol: "TCP", # accepts TCP, UDP
1122
+ # client_affinity: "NONE", # accepts NONE, SOURCE_IP
1123
+ # }
1124
+ #
1125
+ # @!attribute [rw] listener_arn
1126
+ # The Amazon Resource Name (ARN) of the listener to update.
1127
+ # @return [String]
1128
+ #
1129
+ # @!attribute [rw] port_ranges
1130
+ # The updated list of port ranges for the connections from clients to
1131
+ # the accelerator.
1132
+ # @return [Array<Types::PortRange>]
1133
+ #
1134
+ # @!attribute [rw] protocol
1135
+ # The updated protocol for the connections from clients to the
1136
+ # accelerator.
1137
+ # @return [String]
1138
+ #
1139
+ # @!attribute [rw] client_affinity
1140
+ # Client affinity lets you direct all requests from a user to the same
1141
+ # endpoint, if you have stateful applications, regardless of the
1142
+ # source port and protocol of the user request. This gives you control
1143
+ # over whether and how to maintain client affinity to a given
1144
+ # endpoint.
1145
+ #
1146
+ # The default value is `NONE`.
1147
+ # @return [String]
1148
+ #
1149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateListenerRequest AWS API Documentation
1150
+ #
1151
+ class UpdateListenerRequest < Struct.new(
1152
+ :listener_arn,
1153
+ :port_ranges,
1154
+ :protocol,
1155
+ :client_affinity)
1156
+ include Aws::Structure
1157
+ end
1158
+
1159
+ # @!attribute [rw] listener
1160
+ # Information for the updated listener.
1161
+ # @return [Types::Listener]
1162
+ #
1163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/globalaccelerator-2018-08-08/UpdateListenerResponse AWS API Documentation
1164
+ #
1165
+ class UpdateListenerResponse < Struct.new(
1166
+ :listener)
1167
+ include Aws::Structure
1168
+ end
1169
+
1170
+ end
1171
+ end