aws-sdk-elasticloadbalancingv2 1.0.0.rc1 → 1.0.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,23 +1,14 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module ElasticLoadBalancingV2
10
- module Errors
8
+ module Aws::ElasticLoadBalancingV2
9
+ module Errors
11
10
 
12
- extend Aws::Errors::DynamicErrors
11
+ extend Aws::Errors::DynamicErrors
13
12
 
14
- # Raised when calling #load or #data on a resource class that can not be
15
- # loaded. This can happen when:
16
- #
17
- # * A resource class has identifiers, but no data attributes.
18
- # * Resource data is only available when making an API call that
19
- # enumerates all resources of that type.
20
- class ResourceNotLoadable < RuntimeError; end
21
- end
22
13
  end
23
14
  end
@@ -1,25 +1,23 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module ElasticLoadBalancingV2
10
- class Resource
8
+ module Aws::ElasticLoadBalancingV2
9
+ class Resource
11
10
 
12
- # @param options ({})
13
- # @option options [Client] :client
14
- def initialize(options = {})
15
- @client = options[:client] || Client.new(options)
16
- end
17
-
18
- # @return [Client]
19
- def client
20
- @client
21
- end
11
+ # @param options ({})
12
+ # @option options [Client] :client
13
+ def initialize(options = {})
14
+ @client = options[:client] || Client.new(options)
15
+ end
22
16
 
17
+ # @return [Client]
18
+ def client
19
+ @client
23
20
  end
21
+
24
22
  end
25
23
  end
@@ -1,1806 +1,2085 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
- module Aws
9
- module ElasticLoadBalancingV2
10
- module Types
11
-
12
- # Information about an action.
13
- # @note When making an API call, pass Action
14
- # data as a hash:
15
- #
16
- # {
17
- # type: "forward", # required, accepts forward
18
- # target_group_arn: "TargetGroupArn", # required
19
- # }
20
- # @!attribute [rw] type
21
- # The type of action.
22
- # @return [String]
23
- #
24
- # @!attribute [rw] target_group_arn
25
- # The Amazon Resource Name (ARN) of the target group.
26
- # @return [String]
27
- class Action < Struct.new(
28
- :type,
29
- :target_group_arn)
30
- include Aws::Structure
31
- end
32
-
33
- # Contains the parameters for AddTags.
34
- # @note When making an API call, pass AddTagsInput
35
- # data as a hash:
36
- #
37
- # {
38
- # resource_arns: ["ResourceArn"], # required
39
- # tags: [ # required
40
- # {
41
- # key: "TagKey", # required
42
- # value: "TagValue",
43
- # },
44
- # ],
45
- # }
46
- # @!attribute [rw] resource_arns
47
- # The Amazon Resource Name (ARN) of the resource.
48
- # @return [Array<String>]
49
- #
50
- # @!attribute [rw] tags
51
- # The tags. Each resource can have a maximum of 10 tags.
52
- # @return [Array<Types::Tag>]
53
- class AddTagsInput < Struct.new(
54
- :resource_arns,
55
- :tags)
56
- include Aws::Structure
57
- end
58
-
59
- # Contains the output of AddTags.
60
- class AddTagsOutput < Aws::EmptyStructure; end
61
-
62
- # Information about an Availability Zone.
63
- # @!attribute [rw] zone_name
64
- # The name of the Availability Zone.
65
- # @return [String]
66
- #
67
- # @!attribute [rw] subnet_id
68
- # The ID of the subnet.
69
- # @return [String]
70
- class AvailabilityZone < Struct.new(
71
- :zone_name,
72
- :subnet_id)
73
- include Aws::Structure
74
- end
75
-
76
- # Information about an SSL server certificate deployed on a load
77
- # balancer.
78
- # @note When making an API call, pass Certificate
79
- # data as a hash:
80
- #
81
- # {
82
- # certificate_arn: "CertificateArn",
83
- # }
84
- # @!attribute [rw] certificate_arn
85
- # The Amazon Resource Name (ARN) of the certificate.
86
- # @return [String]
87
- class Certificate < Struct.new(
88
- :certificate_arn)
89
- include Aws::Structure
90
- end
91
-
92
- # Information about a cipher used in a policy.
93
- # @!attribute [rw] name
94
- # The name of the cipher.
95
- # @return [String]
96
- #
97
- # @!attribute [rw] priority
98
- # The priority of the cipher.
99
- # @return [Integer]
100
- class Cipher < Struct.new(
101
- :name,
102
- :priority)
103
- include Aws::Structure
104
- end
105
-
106
- # Contains the parameters for CreateListener.
107
- # @note When making an API call, pass CreateListenerInput
108
- # data as a hash:
109
- #
110
- # {
111
- # load_balancer_arn: "LoadBalancerArn", # required
112
- # protocol: "HTTP", # required, accepts HTTP, HTTPS
113
- # port: 1, # required
114
- # ssl_policy: "SslPolicyName",
115
- # certificates: [
116
- # {
117
- # certificate_arn: "CertificateArn",
118
- # },
119
- # ],
120
- # default_actions: [ # required
121
- # {
122
- # type: "forward", # required, accepts forward
123
- # target_group_arn: "TargetGroupArn", # required
124
- # },
125
- # ],
126
- # }
127
- # @!attribute [rw] load_balancer_arn
128
- # The Amazon Resource Name (ARN) of the load balancer.
129
- # @return [String]
130
- #
131
- # @!attribute [rw] protocol
132
- # The protocol for connections from clients to the load balancer.
133
- # @return [String]
134
- #
135
- # @!attribute [rw] port
136
- # The port on which the load balancer is listening.
137
- # @return [Integer]
138
- #
139
- # @!attribute [rw] ssl_policy
140
- # The security policy that defines which ciphers and protocols are
141
- # supported. The default is the current predefined security policy.
142
- # @return [String]
143
- #
144
- # @!attribute [rw] certificates
145
- # The SSL server certificate. You must provide exactly one certificate
146
- # if the protocol is HTTPS.
147
- # @return [Array<Types::Certificate>]
148
- #
149
- # @!attribute [rw] default_actions
150
- # The default action for the listener.
151
- # @return [Array<Types::Action>]
152
- class CreateListenerInput < Struct.new(
153
- :load_balancer_arn,
154
- :protocol,
155
- :port,
156
- :ssl_policy,
157
- :certificates,
158
- :default_actions)
159
- include Aws::Structure
160
- end
161
-
162
- # Contains the output of CreateListener.
163
- # @!attribute [rw] listeners
164
- # Information about the listener.
165
- # @return [Array<Types::Listener>]
166
- class CreateListenerOutput < Struct.new(
167
- :listeners)
168
- include Aws::Structure
169
- end
170
-
171
- # Contains the parameters for CreateLoadBalancer.
172
- # @note When making an API call, pass CreateLoadBalancerInput
173
- # data as a hash:
174
- #
175
- # {
176
- # name: "LoadBalancerName", # required
177
- # subnets: ["SubnetId"], # required
178
- # security_groups: ["SecurityGroupId"],
179
- # scheme: "internet-facing", # accepts internet-facing, internal
180
- # tags: [
181
- # {
182
- # key: "TagKey", # required
183
- # value: "TagValue",
184
- # },
185
- # ],
186
- # }
187
- # @!attribute [rw] name
188
- # The name of the load balancer.
189
- #
190
- # This name must be unique within your AWS account, can have a maximum
191
- # of 32 characters, must contain only alphanumeric characters or
192
- # hyphens, and must not begin or end with a hyphen.
193
- # @return [String]
194
- #
195
- # @!attribute [rw] subnets
196
- # The IDs of the subnets to attach to the load balancer. You can
197
- # specify only one subnet per Availability Zone. You must specify
198
- # subnets from at least two Availability Zones.
199
- # @return [Array<String>]
200
- #
201
- # @!attribute [rw] security_groups
202
- # The IDs of the security groups to assign to the load balancer.
203
- # @return [Array<String>]
204
- #
205
- # @!attribute [rw] scheme
206
- # The nodes of an Internet-facing load balancer have public IP
207
- # addresses. The DNS name of an Internet-facing load balancer is
208
- # publicly resolvable to the public IP addresses of the nodes.
209
- # Therefore, Internet-facing load balancers can route requests from
210
- # clients over the Internet.
211
- #
212
- # The nodes of an internal load balancer have only private IP
213
- # addresses. The DNS name of an internal load balancer is publicly
214
- # resolvable to the private IP addresses of the nodes. Therefore,
215
- # internal load balancers can only route requests from clients with
216
- # access to the VPC for the load balancer.
217
- #
218
- # The default is an Internet-facing load balancer.
219
- # @return [String]
220
- #
221
- # @!attribute [rw] tags
222
- # One or more tags to assign to the load balancer.
223
- # @return [Array<Types::Tag>]
224
- class CreateLoadBalancerInput < Struct.new(
225
- :name,
226
- :subnets,
227
- :security_groups,
228
- :scheme,
229
- :tags)
230
- include Aws::Structure
231
- end
232
-
233
- # Contains the output of CreateLoadBalancer.
234
- # @!attribute [rw] load_balancers
235
- # Information about the load balancer.
236
- # @return [Array<Types::LoadBalancer>]
237
- class CreateLoadBalancerOutput < Struct.new(
238
- :load_balancers)
239
- include Aws::Structure
240
- end
241
-
242
- # Contains the parameters for CreateRule.
243
- # @note When making an API call, pass CreateRuleInput
244
- # data as a hash:
245
- #
246
- # {
247
- # listener_arn: "ListenerArn", # required
248
- # conditions: [ # required
249
- # {
250
- # field: "ConditionFieldName",
251
- # values: ["StringValue"],
252
- # },
253
- # ],
254
- # priority: 1, # required
255
- # actions: [ # required
256
- # {
257
- # type: "forward", # required, accepts forward
258
- # target_group_arn: "TargetGroupArn", # required
259
- # },
260
- # ],
261
- # }
262
- # @!attribute [rw] listener_arn
263
- # The Amazon Resource Name (ARN) of the listener.
264
- # @return [String]
265
- #
266
- # @!attribute [rw] conditions
267
- # A condition. Each condition has the field `path-pattern` and
268
- # specifies one path pattern. A path pattern is case sensitive, can be
269
- # up to 255 characters in length, and can contain any of the following
270
- # characters:
271
- #
272
- # * A-Z, a-z, 0-9
273
- #
274
- # * \_ - . $ / ~ " ' @ : +
275
- #
276
- # * &amp; (using &amp;amp;)
277
- #
278
- # * * (matches 0 or more characters)
279
- #
280
- # * ? (matches exactly 1 character)
281
- # @return [Array<Types::RuleCondition>]
282
- #
283
- # @!attribute [rw] priority
284
- # The priority for the rule. A listener can't have multiple rules
285
- # with the same priority.
286
- # @return [Integer]
287
- #
288
- # @!attribute [rw] actions
289
- # An action. Each action has the type `forward` and specifies a target
290
- # group.
291
- # @return [Array<Types::Action>]
292
- class CreateRuleInput < Struct.new(
293
- :listener_arn,
294
- :conditions,
295
- :priority,
296
- :actions)
297
- include Aws::Structure
298
- end
299
-
300
- # Contains the output of CreateRule.
301
- # @!attribute [rw] rules
302
- # Information about the rule.
303
- # @return [Array<Types::Rule>]
304
- class CreateRuleOutput < Struct.new(
305
- :rules)
306
- include Aws::Structure
307
- end
308
-
309
- # Contains the parameters for CreateTargetGroup.
310
- # @note When making an API call, pass CreateTargetGroupInput
311
- # data as a hash:
312
- #
313
- # {
314
- # name: "TargetGroupName", # required
315
- # protocol: "HTTP", # required, accepts HTTP, HTTPS
316
- # port: 1, # required
317
- # vpc_id: "VpcId", # required
318
- # health_check_protocol: "HTTP", # accepts HTTP, HTTPS
319
- # health_check_port: "HealthCheckPort",
320
- # health_check_path: "Path",
321
- # health_check_interval_seconds: 1,
322
- # health_check_timeout_seconds: 1,
323
- # healthy_threshold_count: 1,
324
- # unhealthy_threshold_count: 1,
325
- # matcher: {
326
- # http_code: "HttpCode", # required
327
- # },
328
- # }
329
- # @!attribute [rw] name
330
- # The name of the target group.
331
- # @return [String]
332
- #
333
- # @!attribute [rw] protocol
334
- # The protocol to use for routing traffic to the targets.
335
- # @return [String]
336
- #
337
- # @!attribute [rw] port
338
- # The port on which the targets receive traffic. This port is used
339
- # unless you specify a port override when registering the target.
340
- # @return [Integer]
341
- #
342
- # @!attribute [rw] vpc_id
343
- # The identifier of the virtual private cloud (VPC).
344
- # @return [String]
345
- #
346
- # @!attribute [rw] health_check_protocol
347
- # The protocol the load balancer uses when performing health checks on
348
- # targets. The default is the HTTP protocol.
349
- # @return [String]
350
- #
351
- # @!attribute [rw] health_check_port
352
- # The port the load balancer uses when performing health checks on
353
- # targets. The default is `traffic-port`, which indicates the port on
354
- # which each target receives traffic from the load balancer.
355
- # @return [String]
356
- #
357
- # @!attribute [rw] health_check_path
358
- # The ping path that is the destination on the targets for health
359
- # checks. The default is /.
360
- # @return [String]
361
- #
362
- # @!attribute [rw] health_check_interval_seconds
363
- # The approximate amount of time, in seconds, between health checks of
364
- # an individual target. The default is 30 seconds.
365
- # @return [Integer]
366
- #
367
- # @!attribute [rw] health_check_timeout_seconds
368
- # The amount of time, in seconds, during which no response from a
369
- # target means a failed health check. The default is 5 seconds.
370
- # @return [Integer]
371
- #
372
- # @!attribute [rw] healthy_threshold_count
373
- # The number of consecutive health checks successes required before
374
- # considering an unhealthy target healthy. The default is 5.
375
- # @return [Integer]
376
- #
377
- # @!attribute [rw] unhealthy_threshold_count
378
- # The number of consecutive health check failures required before
379
- # considering a target unhealthy. The default is 2.
380
- # @return [Integer]
381
- #
382
- # @!attribute [rw] matcher
383
- # The HTTP codes to use when checking for a successful response from a
384
- # target. The default is 200.
385
- # @return [Types::Matcher]
386
- class CreateTargetGroupInput < Struct.new(
387
- :name,
388
- :protocol,
389
- :port,
390
- :vpc_id,
391
- :health_check_protocol,
392
- :health_check_port,
393
- :health_check_path,
394
- :health_check_interval_seconds,
395
- :health_check_timeout_seconds,
396
- :healthy_threshold_count,
397
- :unhealthy_threshold_count,
398
- :matcher)
399
- include Aws::Structure
400
- end
401
-
402
- # Contains the output of CreateTargetGroup.
403
- # @!attribute [rw] target_groups
404
- # Information about the target group.
405
- # @return [Array<Types::TargetGroup>]
406
- class CreateTargetGroupOutput < Struct.new(
407
- :target_groups)
408
- include Aws::Structure
409
- end
410
-
411
- # Contains the parameters for DeleteListener.
412
- # @note When making an API call, pass DeleteListenerInput
413
- # data as a hash:
414
- #
415
- # {
416
- # listener_arn: "ListenerArn", # required
417
- # }
418
- # @!attribute [rw] listener_arn
419
- # The Amazon Resource Name (ARN) of the listener.
420
- # @return [String]
421
- class DeleteListenerInput < Struct.new(
422
- :listener_arn)
423
- include Aws::Structure
424
- end
425
-
426
- # Contains the output of DeleteListener.
427
- class DeleteListenerOutput < Aws::EmptyStructure; end
428
-
429
- # Contains the parameters for DeleteLoadBalancer.
430
- # @note When making an API call, pass DeleteLoadBalancerInput
431
- # data as a hash:
432
- #
433
- # {
434
- # load_balancer_arn: "LoadBalancerArn", # required
435
- # }
436
- # @!attribute [rw] load_balancer_arn
437
- # The Amazon Resource Name (ARN) of the load balancer.
438
- # @return [String]
439
- class DeleteLoadBalancerInput < Struct.new(
440
- :load_balancer_arn)
441
- include Aws::Structure
442
- end
443
-
444
- # Contains the output of DeleteLoadBalancer.
445
- class DeleteLoadBalancerOutput < Aws::EmptyStructure; end
446
-
447
- # Contains the parameters for DeleteRule.
448
- # @note When making an API call, pass DeleteRuleInput
449
- # data as a hash:
450
- #
451
- # {
452
- # rule_arn: "RuleArn", # required
453
- # }
454
- # @!attribute [rw] rule_arn
455
- # The Amazon Resource Name (ARN) of the rule.
456
- # @return [String]
457
- class DeleteRuleInput < Struct.new(
458
- :rule_arn)
459
- include Aws::Structure
460
- end
461
-
462
- # Contains the output of DeleteRule.
463
- class DeleteRuleOutput < Aws::EmptyStructure; end
464
-
465
- # Contains the parameters for DeleteTargetGroup.
466
- # @note When making an API call, pass DeleteTargetGroupInput
467
- # data as a hash:
468
- #
469
- # {
470
- # target_group_arn: "TargetGroupArn", # required
471
- # }
472
- # @!attribute [rw] target_group_arn
473
- # The Amazon Resource Name (ARN) of the target group.
474
- # @return [String]
475
- class DeleteTargetGroupInput < Struct.new(
476
- :target_group_arn)
477
- include Aws::Structure
478
- end
479
-
480
- # Contains the output of DeleteTargetGroup.
481
- class DeleteTargetGroupOutput < Aws::EmptyStructure; end
482
-
483
- # Contains the parameters for DeregisterTargets.
484
- # @note When making an API call, pass DeregisterTargetsInput
485
- # data as a hash:
486
- #
487
- # {
488
- # target_group_arn: "TargetGroupArn", # required
489
- # targets: [ # required
490
- # {
491
- # id: "TargetId", # required
492
- # port: 1,
493
- # },
494
- # ],
495
- # }
496
- # @!attribute [rw] target_group_arn
497
- # The Amazon Resource Name (ARN) of the target group.
498
- # @return [String]
499
- #
500
- # @!attribute [rw] targets
501
- # The targets. If you specified a port override when you registered a
502
- # target, you must specify both the target ID and the port when you
503
- # deregister it.
504
- # @return [Array<Types::TargetDescription>]
505
- class DeregisterTargetsInput < Struct.new(
506
- :target_group_arn,
507
- :targets)
508
- include Aws::Structure
509
- end
510
-
511
- # Contains the output of DeregisterTargets.
512
- class DeregisterTargetsOutput < Aws::EmptyStructure; end
513
-
514
- # Contains the parameters for DescribeListeners.
515
- # @note When making an API call, pass DescribeListenersInput
516
- # data as a hash:
517
- #
518
- # {
519
- # load_balancer_arn: "LoadBalancerArn",
520
- # listener_arns: ["ListenerArn"],
521
- # marker: "Marker",
522
- # page_size: 1,
523
- # }
524
- # @!attribute [rw] load_balancer_arn
525
- # The Amazon Resource Name (ARN) of the load balancer.
526
- # @return [String]
527
- #
528
- # @!attribute [rw] listener_arns
529
- # The Amazon Resource Names (ARN) of the listeners.
530
- # @return [Array<String>]
531
- #
532
- # @!attribute [rw] marker
533
- # The marker for the next set of results. (You received this marker
534
- # from a previous call.)
535
- # @return [String]
536
- #
537
- # @!attribute [rw] page_size
538
- # The maximum number of results to return with this call.
539
- # @return [Integer]
540
- class DescribeListenersInput < Struct.new(
541
- :load_balancer_arn,
542
- :listener_arns,
543
- :marker,
544
- :page_size)
545
- include Aws::Structure
546
- end
547
-
548
- # Contains the output of DescribeListeners.
549
- # @!attribute [rw] listeners
550
- # Information about the listeners.
551
- # @return [Array<Types::Listener>]
552
- #
553
- # @!attribute [rw] next_marker
554
- # The marker to use when requesting the next set of results. If there
555
- # are no additional results, the string is empty.
556
- # @return [String]
557
- class DescribeListenersOutput < Struct.new(
558
- :listeners,
559
- :next_marker)
560
- include Aws::Structure
561
- end
562
-
563
- # Contains the parameters for DescribeLoadBalancerAttributes.
564
- # @note When making an API call, pass DescribeLoadBalancerAttributesInput
565
- # data as a hash:
566
- #
567
- # {
568
- # load_balancer_arn: "LoadBalancerArn", # required
569
- # }
570
- # @!attribute [rw] load_balancer_arn
571
- # The Amazon Resource Name (ARN) of the load balancer.
572
- # @return [String]
573
- class DescribeLoadBalancerAttributesInput < Struct.new(
574
- :load_balancer_arn)
575
- include Aws::Structure
576
- end
577
-
578
- # Contains the output of DescribeLoadBalancerAttributes.
579
- # @!attribute [rw] attributes
580
- # Information about the load balancer attributes.
581
- # @return [Array<Types::LoadBalancerAttribute>]
582
- class DescribeLoadBalancerAttributesOutput < Struct.new(
583
- :attributes)
584
- include Aws::Structure
585
- end
586
-
587
- # Contains the parameters for DescribeLoadBalancers.
588
- # @note When making an API call, pass DescribeLoadBalancersInput
589
- # data as a hash:
590
- #
591
- # {
592
- # load_balancer_arns: ["LoadBalancerArn"],
593
- # names: ["LoadBalancerName"],
594
- # marker: "Marker",
595
- # page_size: 1,
596
- # }
597
- # @!attribute [rw] load_balancer_arns
598
- # The Amazon Resource Names (ARN) of the load balancers.
599
- # @return [Array<String>]
600
- #
601
- # @!attribute [rw] names
602
- # The names of the load balancers.
603
- # @return [Array<String>]
604
- #
605
- # @!attribute [rw] marker
606
- # The marker for the next set of results. (You received this marker
607
- # from a previous call.)
608
- # @return [String]
609
- #
610
- # @!attribute [rw] page_size
611
- # The maximum number of results to return with this call.
612
- # @return [Integer]
613
- class DescribeLoadBalancersInput < Struct.new(
614
- :load_balancer_arns,
615
- :names,
616
- :marker,
617
- :page_size)
618
- include Aws::Structure
619
- end
620
-
621
- # Contains the output of DescribeLoadBalancers.
622
- # @!attribute [rw] load_balancers
623
- # Information about the load balancers.
624
- # @return [Array<Types::LoadBalancer>]
625
- #
626
- # @!attribute [rw] next_marker
627
- # The marker to use when requesting the next set of results. If there
628
- # are no additional results, the string is empty.
629
- # @return [String]
630
- class DescribeLoadBalancersOutput < Struct.new(
631
- :load_balancers,
632
- :next_marker)
633
- include Aws::Structure
634
- end
635
-
636
- # Contains the parameters for DescribeRules.
637
- # @note When making an API call, pass DescribeRulesInput
638
- # data as a hash:
639
- #
640
- # {
641
- # listener_arn: "ListenerArn",
642
- # rule_arns: ["RuleArn"],
643
- # }
644
- # @!attribute [rw] listener_arn
645
- # The Amazon Resource Name (ARN) of the listener.
646
- # @return [String]
647
- #
648
- # @!attribute [rw] rule_arns
649
- # The Amazon Resource Names (ARN) of the rules.
650
- # @return [Array<String>]
651
- class DescribeRulesInput < Struct.new(
652
- :listener_arn,
653
- :rule_arns)
654
- include Aws::Structure
655
- end
656
-
657
- # Contains the output of DescribeRules.
658
- # @!attribute [rw] rules
659
- # Information about the rules.
660
- # @return [Array<Types::Rule>]
661
- class DescribeRulesOutput < Struct.new(
662
- :rules)
663
- include Aws::Structure
664
- end
665
-
666
- # Contains the parameters for DescribeSSLPolicies.
667
- # @note When making an API call, pass DescribeSSLPoliciesInput
668
- # data as a hash:
669
- #
670
- # {
671
- # names: ["SslPolicyName"],
672
- # marker: "Marker",
673
- # page_size: 1,
674
- # }
675
- # @!attribute [rw] names
676
- # The names of the policies.
677
- # @return [Array<String>]
678
- #
679
- # @!attribute [rw] marker
680
- # The marker for the next set of results. (You received this marker
681
- # from a previous call.)
682
- # @return [String]
683
- #
684
- # @!attribute [rw] page_size
685
- # The maximum number of results to return with this call.
686
- # @return [Integer]
687
- class DescribeSSLPoliciesInput < Struct.new(
688
- :names,
689
- :marker,
690
- :page_size)
691
- include Aws::Structure
692
- end
693
-
694
- # Contains the output of DescribeSSLPolicies.
695
- # @!attribute [rw] ssl_policies
696
- # Information about the policies.
697
- # @return [Array<Types::SslPolicy>]
698
- #
699
- # @!attribute [rw] next_marker
700
- # The marker to use when requesting the next set of results. If there
701
- # are no additional results, the string is empty.
702
- # @return [String]
703
- class DescribeSSLPoliciesOutput < Struct.new(
704
- :ssl_policies,
705
- :next_marker)
706
- include Aws::Structure
707
- end
708
-
709
- # Contains the parameters for DescribeTags.
710
- # @note When making an API call, pass DescribeTagsInput
711
- # data as a hash:
712
- #
713
- # {
714
- # resource_arns: ["ResourceArn"], # required
715
- # }
716
- # @!attribute [rw] resource_arns
717
- # The Amazon Resource Names (ARN) of the resources.
718
- # @return [Array<String>]
719
- class DescribeTagsInput < Struct.new(
720
- :resource_arns)
721
- include Aws::Structure
722
- end
723
-
724
- # Contains the output of DescribeTags.
725
- # @!attribute [rw] tag_descriptions
726
- # Information about the tags.
727
- # @return [Array<Types::TagDescription>]
728
- class DescribeTagsOutput < Struct.new(
729
- :tag_descriptions)
730
- include Aws::Structure
731
- end
732
-
733
- # Contains the parameters for DescribeTargetGroupAttributes.
734
- # @note When making an API call, pass DescribeTargetGroupAttributesInput
735
- # data as a hash:
736
- #
737
- # {
738
- # target_group_arn: "TargetGroupArn", # required
739
- # }
740
- # @!attribute [rw] target_group_arn
741
- # The Amazon Resource Name (ARN) of the target group.
742
- # @return [String]
743
- class DescribeTargetGroupAttributesInput < Struct.new(
744
- :target_group_arn)
745
- include Aws::Structure
746
- end
747
-
748
- # Contains the output of DescribeTargetGroupAttributes.
749
- # @!attribute [rw] attributes
750
- # Information about the target group attributes
751
- # @return [Array<Types::TargetGroupAttribute>]
752
- class DescribeTargetGroupAttributesOutput < Struct.new(
753
- :attributes)
754
- include Aws::Structure
755
- end
756
-
757
- # Contains the parameters for DescribeTargetGroups.
758
- # @note When making an API call, pass DescribeTargetGroupsInput
759
- # data as a hash:
760
- #
761
- # {
762
- # load_balancer_arn: "LoadBalancerArn",
763
- # target_group_arns: ["TargetGroupArn"],
764
- # names: ["TargetGroupName"],
765
- # marker: "Marker",
766
- # page_size: 1,
767
- # }
768
- # @!attribute [rw] load_balancer_arn
769
- # The Amazon Resource Name (ARN) of the load balancer.
770
- # @return [String]
771
- #
772
- # @!attribute [rw] target_group_arns
773
- # The Amazon Resource Names (ARN) of the target groups.
774
- # @return [Array<String>]
775
- #
776
- # @!attribute [rw] names
777
- # The names of the target groups.
778
- # @return [Array<String>]
779
- #
780
- # @!attribute [rw] marker
781
- # The marker for the next set of results. (You received this marker
782
- # from a previous call.)
783
- # @return [String]
784
- #
785
- # @!attribute [rw] page_size
786
- # The maximum number of results to return with this call.
787
- # @return [Integer]
788
- class DescribeTargetGroupsInput < Struct.new(
789
- :load_balancer_arn,
790
- :target_group_arns,
791
- :names,
792
- :marker,
793
- :page_size)
794
- include Aws::Structure
795
- end
796
-
797
- # Contains the output of DescribeTargetGroups.
798
- # @!attribute [rw] target_groups
799
- # Information about the target groups.
800
- # @return [Array<Types::TargetGroup>]
801
- #
802
- # @!attribute [rw] next_marker
803
- # The marker to use when requesting the next set of results. If there
804
- # are no additional results, the string is empty.
805
- # @return [String]
806
- class DescribeTargetGroupsOutput < Struct.new(
807
- :target_groups,
808
- :next_marker)
809
- include Aws::Structure
810
- end
811
-
812
- # Contains the parameters for DescribeTargetHealth.
813
- # @note When making an API call, pass DescribeTargetHealthInput
814
- # data as a hash:
815
- #
816
- # {
817
- # target_group_arn: "TargetGroupArn", # required
818
- # targets: [
819
- # {
820
- # id: "TargetId", # required
821
- # port: 1,
822
- # },
823
- # ],
824
- # }
825
- # @!attribute [rw] target_group_arn
826
- # The Amazon Resource Name (ARN) of the target group.
827
- # @return [String]
828
- #
829
- # @!attribute [rw] targets
830
- # The targets.
831
- # @return [Array<Types::TargetDescription>]
832
- class DescribeTargetHealthInput < Struct.new(
833
- :target_group_arn,
834
- :targets)
835
- include Aws::Structure
836
- end
837
-
838
- # Contains the output of DescribeTargetHealth.
839
- # @!attribute [rw] target_health_descriptions
840
- # Information about the health of the targets.
841
- # @return [Array<Types::TargetHealthDescription>]
842
- class DescribeTargetHealthOutput < Struct.new(
843
- :target_health_descriptions)
844
- include Aws::Structure
845
- end
846
-
847
- # Information about a listener.
848
- # @!attribute [rw] listener_arn
849
- # The Amazon Resource Name (ARN) of the listener.
850
- # @return [String]
851
- #
852
- # @!attribute [rw] load_balancer_arn
853
- # The Amazon Resource Name (ARN) of the load balancer.
854
- # @return [String]
855
- #
856
- # @!attribute [rw] port
857
- # The port on which the load balancer is listening.
858
- # @return [Integer]
859
- #
860
- # @!attribute [rw] protocol
861
- # The protocol for connections from clients to the load balancer.
862
- # @return [String]
863
- #
864
- # @!attribute [rw] certificates
865
- # The SSL server certificate. You must provide a certificate if the
866
- # protocol is HTTPS.
867
- # @return [Array<Types::Certificate>]
868
- #
869
- # @!attribute [rw] ssl_policy
870
- # The security policy that defines which ciphers and protocols are
871
- # supported. The default is the current predefined security policy.
872
- # @return [String]
873
- #
874
- # @!attribute [rw] default_actions
875
- # The default actions for the listener.
876
- # @return [Array<Types::Action>]
877
- class Listener < Struct.new(
878
- :listener_arn,
879
- :load_balancer_arn,
880
- :port,
881
- :protocol,
882
- :certificates,
883
- :ssl_policy,
884
- :default_actions)
885
- include Aws::Structure
886
- end
887
-
888
- # Information about a load balancer.
889
- # @!attribute [rw] load_balancer_arn
890
- # The Amazon Resource Name (ARN) of the load balancer.
891
- # @return [String]
892
- #
893
- # @!attribute [rw] dns_name
894
- # The public DNS name of the load balancer.
895
- # @return [String]
896
- #
897
- # @!attribute [rw] canonical_hosted_zone_id
898
- # The ID of the Amazon Route 53 hosted zone associated with the load
899
- # balancer.
900
- # @return [String]
901
- #
902
- # @!attribute [rw] created_time
903
- # The date and time the load balancer was created.
904
- # @return [Time]
905
- #
906
- # @!attribute [rw] load_balancer_name
907
- # The name of the load balancer.
908
- # @return [String]
909
- #
910
- # @!attribute [rw] scheme
911
- # The nodes of an Internet-facing load balancer have public IP
912
- # addresses. The DNS name of an Internet-facing load balancer is
913
- # publicly resolvable to the public IP addresses of the nodes.
914
- # Therefore, Internet-facing load balancers can route requests from
915
- # clients over the Internet.
916
- #
917
- # The nodes of an internal load balancer have only private IP
918
- # addresses. The DNS name of an internal load balancer is publicly
919
- # resolvable to the private IP addresses of the nodes. Therefore,
920
- # internal load balancers can only route requests from clients with
921
- # access to the VPC for the load balancer.
922
- # @return [String]
923
- #
924
- # @!attribute [rw] vpc_id
925
- # The ID of the VPC for the load balancer.
926
- # @return [String]
927
- #
928
- # @!attribute [rw] state
929
- # The state of the load balancer.
930
- # @return [Types::LoadBalancerState]
931
- #
932
- # @!attribute [rw] type
933
- # The type of load balancer.
934
- # @return [String]
935
- #
936
- # @!attribute [rw] availability_zones
937
- # The Availability Zones for the load balancer.
938
- # @return [Array<Types::AvailabilityZone>]
939
- #
940
- # @!attribute [rw] security_groups
941
- # The IDs of the security groups for the load balancer.
942
- # @return [Array<String>]
943
- class LoadBalancer < Struct.new(
944
- :load_balancer_arn,
945
- :dns_name,
946
- :canonical_hosted_zone_id,
947
- :created_time,
948
- :load_balancer_name,
949
- :scheme,
950
- :vpc_id,
951
- :state,
952
- :type,
953
- :availability_zones,
954
- :security_groups)
955
- include Aws::Structure
956
- end
957
-
958
- # Information about a load balancer attribute.
959
- # @note When making an API call, pass LoadBalancerAttribute
960
- # data as a hash:
961
- #
962
- # {
963
- # key: "LoadBalancerAttributeKey",
964
- # value: "LoadBalancerAttributeValue",
965
- # }
966
- # @!attribute [rw] key
967
- # The name of the attribute.
968
- #
969
- # * `access_logs.s3.enabled` - Indicates whether access logs stored in
970
- # Amazon S3 are enabled. The value is `true` or `false`.
971
- #
972
- # * `access_logs.s3.bucket` - The name of the S3 bucket for the access
973
- # logs. This attribute is required if access logs in Amazon S3 are
974
- # enabled. The bucket must exist in the same region as the load
975
- # balancer and have a bucket policy that grants Elastic Load
976
- # Balancing permission to write to the bucket.
977
- #
978
- # * `access_logs.s3.prefix` - The prefix for the location in the S3
979
- # bucket. If you don't specify a prefix, the access logs are stored
980
- # in the root of the bucket.
981
- #
982
- # * `deletion_protection.enabled` - Indicates whether deletion
983
- # protection is enabled. The value is `true` or `false`.
984
- #
985
- # * `idle_timeout.timeout_seconds` - The idle timeout value, in
986
- # seconds. The valid range is 1-3600. The default is 60 seconds.
987
- # @return [String]
988
- #
989
- # @!attribute [rw] value
990
- # The value of the attribute.
991
- # @return [String]
992
- class LoadBalancerAttribute < Struct.new(
993
- :key,
994
- :value)
995
- include Aws::Structure
996
- end
997
-
998
- # Information about the state of the load balancer.
999
- # @!attribute [rw] code
1000
- # The state code. The initial state of the load balancer is
1001
- # `provisioning`. After the load balancer is fully set up and ready to
1002
- # route traffic, its state is `active`. If the load balancer could not
1003
- # be set up, its state is `failed`.
1004
- # @return [String]
1005
- #
1006
- # @!attribute [rw] reason
1007
- # A description of the state.
1008
- # @return [String]
1009
- class LoadBalancerState < Struct.new(
1010
- :code,
1011
- :reason)
1012
- include Aws::Structure
1013
- end
1014
-
1015
- # Information to use when checking for a successful response from a
1016
- # target.
1017
- # @note When making an API call, pass Matcher
1018
- # data as a hash:
1019
- #
1020
- # {
1021
- # http_code: "HttpCode", # required
1022
- # }
1023
- # @!attribute [rw] http_code
1024
- # The HTTP codes. The default value is 200. You can specify multiple
1025
- # values (for example, "200,202") or a range of values (for example,
1026
- # "200-299").
1027
- # @return [String]
1028
- class Matcher < Struct.new(
1029
- :http_code)
1030
- include Aws::Structure
1031
- end
1032
-
1033
- # Contains the parameters for ModifyListener.
1034
- # @note When making an API call, pass ModifyListenerInput
1035
- # data as a hash:
1036
- #
1037
- # {
1038
- # listener_arn: "ListenerArn", # required
1039
- # port: 1,
1040
- # protocol: "HTTP", # accepts HTTP, HTTPS
1041
- # ssl_policy: "SslPolicyName",
1042
- # certificates: [
1043
- # {
1044
- # certificate_arn: "CertificateArn",
1045
- # },
1046
- # ],
1047
- # default_actions: [
1048
- # {
1049
- # type: "forward", # required, accepts forward
1050
- # target_group_arn: "TargetGroupArn", # required
1051
- # },
1052
- # ],
1053
- # }
1054
- # @!attribute [rw] listener_arn
1055
- # The Amazon Resource Name (ARN) of the listener.
1056
- # @return [String]
1057
- #
1058
- # @!attribute [rw] port
1059
- # The port for connections from clients to the load balancer.
1060
- # @return [Integer]
1061
- #
1062
- # @!attribute [rw] protocol
1063
- # The protocol for connections from clients to the load balancer.
1064
- # @return [String]
1065
- #
1066
- # @!attribute [rw] ssl_policy
1067
- # The security policy that defines which ciphers and protocols are
1068
- # supported.
1069
- # @return [String]
1070
- #
1071
- # @!attribute [rw] certificates
1072
- # The SSL server certificate.
1073
- # @return [Array<Types::Certificate>]
1074
- #
1075
- # @!attribute [rw] default_actions
1076
- # The default actions.
1077
- # @return [Array<Types::Action>]
1078
- class ModifyListenerInput < Struct.new(
1079
- :listener_arn,
1080
- :port,
1081
- :protocol,
1082
- :ssl_policy,
1083
- :certificates,
1084
- :default_actions)
1085
- include Aws::Structure
1086
- end
1087
-
1088
- # Contains the output of ModifyListener.
1089
- # @!attribute [rw] listeners
1090
- # Information about the modified listeners.
1091
- # @return [Array<Types::Listener>]
1092
- class ModifyListenerOutput < Struct.new(
1093
- :listeners)
1094
- include Aws::Structure
1095
- end
1096
-
1097
- # Contains the parameters for ModifyLoadBalancerAttributes.
1098
- # @note When making an API call, pass ModifyLoadBalancerAttributesInput
1099
- # data as a hash:
1100
- #
1101
- # {
1102
- # load_balancer_arn: "LoadBalancerArn", # required
1103
- # attributes: [ # required
1104
- # {
1105
- # key: "LoadBalancerAttributeKey",
1106
- # value: "LoadBalancerAttributeValue",
1107
- # },
1108
- # ],
1109
- # }
1110
- # @!attribute [rw] load_balancer_arn
1111
- # The Amazon Resource Name (ARN) of the load balancer.
1112
- # @return [String]
1113
- #
1114
- # @!attribute [rw] attributes
1115
- # The load balancer attributes.
1116
- # @return [Array<Types::LoadBalancerAttribute>]
1117
- class ModifyLoadBalancerAttributesInput < Struct.new(
1118
- :load_balancer_arn,
1119
- :attributes)
1120
- include Aws::Structure
1121
- end
1122
-
1123
- # Contains the output of ModifyLoadBalancerAttributes.
1124
- # @!attribute [rw] attributes
1125
- # Information about the load balancer attributes.
1126
- # @return [Array<Types::LoadBalancerAttribute>]
1127
- class ModifyLoadBalancerAttributesOutput < Struct.new(
1128
- :attributes)
1129
- include Aws::Structure
1130
- end
1131
-
1132
- # Contains the parameters for ModifyRules.
1133
- # @note When making an API call, pass ModifyRuleInput
1134
- # data as a hash:
1135
- #
1136
- # {
1137
- # rule_arn: "RuleArn", # required
1138
- # conditions: [
1139
- # {
1140
- # field: "ConditionFieldName",
1141
- # values: ["StringValue"],
1142
- # },
1143
- # ],
1144
- # actions: [
1145
- # {
1146
- # type: "forward", # required, accepts forward
1147
- # target_group_arn: "TargetGroupArn", # required
1148
- # },
1149
- # ],
1150
- # }
1151
- # @!attribute [rw] rule_arn
1152
- # The Amazon Resource Name (ARN) of the rule.
1153
- # @return [String]
1154
- #
1155
- # @!attribute [rw] conditions
1156
- # The conditions.
1157
- # @return [Array<Types::RuleCondition>]
1158
- #
1159
- # @!attribute [rw] actions
1160
- # The actions.
1161
- # @return [Array<Types::Action>]
1162
- class ModifyRuleInput < Struct.new(
1163
- :rule_arn,
1164
- :conditions,
1165
- :actions)
1166
- include Aws::Structure
1167
- end
1168
-
1169
- # Contains the output of ModifyRules.
1170
- # @!attribute [rw] rules
1171
- # Information about the rule.
1172
- # @return [Array<Types::Rule>]
1173
- class ModifyRuleOutput < Struct.new(
1174
- :rules)
1175
- include Aws::Structure
1176
- end
1177
-
1178
- # Contains the parameters for ModifyTargetGroupAttributes.
1179
- # @note When making an API call, pass ModifyTargetGroupAttributesInput
1180
- # data as a hash:
1181
- #
1182
- # {
1183
- # target_group_arn: "TargetGroupArn", # required
1184
- # attributes: [ # required
1185
- # {
1186
- # key: "TargetGroupAttributeKey",
1187
- # value: "TargetGroupAttributeValue",
1188
- # },
1189
- # ],
1190
- # }
1191
- # @!attribute [rw] target_group_arn
1192
- # The Amazon Resource Name (ARN) of the target group.
1193
- # @return [String]
1194
- #
1195
- # @!attribute [rw] attributes
1196
- # The attributes.
1197
- # @return [Array<Types::TargetGroupAttribute>]
1198
- class ModifyTargetGroupAttributesInput < Struct.new(
1199
- :target_group_arn,
1200
- :attributes)
1201
- include Aws::Structure
1202
- end
1203
-
1204
- # Contains the output of ModifyTargetGroupAttributes.
1205
- # @!attribute [rw] attributes
1206
- # Information about the attributes.
1207
- # @return [Array<Types::TargetGroupAttribute>]
1208
- class ModifyTargetGroupAttributesOutput < Struct.new(
1209
- :attributes)
1210
- include Aws::Structure
1211
- end
1212
-
1213
- # Contains the parameters for ModifyTargetGroup.
1214
- # @note When making an API call, pass ModifyTargetGroupInput
1215
- # data as a hash:
1216
- #
1217
- # {
1218
- # target_group_arn: "TargetGroupArn", # required
1219
- # health_check_protocol: "HTTP", # accepts HTTP, HTTPS
1220
- # health_check_port: "HealthCheckPort",
1221
- # health_check_path: "Path",
1222
- # health_check_interval_seconds: 1,
1223
- # health_check_timeout_seconds: 1,
1224
- # healthy_threshold_count: 1,
1225
- # unhealthy_threshold_count: 1,
1226
- # matcher: {
1227
- # http_code: "HttpCode", # required
1228
- # },
1229
- # }
1230
- # @!attribute [rw] target_group_arn
1231
- # The Amazon Resource Name (ARN) of the target group.
1232
- # @return [String]
1233
- #
1234
- # @!attribute [rw] health_check_protocol
1235
- # The protocol to use to connect with the target.
1236
- # @return [String]
1237
- #
1238
- # @!attribute [rw] health_check_port
1239
- # The port to use to connect with the target.
1240
- # @return [String]
1241
- #
1242
- # @!attribute [rw] health_check_path
1243
- # The ping path that is the destination for the health check request.
1244
- # @return [String]
1245
- #
1246
- # @!attribute [rw] health_check_interval_seconds
1247
- # The approximate amount of time, in seconds, between health checks of
1248
- # an individual target.
1249
- # @return [Integer]
1250
- #
1251
- # @!attribute [rw] health_check_timeout_seconds
1252
- # The amount of time, in seconds, during which no response means a
1253
- # failed health check.
1254
- # @return [Integer]
1255
- #
1256
- # @!attribute [rw] healthy_threshold_count
1257
- # The number of consecutive health checks successes required before
1258
- # considering an unhealthy target healthy.
1259
- # @return [Integer]
1260
- #
1261
- # @!attribute [rw] unhealthy_threshold_count
1262
- # The number of consecutive health check failures required before
1263
- # considering the target unhealthy.
1264
- # @return [Integer]
1265
- #
1266
- # @!attribute [rw] matcher
1267
- # The HTTP codes to use when checking for a successful response from a
1268
- # target.
1269
- # @return [Types::Matcher]
1270
- class ModifyTargetGroupInput < Struct.new(
1271
- :target_group_arn,
1272
- :health_check_protocol,
1273
- :health_check_port,
1274
- :health_check_path,
1275
- :health_check_interval_seconds,
1276
- :health_check_timeout_seconds,
1277
- :healthy_threshold_count,
1278
- :unhealthy_threshold_count,
1279
- :matcher)
1280
- include Aws::Structure
1281
- end
1282
-
1283
- # Contains the output of ModifyTargetGroup.
1284
- # @!attribute [rw] target_groups
1285
- # Information about the target group.
1286
- # @return [Array<Types::TargetGroup>]
1287
- class ModifyTargetGroupOutput < Struct.new(
1288
- :target_groups)
1289
- include Aws::Structure
1290
- end
1291
-
1292
- # Contains the parameters for RegisterTargets.
1293
- # @note When making an API call, pass RegisterTargetsInput
1294
- # data as a hash:
1295
- #
1296
- # {
1297
- # target_group_arn: "TargetGroupArn", # required
1298
- # targets: [ # required
1299
- # {
1300
- # id: "TargetId", # required
1301
- # port: 1,
1302
- # },
1303
- # ],
1304
- # }
1305
- # @!attribute [rw] target_group_arn
1306
- # The Amazon Resource Name (ARN) of the target group.
1307
- # @return [String]
1308
- #
1309
- # @!attribute [rw] targets
1310
- # The targets. The default port for a target is the port for the
1311
- # target group. You can specify a port override. If a target is
1312
- # already registered, you can register it again using a different
1313
- # port.
1314
- # @return [Array<Types::TargetDescription>]
1315
- class RegisterTargetsInput < Struct.new(
1316
- :target_group_arn,
1317
- :targets)
1318
- include Aws::Structure
1319
- end
1320
-
1321
- # Contains the output of RegisterTargets.
1322
- class RegisterTargetsOutput < Aws::EmptyStructure; end
1323
-
1324
- # Contains the parameters for RemoveTags.
1325
- # @note When making an API call, pass RemoveTagsInput
1326
- # data as a hash:
1327
- #
1328
- # {
1329
- # resource_arns: ["ResourceArn"], # required
1330
- # tag_keys: ["TagKey"], # required
1331
- # }
1332
- # @!attribute [rw] resource_arns
1333
- # The Amazon Resource Name (ARN) of the resource.
1334
- # @return [Array<String>]
1335
- #
1336
- # @!attribute [rw] tag_keys
1337
- # The tag keys for the tags to remove.
1338
- # @return [Array<String>]
1339
- class RemoveTagsInput < Struct.new(
1340
- :resource_arns,
1341
- :tag_keys)
1342
- include Aws::Structure
1343
- end
1344
-
1345
- # Contains the output of RemoveTags.
1346
- class RemoveTagsOutput < Aws::EmptyStructure; end
1347
-
1348
- # Information about a rule.
1349
- # @!attribute [rw] rule_arn
1350
- # The Amazon Resource Name (ARN) of the rule.
1351
- # @return [String]
1352
- #
1353
- # @!attribute [rw] priority
1354
- # The priority.
1355
- # @return [String]
1356
- #
1357
- # @!attribute [rw] conditions
1358
- # The conditions.
1359
- # @return [Array<Types::RuleCondition>]
1360
- #
1361
- # @!attribute [rw] actions
1362
- # The actions.
1363
- # @return [Array<Types::Action>]
1364
- #
1365
- # @!attribute [rw] is_default
1366
- # Indicates whether this is the default rule.
1367
- # @return [Boolean]
1368
- class Rule < Struct.new(
1369
- :rule_arn,
1370
- :priority,
1371
- :conditions,
1372
- :actions,
1373
- :is_default)
1374
- include Aws::Structure
1375
- end
1376
-
1377
- # Information about a condition for a rule.
1378
- # @note When making an API call, pass RuleCondition
1379
- # data as a hash:
1380
- #
1381
- # {
1382
- # field: "ConditionFieldName",
1383
- # values: ["StringValue"],
1384
- # }
1385
- # @!attribute [rw] field
1386
- # The only possible value is `path-pattern`.
1387
- # @return [String]
1388
- #
1389
- # @!attribute [rw] values
1390
- # The path pattern. You can specify a single path pattern.
1391
- #
1392
- # A path pattern is case sensitive, can be up to 255 characters in
1393
- # length, and can contain any of the following characters:
1394
- #
1395
- # * A-Z, a-z, 0-9
1396
- #
1397
- # * \_ - . $ / ~ " ' @ : +
1398
- #
1399
- # * &amp; (using &amp;amp;)
1400
- #
1401
- # * * (matches 0 or more characters)
1402
- #
1403
- # * ? (matches exactly 1 character)
1404
- # @return [Array<String>]
1405
- class RuleCondition < Struct.new(
1406
- :field,
1407
- :values)
1408
- include Aws::Structure
1409
- end
1410
-
1411
- # Information about the priorities for the rules for a listener.
1412
- # @note When making an API call, pass RulePriorityPair
1413
- # data as a hash:
1414
- #
1415
- # {
1416
- # rule_arn: "RuleArn",
1417
- # priority: 1,
1418
- # }
1419
- # @!attribute [rw] rule_arn
1420
- # The Amazon Resource Name (ARN) of the rule.
1421
- # @return [String]
1422
- #
1423
- # @!attribute [rw] priority
1424
- # The rule priority.
1425
- # @return [Integer]
1426
- class RulePriorityPair < Struct.new(
1427
- :rule_arn,
1428
- :priority)
1429
- include Aws::Structure
1430
- end
1431
-
1432
- # Contains the parameters for SetRulePriorities.
1433
- # @note When making an API call, pass SetRulePrioritiesInput
1434
- # data as a hash:
1435
- #
1436
- # {
1437
- # rule_priorities: [ # required
1438
- # {
1439
- # rule_arn: "RuleArn",
1440
- # priority: 1,
1441
- # },
1442
- # ],
1443
- # }
1444
- # @!attribute [rw] rule_priorities
1445
- # The rule priorities.
1446
- # @return [Array<Types::RulePriorityPair>]
1447
- class SetRulePrioritiesInput < Struct.new(
1448
- :rule_priorities)
1449
- include Aws::Structure
1450
- end
1451
-
1452
- # Contains the output of SetRulePriorities.
1453
- # @!attribute [rw] rules
1454
- # Information about the rules.
1455
- # @return [Array<Types::Rule>]
1456
- class SetRulePrioritiesOutput < Struct.new(
1457
- :rules)
1458
- include Aws::Structure
1459
- end
1460
-
1461
- # Contains the parameters for SetSecurityGroups.
1462
- # @note When making an API call, pass SetSecurityGroupsInput
1463
- # data as a hash:
1464
- #
1465
- # {
1466
- # load_balancer_arn: "LoadBalancerArn", # required
1467
- # security_groups: ["SecurityGroupId"], # required
1468
- # }
1469
- # @!attribute [rw] load_balancer_arn
1470
- # The Amazon Resource Name (ARN) of the load balancer.
1471
- # @return [String]
1472
- #
1473
- # @!attribute [rw] security_groups
1474
- # The IDs of the security groups.
1475
- # @return [Array<String>]
1476
- class SetSecurityGroupsInput < Struct.new(
1477
- :load_balancer_arn,
1478
- :security_groups)
1479
- include Aws::Structure
1480
- end
1481
-
1482
- # Contains the output of SetSecurityGroups.
1483
- # @!attribute [rw] security_group_ids
1484
- # The IDs of the security groups associated with the load balancer.
1485
- # @return [Array<String>]
1486
- class SetSecurityGroupsOutput < Struct.new(
1487
- :security_group_ids)
1488
- include Aws::Structure
1489
- end
1490
-
1491
- # Contains the parameters for SetSubnets.
1492
- # @note When making an API call, pass SetSubnetsInput
1493
- # data as a hash:
1494
- #
1495
- # {
1496
- # load_balancer_arn: "LoadBalancerArn", # required
1497
- # subnets: ["SubnetId"], # required
1498
- # }
1499
- # @!attribute [rw] load_balancer_arn
1500
- # The Amazon Resource Name (ARN) of the load balancer.
1501
- # @return [String]
1502
- #
1503
- # @!attribute [rw] subnets
1504
- # The IDs of the subnets. You must specify at least two subnets. You
1505
- # can add only one subnet per Availability Zone.
1506
- # @return [Array<String>]
1507
- class SetSubnetsInput < Struct.new(
1508
- :load_balancer_arn,
1509
- :subnets)
1510
- include Aws::Structure
1511
- end
1512
-
1513
- # Contains the output of SetSubnets.
1514
- # @!attribute [rw] availability_zones
1515
- # Information about the subnet and Availability Zone.
1516
- # @return [Array<Types::AvailabilityZone>]
1517
- class SetSubnetsOutput < Struct.new(
1518
- :availability_zones)
1519
- include Aws::Structure
1520
- end
1521
-
1522
- # Information about a policy used for SSL negotiation.
1523
- # @!attribute [rw] ssl_protocols
1524
- # The protocols.
1525
- # @return [Array<String>]
1526
- #
1527
- # @!attribute [rw] ciphers
1528
- # The ciphers.
1529
- # @return [Array<Types::Cipher>]
1530
- #
1531
- # @!attribute [rw] name
1532
- # The name of the policy.
1533
- # @return [String]
1534
- class SslPolicy < Struct.new(
1535
- :ssl_protocols,
1536
- :ciphers,
1537
- :name)
1538
- include Aws::Structure
1539
- end
1540
-
1541
- # Information about a tag.
1542
- # @note When making an API call, pass Tag
1543
- # data as a hash:
1544
- #
1545
- # {
1546
- # key: "TagKey", # required
1547
- # value: "TagValue",
1548
- # }
1549
- # @!attribute [rw] key
1550
- # The key of the tag.
1551
- # @return [String]
1552
- #
1553
- # @!attribute [rw] value
1554
- # The value of the tag.
1555
- # @return [String]
1556
- class Tag < Struct.new(
1557
- :key,
1558
- :value)
1559
- include Aws::Structure
1560
- end
1561
-
1562
- # The tags associated with a resource.
1563
- # @!attribute [rw] resource_arn
1564
- # The Amazon Resource Name (ARN) of the resource.
1565
- # @return [String]
1566
- #
1567
- # @!attribute [rw] tags
1568
- # Information about the tags.
1569
- # @return [Array<Types::Tag>]
1570
- class TagDescription < Struct.new(
1571
- :resource_arn,
1572
- :tags)
1573
- include Aws::Structure
1574
- end
1575
-
1576
- # Information about a target.
1577
- # @note When making an API call, pass TargetDescription
1578
- # data as a hash:
1579
- #
1580
- # {
1581
- # id: "TargetId", # required
1582
- # port: 1,
1583
- # }
1584
- # @!attribute [rw] id
1585
- # The ID of the target.
1586
- # @return [String]
1587
- #
1588
- # @!attribute [rw] port
1589
- # The port on which the target is listening.
1590
- # @return [Integer]
1591
- class TargetDescription < Struct.new(
1592
- :id,
1593
- :port)
1594
- include Aws::Structure
1595
- end
1596
-
1597
- # Information about a target group.
1598
- # @!attribute [rw] target_group_arn
1599
- # The Amazon Resource Name (ARN) of the target group.
1600
- # @return [String]
1601
- #
1602
- # @!attribute [rw] target_group_name
1603
- # The name of the target group.
1604
- # @return [String]
1605
- #
1606
- # @!attribute [rw] protocol
1607
- # The protocol to use for routing traffic to the targets.
1608
- # @return [String]
1609
- #
1610
- # @!attribute [rw] port
1611
- # The port on which the targets are listening.
1612
- # @return [Integer]
1613
- #
1614
- # @!attribute [rw] vpc_id
1615
- # The ID of the VPC for the targets.
1616
- # @return [String]
1617
- #
1618
- # @!attribute [rw] health_check_protocol
1619
- # The protocol to use to connect with the target.
1620
- # @return [String]
1621
- #
1622
- # @!attribute [rw] health_check_port
1623
- # The port to use to connect with the target.
1624
- # @return [String]
1625
- #
1626
- # @!attribute [rw] health_check_interval_seconds
1627
- # The approximate amount of time, in seconds, between health checks of
1628
- # an individual target.
1629
- # @return [Integer]
1630
- #
1631
- # @!attribute [rw] health_check_timeout_seconds
1632
- # The amount of time, in seconds, during which no response means a
1633
- # failed health check.
1634
- # @return [Integer]
1635
- #
1636
- # @!attribute [rw] healthy_threshold_count
1637
- # The number of consecutive health checks successes required before
1638
- # considering an unhealthy target healthy.
1639
- # @return [Integer]
1640
- #
1641
- # @!attribute [rw] unhealthy_threshold_count
1642
- # The number of consecutive health check failures required before
1643
- # considering the target unhealthy.
1644
- # @return [Integer]
1645
- #
1646
- # @!attribute [rw] health_check_path
1647
- # The destination for the health check request.
1648
- # @return [String]
1649
- #
1650
- # @!attribute [rw] matcher
1651
- # The HTTP codes to use when checking for a successful response from a
1652
- # target.
1653
- # @return [Types::Matcher]
1654
- #
1655
- # @!attribute [rw] load_balancer_arns
1656
- # The Amazon Resource Names (ARN) of the load balancers that route
1657
- # traffic to this target group.
1658
- # @return [Array<String>]
1659
- class TargetGroup < Struct.new(
1660
- :target_group_arn,
1661
- :target_group_name,
1662
- :protocol,
1663
- :port,
1664
- :vpc_id,
1665
- :health_check_protocol,
1666
- :health_check_port,
1667
- :health_check_interval_seconds,
1668
- :health_check_timeout_seconds,
1669
- :healthy_threshold_count,
1670
- :unhealthy_threshold_count,
1671
- :health_check_path,
1672
- :matcher,
1673
- :load_balancer_arns)
1674
- include Aws::Structure
1675
- end
1676
-
1677
- # Information about a target group attribute.
1678
- # @note When making an API call, pass TargetGroupAttribute
1679
- # data as a hash:
1680
- #
1681
- # {
1682
- # key: "TargetGroupAttributeKey",
1683
- # value: "TargetGroupAttributeValue",
1684
- # }
1685
- # @!attribute [rw] key
1686
- # The name of the attribute.
1687
- #
1688
- # * `deregistration_delay.timeout_seconds` - The amount time for
1689
- # Elastic Load Balancing to wait before changing the state of a
1690
- # deregistering target from `draining` to `unused`. The range is
1691
- # 0-3600 seconds. The default value is 300 seconds.
1692
- #
1693
- # * `stickiness.enabled` - Indicates whether sticky sessions are
1694
- # enabled. The value is `true` or `false`.
1695
- #
1696
- # * `stickiness.type` - The type of sticky sessions. The possible
1697
- # value is `lb_cookie`.
1698
- #
1699
- # * `stickiness.lb_cookie.duration_seconds` - The time period, in
1700
- # seconds, during which requests from a client should be routed to
1701
- # the same target. After this time period expires, the load
1702
- # balancer-generated cookie is considered stale. The range is 1
1703
- # second to 1 week (604800 seconds). The default value is 1 day
1704
- # (86400 seconds).
1705
- # @return [String]
1706
- #
1707
- # @!attribute [rw] value
1708
- # The value of the attribute.
1709
- # @return [String]
1710
- class TargetGroupAttribute < Struct.new(
1711
- :key,
1712
- :value)
1713
- include Aws::Structure
1714
- end
1715
-
1716
- # Information about the current health of a target.
1717
- # @!attribute [rw] state
1718
- # The state of the target.
1719
- # @return [String]
1720
- #
1721
- # @!attribute [rw] reason
1722
- # The reason code. If the target state is `healthy`, a reason code is
1723
- # not provided.
1724
- #
1725
- # If the target state is `initial`, the reason code can be one of the
1726
- # following values:
1727
- #
1728
- # * `Elb.RegistrationInProgress` - The target is in the process of
1729
- # being registered with the load balancer.
1730
- #
1731
- # * `Elb.InitialHealthChecking` - The load balancer is still sending
1732
- # the target the minimum number of health checks required to
1733
- # determine its health status.
1734
- #
1735
- # If the target state is `unhealthy`, the reason code can be one of
1736
- # the following values:
1737
- #
1738
- # * `Target.ResponseCodeMismatch` - The health checks did not return
1739
- # an expected HTTP code.
1740
- #
1741
- # * `Target.Timeout` - The health check requests timed out.
1742
- #
1743
- # * `Target.FailedHealthChecks` - The health checks failed because the
1744
- # connection to the target timed out, the target response was
1745
- # malformed, or the target failed the health check for an unknown
1746
- # reason.
1747
- #
1748
- # * `Elb.InternalError` - The health checks failed due to an internal
1749
- # error.
1750
- #
1751
- # If the target state is `unused`, the reason code can be one of the
1752
- # following values:
1753
- #
1754
- # * `Target.NotRegistered` - The target is not registered with the
1755
- # target group.
1756
- #
1757
- # * `Target.NotInUse` - The target group is not used by any load
1758
- # balancer or the target is in an Availability Zone that is not
1759
- # enabled for its load balancer.
1760
- #
1761
- # * `Target.InvalidState` - The target is in the stopped or terminated
1762
- # state.
1763
- #
1764
- # If the target state is `draining`, the reason code can be the
1765
- # following value:
1766
- #
1767
- # * `Target.DeregistrationInProgress` - The target is in the process
1768
- # of being deregistered and the deregistration delay period has not
1769
- # expired.
1770
- #
1771
- # ^
1772
- # @return [String]
1773
- #
1774
- # @!attribute [rw] description
1775
- # A description of the target health that provides additional details.
1776
- # If the state is `healthy`, a description is not provided.
1777
- # @return [String]
1778
- class TargetHealth < Struct.new(
1779
- :state,
1780
- :reason,
1781
- :description)
1782
- include Aws::Structure
1783
- end
1784
-
1785
- # Information about the health of a target.
1786
- # @!attribute [rw] target
1787
- # The description of the target.
1788
- # @return [Types::TargetDescription]
1789
- #
1790
- # @!attribute [rw] health_check_port
1791
- # The port to use to connect with the target.
1792
- # @return [String]
1793
- #
1794
- # @!attribute [rw] target_health
1795
- # The health information for the target.
1796
- # @return [Types::TargetHealth]
1797
- class TargetHealthDescription < Struct.new(
1798
- :target,
1799
- :health_check_port,
1800
- :target_health)
1801
- include Aws::Structure
1802
- end
8
+ module Aws::ElasticLoadBalancingV2
9
+ module Types
10
+
11
+ # Information about an action.
12
+ #
13
+ # @note When making an API call, you may pass Action
14
+ # data as a hash:
15
+ #
16
+ # {
17
+ # type: "forward", # required, accepts forward
18
+ # target_group_arn: "TargetGroupArn", # required
19
+ # }
20
+ #
21
+ # @!attribute [rw] type
22
+ # The type of action.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] target_group_arn
26
+ # The Amazon Resource Name (ARN) of the target group.
27
+ # @return [String]
28
+ #
29
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Action AWS API Documentation
30
+ #
31
+ class Action < Struct.new(
32
+ :type,
33
+ :target_group_arn)
34
+ include Aws::Structure
35
+ end
36
+
37
+ # @note When making an API call, you may pass AddTagsInput
38
+ # data as a hash:
39
+ #
40
+ # {
41
+ # resource_arns: ["ResourceArn"], # required
42
+ # tags: [ # required
43
+ # {
44
+ # key: "TagKey", # required
45
+ # value: "TagValue",
46
+ # },
47
+ # ],
48
+ # }
49
+ #
50
+ # @!attribute [rw] resource_arns
51
+ # The Amazon Resource Name (ARN) of the resource.
52
+ # @return [Array<String>]
53
+ #
54
+ # @!attribute [rw] tags
55
+ # The tags. Each resource can have a maximum of 10 tags.
56
+ # @return [Array<Types::Tag>]
57
+ #
58
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTagsInput AWS API Documentation
59
+ #
60
+ class AddTagsInput < Struct.new(
61
+ :resource_arns,
62
+ :tags)
63
+ include Aws::Structure
64
+ end
65
+
66
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTagsOutput AWS API Documentation
67
+ #
68
+ class AddTagsOutput < Aws::EmptyStructure; end
69
+
70
+ # Information about an Availability Zone.
71
+ #
72
+ # @!attribute [rw] zone_name
73
+ # The name of the Availability Zone.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] subnet_id
77
+ # The ID of the subnet.
78
+ # @return [String]
79
+ #
80
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AvailabilityZone AWS API Documentation
81
+ #
82
+ class AvailabilityZone < Struct.new(
83
+ :zone_name,
84
+ :subnet_id)
85
+ include Aws::Structure
86
+ end
87
+
88
+ # Information about an SSL server certificate deployed on a load
89
+ # balancer.
90
+ #
91
+ # @note When making an API call, you may pass Certificate
92
+ # data as a hash:
93
+ #
94
+ # {
95
+ # certificate_arn: "CertificateArn",
96
+ # }
97
+ #
98
+ # @!attribute [rw] certificate_arn
99
+ # The Amazon Resource Name (ARN) of the certificate.
100
+ # @return [String]
101
+ #
102
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Certificate AWS API Documentation
103
+ #
104
+ class Certificate < Struct.new(
105
+ :certificate_arn)
106
+ include Aws::Structure
107
+ end
108
+
109
+ # Information about a cipher used in a policy.
110
+ #
111
+ # @!attribute [rw] name
112
+ # The name of the cipher.
113
+ # @return [String]
114
+ #
115
+ # @!attribute [rw] priority
116
+ # The priority of the cipher.
117
+ # @return [Integer]
118
+ #
119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Cipher AWS API Documentation
120
+ #
121
+ class Cipher < Struct.new(
122
+ :name,
123
+ :priority)
124
+ include Aws::Structure
125
+ end
126
+
127
+ # @note When making an API call, you may pass CreateListenerInput
128
+ # data as a hash:
129
+ #
130
+ # {
131
+ # load_balancer_arn: "LoadBalancerArn", # required
132
+ # protocol: "HTTP", # required, accepts HTTP, HTTPS
133
+ # port: 1, # required
134
+ # ssl_policy: "SslPolicyName",
135
+ # certificates: [
136
+ # {
137
+ # certificate_arn: "CertificateArn",
138
+ # },
139
+ # ],
140
+ # default_actions: [ # required
141
+ # {
142
+ # type: "forward", # required, accepts forward
143
+ # target_group_arn: "TargetGroupArn", # required
144
+ # },
145
+ # ],
146
+ # }
147
+ #
148
+ # @!attribute [rw] load_balancer_arn
149
+ # The Amazon Resource Name (ARN) of the load balancer.
150
+ # @return [String]
151
+ #
152
+ # @!attribute [rw] protocol
153
+ # The protocol for connections from clients to the load balancer.
154
+ # @return [String]
155
+ #
156
+ # @!attribute [rw] port
157
+ # The port on which the load balancer is listening.
158
+ # @return [Integer]
159
+ #
160
+ # @!attribute [rw] ssl_policy
161
+ # The security policy that defines which ciphers and protocols are
162
+ # supported. The default is the current predefined security policy.
163
+ # @return [String]
164
+ #
165
+ # @!attribute [rw] certificates
166
+ # The SSL server certificate. You must provide exactly one certificate
167
+ # if the protocol is HTTPS.
168
+ # @return [Array<Types::Certificate>]
169
+ #
170
+ # @!attribute [rw] default_actions
171
+ # The default action for the listener.
172
+ # @return [Array<Types::Action>]
173
+ #
174
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerInput AWS API Documentation
175
+ #
176
+ class CreateListenerInput < Struct.new(
177
+ :load_balancer_arn,
178
+ :protocol,
179
+ :port,
180
+ :ssl_policy,
181
+ :certificates,
182
+ :default_actions)
183
+ include Aws::Structure
184
+ end
185
+
186
+ # @!attribute [rw] listeners
187
+ # Information about the listener.
188
+ # @return [Array<Types::Listener>]
189
+ #
190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerOutput AWS API Documentation
191
+ #
192
+ class CreateListenerOutput < Struct.new(
193
+ :listeners)
194
+ include Aws::Structure
195
+ end
196
+
197
+ # @note When making an API call, you may pass CreateLoadBalancerInput
198
+ # data as a hash:
199
+ #
200
+ # {
201
+ # name: "LoadBalancerName", # required
202
+ # subnets: ["SubnetId"], # required
203
+ # security_groups: ["SecurityGroupId"],
204
+ # scheme: "internet-facing", # accepts internet-facing, internal
205
+ # tags: [
206
+ # {
207
+ # key: "TagKey", # required
208
+ # value: "TagValue",
209
+ # },
210
+ # ],
211
+ # ip_address_type: "ipv4", # accepts ipv4, dualstack
212
+ # }
213
+ #
214
+ # @!attribute [rw] name
215
+ # The name of the load balancer.
216
+ #
217
+ # This name must be unique within your AWS account, can have a maximum
218
+ # of 32 characters, must contain only alphanumeric characters or
219
+ # hyphens, and must not begin or end with a hyphen.
220
+ # @return [String]
221
+ #
222
+ # @!attribute [rw] subnets
223
+ # The IDs of the subnets to attach to the load balancer. You can
224
+ # specify only one subnet per Availability Zone. You must specify
225
+ # subnets from at least two Availability Zones.
226
+ # @return [Array<String>]
227
+ #
228
+ # @!attribute [rw] security_groups
229
+ # The IDs of the security groups to assign to the load balancer.
230
+ # @return [Array<String>]
231
+ #
232
+ # @!attribute [rw] scheme
233
+ # The nodes of an Internet-facing load balancer have public IP
234
+ # addresses. The DNS name of an Internet-facing load balancer is
235
+ # publicly resolvable to the public IP addresses of the nodes.
236
+ # Therefore, Internet-facing load balancers can route requests from
237
+ # clients over the Internet.
238
+ #
239
+ # The nodes of an internal load balancer have only private IP
240
+ # addresses. The DNS name of an internal load balancer is publicly
241
+ # resolvable to the private IP addresses of the nodes. Therefore,
242
+ # internal load balancers can only route requests from clients with
243
+ # access to the VPC for the load balancer.
244
+ #
245
+ # The default is an Internet-facing load balancer.
246
+ # @return [String]
247
+ #
248
+ # @!attribute [rw] tags
249
+ # One or more tags to assign to the load balancer.
250
+ # @return [Array<Types::Tag>]
251
+ #
252
+ # @!attribute [rw] ip_address_type
253
+ # The type of IP addresses used by the subnets for your load balancer.
254
+ # The possible values are `ipv4` (for IPv4 addresses) and `dualstack`
255
+ # (for IPv4 and IPv6 addresses). Internal load balancers must use
256
+ # `ipv4`.
257
+ # @return [String]
258
+ #
259
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerInput AWS API Documentation
260
+ #
261
+ class CreateLoadBalancerInput < Struct.new(
262
+ :name,
263
+ :subnets,
264
+ :security_groups,
265
+ :scheme,
266
+ :tags,
267
+ :ip_address_type)
268
+ include Aws::Structure
269
+ end
270
+
271
+ # @!attribute [rw] load_balancers
272
+ # Information about the load balancer.
273
+ # @return [Array<Types::LoadBalancer>]
274
+ #
275
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerOutput AWS API Documentation
276
+ #
277
+ class CreateLoadBalancerOutput < Struct.new(
278
+ :load_balancers)
279
+ include Aws::Structure
280
+ end
281
+
282
+ # @note When making an API call, you may pass CreateRuleInput
283
+ # data as a hash:
284
+ #
285
+ # {
286
+ # listener_arn: "ListenerArn", # required
287
+ # conditions: [ # required
288
+ # {
289
+ # field: "ConditionFieldName",
290
+ # values: ["StringValue"],
291
+ # },
292
+ # ],
293
+ # priority: 1, # required
294
+ # actions: [ # required
295
+ # {
296
+ # type: "forward", # required, accepts forward
297
+ # target_group_arn: "TargetGroupArn", # required
298
+ # },
299
+ # ],
300
+ # }
301
+ #
302
+ # @!attribute [rw] listener_arn
303
+ # The Amazon Resource Name (ARN) of the listener.
304
+ # @return [String]
305
+ #
306
+ # @!attribute [rw] conditions
307
+ # A condition. Each condition has the field `path-pattern` and
308
+ # specifies one path pattern. A path pattern is case sensitive, can be
309
+ # up to 128 characters in length, and can contain any of the following
310
+ # characters. Note that you can include up to three wildcard
311
+ # characters in a path pattern.
312
+ #
313
+ # * A-Z, a-z, 0-9
314
+ #
315
+ # * \_ - . $ / ~ " ' @ : +
316
+ #
317
+ # * &amp; (using &amp;amp;)
318
+ #
319
+ # * * (matches 0 or more characters)
320
+ #
321
+ # * ? (matches exactly 1 character)
322
+ # @return [Array<Types::RuleCondition>]
323
+ #
324
+ # @!attribute [rw] priority
325
+ # The priority for the rule. A listener can't have multiple rules
326
+ # with the same priority.
327
+ # @return [Integer]
328
+ #
329
+ # @!attribute [rw] actions
330
+ # An action. Each action has the type `forward` and specifies a target
331
+ # group.
332
+ # @return [Array<Types::Action>]
333
+ #
334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRuleInput AWS API Documentation
335
+ #
336
+ class CreateRuleInput < Struct.new(
337
+ :listener_arn,
338
+ :conditions,
339
+ :priority,
340
+ :actions)
341
+ include Aws::Structure
342
+ end
343
+
344
+ # @!attribute [rw] rules
345
+ # Information about the rule.
346
+ # @return [Array<Types::Rule>]
347
+ #
348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRuleOutput AWS API Documentation
349
+ #
350
+ class CreateRuleOutput < Struct.new(
351
+ :rules)
352
+ include Aws::Structure
353
+ end
354
+
355
+ # @note When making an API call, you may pass CreateTargetGroupInput
356
+ # data as a hash:
357
+ #
358
+ # {
359
+ # name: "TargetGroupName", # required
360
+ # protocol: "HTTP", # required, accepts HTTP, HTTPS
361
+ # port: 1, # required
362
+ # vpc_id: "VpcId", # required
363
+ # health_check_protocol: "HTTP", # accepts HTTP, HTTPS
364
+ # health_check_port: "HealthCheckPort",
365
+ # health_check_path: "Path",
366
+ # health_check_interval_seconds: 1,
367
+ # health_check_timeout_seconds: 1,
368
+ # healthy_threshold_count: 1,
369
+ # unhealthy_threshold_count: 1,
370
+ # matcher: {
371
+ # http_code: "HttpCode", # required
372
+ # },
373
+ # }
374
+ #
375
+ # @!attribute [rw] name
376
+ # The name of the target group.
377
+ # @return [String]
378
+ #
379
+ # @!attribute [rw] protocol
380
+ # The protocol to use for routing traffic to the targets.
381
+ # @return [String]
382
+ #
383
+ # @!attribute [rw] port
384
+ # The port on which the targets receive traffic. This port is used
385
+ # unless you specify a port override when registering the target.
386
+ # @return [Integer]
387
+ #
388
+ # @!attribute [rw] vpc_id
389
+ # The identifier of the virtual private cloud (VPC).
390
+ # @return [String]
391
+ #
392
+ # @!attribute [rw] health_check_protocol
393
+ # The protocol the load balancer uses when performing health checks on
394
+ # targets. The default is the HTTP protocol.
395
+ # @return [String]
396
+ #
397
+ # @!attribute [rw] health_check_port
398
+ # The port the load balancer uses when performing health checks on
399
+ # targets. The default is `traffic-port`, which indicates the port on
400
+ # which each target receives traffic from the load balancer.
401
+ # @return [String]
402
+ #
403
+ # @!attribute [rw] health_check_path
404
+ # The ping path that is the destination on the targets for health
405
+ # checks. The default is /.
406
+ # @return [String]
407
+ #
408
+ # @!attribute [rw] health_check_interval_seconds
409
+ # The approximate amount of time, in seconds, between health checks of
410
+ # an individual target. The default is 30 seconds.
411
+ # @return [Integer]
412
+ #
413
+ # @!attribute [rw] health_check_timeout_seconds
414
+ # The amount of time, in seconds, during which no response from a
415
+ # target means a failed health check. The default is 5 seconds.
416
+ # @return [Integer]
417
+ #
418
+ # @!attribute [rw] healthy_threshold_count
419
+ # The number of consecutive health checks successes required before
420
+ # considering an unhealthy target healthy. The default is 5.
421
+ # @return [Integer]
422
+ #
423
+ # @!attribute [rw] unhealthy_threshold_count
424
+ # The number of consecutive health check failures required before
425
+ # considering a target unhealthy. The default is 2.
426
+ # @return [Integer]
427
+ #
428
+ # @!attribute [rw] matcher
429
+ # The HTTP codes to use when checking for a successful response from a
430
+ # target. The default is 200.
431
+ # @return [Types::Matcher]
432
+ #
433
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroupInput AWS API Documentation
434
+ #
435
+ class CreateTargetGroupInput < Struct.new(
436
+ :name,
437
+ :protocol,
438
+ :port,
439
+ :vpc_id,
440
+ :health_check_protocol,
441
+ :health_check_port,
442
+ :health_check_path,
443
+ :health_check_interval_seconds,
444
+ :health_check_timeout_seconds,
445
+ :healthy_threshold_count,
446
+ :unhealthy_threshold_count,
447
+ :matcher)
448
+ include Aws::Structure
449
+ end
450
+
451
+ # @!attribute [rw] target_groups
452
+ # Information about the target group.
453
+ # @return [Array<Types::TargetGroup>]
454
+ #
455
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroupOutput AWS API Documentation
456
+ #
457
+ class CreateTargetGroupOutput < Struct.new(
458
+ :target_groups)
459
+ include Aws::Structure
460
+ end
461
+
462
+ # @note When making an API call, you may pass DeleteListenerInput
463
+ # data as a hash:
464
+ #
465
+ # {
466
+ # listener_arn: "ListenerArn", # required
467
+ # }
468
+ #
469
+ # @!attribute [rw] listener_arn
470
+ # The Amazon Resource Name (ARN) of the listener.
471
+ # @return [String]
472
+ #
473
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListenerInput AWS API Documentation
474
+ #
475
+ class DeleteListenerInput < Struct.new(
476
+ :listener_arn)
477
+ include Aws::Structure
478
+ end
479
+
480
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListenerOutput AWS API Documentation
481
+ #
482
+ class DeleteListenerOutput < Aws::EmptyStructure; end
483
+
484
+ # @note When making an API call, you may pass DeleteLoadBalancerInput
485
+ # data as a hash:
486
+ #
487
+ # {
488
+ # load_balancer_arn: "LoadBalancerArn", # required
489
+ # }
490
+ #
491
+ # @!attribute [rw] load_balancer_arn
492
+ # The Amazon Resource Name (ARN) of the load balancer.
493
+ # @return [String]
494
+ #
495
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancerInput AWS API Documentation
496
+ #
497
+ class DeleteLoadBalancerInput < Struct.new(
498
+ :load_balancer_arn)
499
+ include Aws::Structure
500
+ end
501
+
502
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancerOutput AWS API Documentation
503
+ #
504
+ class DeleteLoadBalancerOutput < Aws::EmptyStructure; end
505
+
506
+ # @note When making an API call, you may pass DeleteRuleInput
507
+ # data as a hash:
508
+ #
509
+ # {
510
+ # rule_arn: "RuleArn", # required
511
+ # }
512
+ #
513
+ # @!attribute [rw] rule_arn
514
+ # The Amazon Resource Name (ARN) of the rule.
515
+ # @return [String]
516
+ #
517
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRuleInput AWS API Documentation
518
+ #
519
+ class DeleteRuleInput < Struct.new(
520
+ :rule_arn)
521
+ include Aws::Structure
522
+ end
523
+
524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRuleOutput AWS API Documentation
525
+ #
526
+ class DeleteRuleOutput < Aws::EmptyStructure; end
527
+
528
+ # @note When making an API call, you may pass DeleteTargetGroupInput
529
+ # data as a hash:
530
+ #
531
+ # {
532
+ # target_group_arn: "TargetGroupArn", # required
533
+ # }
534
+ #
535
+ # @!attribute [rw] target_group_arn
536
+ # The Amazon Resource Name (ARN) of the target group.
537
+ # @return [String]
538
+ #
539
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroupInput AWS API Documentation
540
+ #
541
+ class DeleteTargetGroupInput < Struct.new(
542
+ :target_group_arn)
543
+ include Aws::Structure
544
+ end
545
+
546
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroupOutput AWS API Documentation
547
+ #
548
+ class DeleteTargetGroupOutput < Aws::EmptyStructure; end
549
+
550
+ # @note When making an API call, you may pass DeregisterTargetsInput
551
+ # data as a hash:
552
+ #
553
+ # {
554
+ # target_group_arn: "TargetGroupArn", # required
555
+ # targets: [ # required
556
+ # {
557
+ # id: "TargetId", # required
558
+ # port: 1,
559
+ # },
560
+ # ],
561
+ # }
562
+ #
563
+ # @!attribute [rw] target_group_arn
564
+ # The Amazon Resource Name (ARN) of the target group.
565
+ # @return [String]
566
+ #
567
+ # @!attribute [rw] targets
568
+ # The targets. If you specified a port override when you registered a
569
+ # target, you must specify both the target ID and the port when you
570
+ # deregister it.
571
+ # @return [Array<Types::TargetDescription>]
572
+ #
573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargetsInput AWS API Documentation
574
+ #
575
+ class DeregisterTargetsInput < Struct.new(
576
+ :target_group_arn,
577
+ :targets)
578
+ include Aws::Structure
579
+ end
580
+
581
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargetsOutput AWS API Documentation
582
+ #
583
+ class DeregisterTargetsOutput < Aws::EmptyStructure; end
584
+
585
+ # @note When making an API call, you may pass DescribeListenersInput
586
+ # data as a hash:
587
+ #
588
+ # {
589
+ # load_balancer_arn: "LoadBalancerArn",
590
+ # listener_arns: ["ListenerArn"],
591
+ # marker: "Marker",
592
+ # page_size: 1,
593
+ # }
594
+ #
595
+ # @!attribute [rw] load_balancer_arn
596
+ # The Amazon Resource Name (ARN) of the load balancer.
597
+ # @return [String]
598
+ #
599
+ # @!attribute [rw] listener_arns
600
+ # The Amazon Resource Names (ARN) of the listeners.
601
+ # @return [Array<String>]
602
+ #
603
+ # @!attribute [rw] marker
604
+ # The marker for the next set of results. (You received this marker
605
+ # from a previous call.)
606
+ # @return [String]
607
+ #
608
+ # @!attribute [rw] page_size
609
+ # The maximum number of results to return with this call.
610
+ # @return [Integer]
611
+ #
612
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenersInput AWS API Documentation
613
+ #
614
+ class DescribeListenersInput < Struct.new(
615
+ :load_balancer_arn,
616
+ :listener_arns,
617
+ :marker,
618
+ :page_size)
619
+ include Aws::Structure
620
+ end
621
+
622
+ # @!attribute [rw] listeners
623
+ # Information about the listeners.
624
+ # @return [Array<Types::Listener>]
625
+ #
626
+ # @!attribute [rw] next_marker
627
+ # The marker to use when requesting the next set of results. If there
628
+ # are no additional results, the string is empty.
629
+ # @return [String]
630
+ #
631
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenersOutput AWS API Documentation
632
+ #
633
+ class DescribeListenersOutput < Struct.new(
634
+ :listeners,
635
+ :next_marker)
636
+ include Aws::Structure
637
+ end
638
+
639
+ # @note When making an API call, you may pass DescribeLoadBalancerAttributesInput
640
+ # data as a hash:
641
+ #
642
+ # {
643
+ # load_balancer_arn: "LoadBalancerArn", # required
644
+ # }
645
+ #
646
+ # @!attribute [rw] load_balancer_arn
647
+ # The Amazon Resource Name (ARN) of the load balancer.
648
+ # @return [String]
649
+ #
650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributesInput AWS API Documentation
651
+ #
652
+ class DescribeLoadBalancerAttributesInput < Struct.new(
653
+ :load_balancer_arn)
654
+ include Aws::Structure
655
+ end
656
+
657
+ # @!attribute [rw] attributes
658
+ # Information about the load balancer attributes.
659
+ # @return [Array<Types::LoadBalancerAttribute>]
660
+ #
661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributesOutput AWS API Documentation
662
+ #
663
+ class DescribeLoadBalancerAttributesOutput < Struct.new(
664
+ :attributes)
665
+ include Aws::Structure
666
+ end
667
+
668
+ # @note When making an API call, you may pass DescribeLoadBalancersInput
669
+ # data as a hash:
670
+ #
671
+ # {
672
+ # load_balancer_arns: ["LoadBalancerArn"],
673
+ # names: ["LoadBalancerName"],
674
+ # marker: "Marker",
675
+ # page_size: 1,
676
+ # }
677
+ #
678
+ # @!attribute [rw] load_balancer_arns
679
+ # The Amazon Resource Names (ARN) of the load balancers.
680
+ # @return [Array<String>]
681
+ #
682
+ # @!attribute [rw] names
683
+ # The names of the load balancers.
684
+ # @return [Array<String>]
685
+ #
686
+ # @!attribute [rw] marker
687
+ # The marker for the next set of results. (You received this marker
688
+ # from a previous call.)
689
+ # @return [String]
690
+ #
691
+ # @!attribute [rw] page_size
692
+ # The maximum number of results to return with this call.
693
+ # @return [Integer]
694
+ #
695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancersInput AWS API Documentation
696
+ #
697
+ class DescribeLoadBalancersInput < Struct.new(
698
+ :load_balancer_arns,
699
+ :names,
700
+ :marker,
701
+ :page_size)
702
+ include Aws::Structure
703
+ end
704
+
705
+ # @!attribute [rw] load_balancers
706
+ # Information about the load balancers.
707
+ # @return [Array<Types::LoadBalancer>]
708
+ #
709
+ # @!attribute [rw] next_marker
710
+ # The marker to use when requesting the next set of results. If there
711
+ # are no additional results, the string is empty.
712
+ # @return [String]
713
+ #
714
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancersOutput AWS API Documentation
715
+ #
716
+ class DescribeLoadBalancersOutput < Struct.new(
717
+ :load_balancers,
718
+ :next_marker)
719
+ include Aws::Structure
720
+ end
721
+
722
+ # @note When making an API call, you may pass DescribeRulesInput
723
+ # data as a hash:
724
+ #
725
+ # {
726
+ # listener_arn: "ListenerArn",
727
+ # rule_arns: ["RuleArn"],
728
+ # }
729
+ #
730
+ # @!attribute [rw] listener_arn
731
+ # The Amazon Resource Name (ARN) of the listener.
732
+ # @return [String]
733
+ #
734
+ # @!attribute [rw] rule_arns
735
+ # The Amazon Resource Names (ARN) of the rules.
736
+ # @return [Array<String>]
737
+ #
738
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRulesInput AWS API Documentation
739
+ #
740
+ class DescribeRulesInput < Struct.new(
741
+ :listener_arn,
742
+ :rule_arns)
743
+ include Aws::Structure
744
+ end
745
+
746
+ # @!attribute [rw] rules
747
+ # Information about the rules.
748
+ # @return [Array<Types::Rule>]
749
+ #
750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRulesOutput AWS API Documentation
751
+ #
752
+ class DescribeRulesOutput < Struct.new(
753
+ :rules)
754
+ include Aws::Structure
755
+ end
756
+
757
+ # @note When making an API call, you may pass DescribeSSLPoliciesInput
758
+ # data as a hash:
759
+ #
760
+ # {
761
+ # names: ["SslPolicyName"],
762
+ # marker: "Marker",
763
+ # page_size: 1,
764
+ # }
765
+ #
766
+ # @!attribute [rw] names
767
+ # The names of the policies.
768
+ # @return [Array<String>]
769
+ #
770
+ # @!attribute [rw] marker
771
+ # The marker for the next set of results. (You received this marker
772
+ # from a previous call.)
773
+ # @return [String]
774
+ #
775
+ # @!attribute [rw] page_size
776
+ # The maximum number of results to return with this call.
777
+ # @return [Integer]
778
+ #
779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPoliciesInput AWS API Documentation
780
+ #
781
+ class DescribeSSLPoliciesInput < Struct.new(
782
+ :names,
783
+ :marker,
784
+ :page_size)
785
+ include Aws::Structure
786
+ end
787
+
788
+ # @!attribute [rw] ssl_policies
789
+ # Information about the policies.
790
+ # @return [Array<Types::SslPolicy>]
791
+ #
792
+ # @!attribute [rw] next_marker
793
+ # The marker to use when requesting the next set of results. If there
794
+ # are no additional results, the string is empty.
795
+ # @return [String]
796
+ #
797
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPoliciesOutput AWS API Documentation
798
+ #
799
+ class DescribeSSLPoliciesOutput < Struct.new(
800
+ :ssl_policies,
801
+ :next_marker)
802
+ include Aws::Structure
803
+ end
804
+
805
+ # @note When making an API call, you may pass DescribeTagsInput
806
+ # data as a hash:
807
+ #
808
+ # {
809
+ # resource_arns: ["ResourceArn"], # required
810
+ # }
811
+ #
812
+ # @!attribute [rw] resource_arns
813
+ # The Amazon Resource Names (ARN) of the resources.
814
+ # @return [Array<String>]
815
+ #
816
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTagsInput AWS API Documentation
817
+ #
818
+ class DescribeTagsInput < Struct.new(
819
+ :resource_arns)
820
+ include Aws::Structure
821
+ end
822
+
823
+ # @!attribute [rw] tag_descriptions
824
+ # Information about the tags.
825
+ # @return [Array<Types::TagDescription>]
826
+ #
827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTagsOutput AWS API Documentation
828
+ #
829
+ class DescribeTagsOutput < Struct.new(
830
+ :tag_descriptions)
831
+ include Aws::Structure
832
+ end
833
+
834
+ # @note When making an API call, you may pass DescribeTargetGroupAttributesInput
835
+ # data as a hash:
836
+ #
837
+ # {
838
+ # target_group_arn: "TargetGroupArn", # required
839
+ # }
840
+ #
841
+ # @!attribute [rw] target_group_arn
842
+ # The Amazon Resource Name (ARN) of the target group.
843
+ # @return [String]
844
+ #
845
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributesInput AWS API Documentation
846
+ #
847
+ class DescribeTargetGroupAttributesInput < Struct.new(
848
+ :target_group_arn)
849
+ include Aws::Structure
850
+ end
851
+
852
+ # @!attribute [rw] attributes
853
+ # Information about the target group attributes
854
+ # @return [Array<Types::TargetGroupAttribute>]
855
+ #
856
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributesOutput AWS API Documentation
857
+ #
858
+ class DescribeTargetGroupAttributesOutput < Struct.new(
859
+ :attributes)
860
+ include Aws::Structure
861
+ end
862
+
863
+ # @note When making an API call, you may pass DescribeTargetGroupsInput
864
+ # data as a hash:
865
+ #
866
+ # {
867
+ # load_balancer_arn: "LoadBalancerArn",
868
+ # target_group_arns: ["TargetGroupArn"],
869
+ # names: ["TargetGroupName"],
870
+ # marker: "Marker",
871
+ # page_size: 1,
872
+ # }
873
+ #
874
+ # @!attribute [rw] load_balancer_arn
875
+ # The Amazon Resource Name (ARN) of the load balancer.
876
+ # @return [String]
877
+ #
878
+ # @!attribute [rw] target_group_arns
879
+ # The Amazon Resource Names (ARN) of the target groups.
880
+ # @return [Array<String>]
881
+ #
882
+ # @!attribute [rw] names
883
+ # The names of the target groups.
884
+ # @return [Array<String>]
885
+ #
886
+ # @!attribute [rw] marker
887
+ # The marker for the next set of results. (You received this marker
888
+ # from a previous call.)
889
+ # @return [String]
890
+ #
891
+ # @!attribute [rw] page_size
892
+ # The maximum number of results to return with this call.
893
+ # @return [Integer]
894
+ #
895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupsInput AWS API Documentation
896
+ #
897
+ class DescribeTargetGroupsInput < Struct.new(
898
+ :load_balancer_arn,
899
+ :target_group_arns,
900
+ :names,
901
+ :marker,
902
+ :page_size)
903
+ include Aws::Structure
904
+ end
905
+
906
+ # @!attribute [rw] target_groups
907
+ # Information about the target groups.
908
+ # @return [Array<Types::TargetGroup>]
909
+ #
910
+ # @!attribute [rw] next_marker
911
+ # The marker to use when requesting the next set of results. If there
912
+ # are no additional results, the string is empty.
913
+ # @return [String]
914
+ #
915
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupsOutput AWS API Documentation
916
+ #
917
+ class DescribeTargetGroupsOutput < Struct.new(
918
+ :target_groups,
919
+ :next_marker)
920
+ include Aws::Structure
921
+ end
922
+
923
+ # @note When making an API call, you may pass DescribeTargetHealthInput
924
+ # data as a hash:
925
+ #
926
+ # {
927
+ # target_group_arn: "TargetGroupArn", # required
928
+ # targets: [
929
+ # {
930
+ # id: "TargetId", # required
931
+ # port: 1,
932
+ # },
933
+ # ],
934
+ # }
935
+ #
936
+ # @!attribute [rw] target_group_arn
937
+ # The Amazon Resource Name (ARN) of the target group.
938
+ # @return [String]
939
+ #
940
+ # @!attribute [rw] targets
941
+ # The targets.
942
+ # @return [Array<Types::TargetDescription>]
943
+ #
944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealthInput AWS API Documentation
945
+ #
946
+ class DescribeTargetHealthInput < Struct.new(
947
+ :target_group_arn,
948
+ :targets)
949
+ include Aws::Structure
950
+ end
951
+
952
+ # @!attribute [rw] target_health_descriptions
953
+ # Information about the health of the targets.
954
+ # @return [Array<Types::TargetHealthDescription>]
955
+ #
956
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealthOutput AWS API Documentation
957
+ #
958
+ class DescribeTargetHealthOutput < Struct.new(
959
+ :target_health_descriptions)
960
+ include Aws::Structure
961
+ end
1803
962
 
963
+ # Information about a listener.
964
+ #
965
+ # @!attribute [rw] listener_arn
966
+ # The Amazon Resource Name (ARN) of the listener.
967
+ # @return [String]
968
+ #
969
+ # @!attribute [rw] load_balancer_arn
970
+ # The Amazon Resource Name (ARN) of the load balancer.
971
+ # @return [String]
972
+ #
973
+ # @!attribute [rw] port
974
+ # The port on which the load balancer is listening.
975
+ # @return [Integer]
976
+ #
977
+ # @!attribute [rw] protocol
978
+ # The protocol for connections from clients to the load balancer.
979
+ # @return [String]
980
+ #
981
+ # @!attribute [rw] certificates
982
+ # The SSL server certificate. You must provide a certificate if the
983
+ # protocol is HTTPS.
984
+ # @return [Array<Types::Certificate>]
985
+ #
986
+ # @!attribute [rw] ssl_policy
987
+ # The security policy that defines which ciphers and protocols are
988
+ # supported. The default is the current predefined security policy.
989
+ # @return [String]
990
+ #
991
+ # @!attribute [rw] default_actions
992
+ # The default actions for the listener.
993
+ # @return [Array<Types::Action>]
994
+ #
995
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Listener AWS API Documentation
996
+ #
997
+ class Listener < Struct.new(
998
+ :listener_arn,
999
+ :load_balancer_arn,
1000
+ :port,
1001
+ :protocol,
1002
+ :certificates,
1003
+ :ssl_policy,
1004
+ :default_actions)
1005
+ include Aws::Structure
1804
1006
  end
1007
+
1008
+ # Information about a load balancer.
1009
+ #
1010
+ # @!attribute [rw] load_balancer_arn
1011
+ # The Amazon Resource Name (ARN) of the load balancer.
1012
+ # @return [String]
1013
+ #
1014
+ # @!attribute [rw] dns_name
1015
+ # The public DNS name of the load balancer.
1016
+ # @return [String]
1017
+ #
1018
+ # @!attribute [rw] canonical_hosted_zone_id
1019
+ # The ID of the Amazon Route 53 hosted zone associated with the load
1020
+ # balancer.
1021
+ # @return [String]
1022
+ #
1023
+ # @!attribute [rw] created_time
1024
+ # The date and time the load balancer was created.
1025
+ # @return [Time]
1026
+ #
1027
+ # @!attribute [rw] load_balancer_name
1028
+ # The name of the load balancer.
1029
+ # @return [String]
1030
+ #
1031
+ # @!attribute [rw] scheme
1032
+ # The nodes of an Internet-facing load balancer have public IP
1033
+ # addresses. The DNS name of an Internet-facing load balancer is
1034
+ # publicly resolvable to the public IP addresses of the nodes.
1035
+ # Therefore, Internet-facing load balancers can route requests from
1036
+ # clients over the Internet.
1037
+ #
1038
+ # The nodes of an internal load balancer have only private IP
1039
+ # addresses. The DNS name of an internal load balancer is publicly
1040
+ # resolvable to the private IP addresses of the nodes. Therefore,
1041
+ # internal load balancers can only route requests from clients with
1042
+ # access to the VPC for the load balancer.
1043
+ # @return [String]
1044
+ #
1045
+ # @!attribute [rw] vpc_id
1046
+ # The ID of the VPC for the load balancer.
1047
+ # @return [String]
1048
+ #
1049
+ # @!attribute [rw] state
1050
+ # The state of the load balancer.
1051
+ # @return [Types::LoadBalancerState]
1052
+ #
1053
+ # @!attribute [rw] type
1054
+ # The type of load balancer.
1055
+ # @return [String]
1056
+ #
1057
+ # @!attribute [rw] availability_zones
1058
+ # The Availability Zones for the load balancer.
1059
+ # @return [Array<Types::AvailabilityZone>]
1060
+ #
1061
+ # @!attribute [rw] security_groups
1062
+ # The IDs of the security groups for the load balancer.
1063
+ # @return [Array<String>]
1064
+ #
1065
+ # @!attribute [rw] ip_address_type
1066
+ # The type of IP addresses used by the subnets for your load balancer.
1067
+ # The possible values are `ipv4` (for IPv4 addresses) and `dualstack`
1068
+ # (for IPv4 and IPv6 addresses).
1069
+ # @return [String]
1070
+ #
1071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/LoadBalancer AWS API Documentation
1072
+ #
1073
+ class LoadBalancer < Struct.new(
1074
+ :load_balancer_arn,
1075
+ :dns_name,
1076
+ :canonical_hosted_zone_id,
1077
+ :created_time,
1078
+ :load_balancer_name,
1079
+ :scheme,
1080
+ :vpc_id,
1081
+ :state,
1082
+ :type,
1083
+ :availability_zones,
1084
+ :security_groups,
1085
+ :ip_address_type)
1086
+ include Aws::Structure
1087
+ end
1088
+
1089
+ # Information about a load balancer attribute.
1090
+ #
1091
+ # @note When making an API call, you may pass LoadBalancerAttribute
1092
+ # data as a hash:
1093
+ #
1094
+ # {
1095
+ # key: "LoadBalancerAttributeKey",
1096
+ # value: "LoadBalancerAttributeValue",
1097
+ # }
1098
+ #
1099
+ # @!attribute [rw] key
1100
+ # The name of the attribute.
1101
+ #
1102
+ # * `access_logs.s3.enabled` - Indicates whether access logs stored in
1103
+ # Amazon S3 are enabled. The value is `true` or `false`.
1104
+ #
1105
+ # * `access_logs.s3.bucket` - The name of the S3 bucket for the access
1106
+ # logs. This attribute is required if access logs in Amazon S3 are
1107
+ # enabled. The bucket must exist in the same region as the load
1108
+ # balancer and have a bucket policy that grants Elastic Load
1109
+ # Balancing permission to write to the bucket.
1110
+ #
1111
+ # * `access_logs.s3.prefix` - The prefix for the location in the S3
1112
+ # bucket. If you don't specify a prefix, the access logs are stored
1113
+ # in the root of the bucket.
1114
+ #
1115
+ # * `deletion_protection.enabled` - Indicates whether deletion
1116
+ # protection is enabled. The value is `true` or `false`.
1117
+ #
1118
+ # * `idle_timeout.timeout_seconds` - The idle timeout value, in
1119
+ # seconds. The valid range is 1-3600. The default is 60 seconds.
1120
+ # @return [String]
1121
+ #
1122
+ # @!attribute [rw] value
1123
+ # The value of the attribute.
1124
+ # @return [String]
1125
+ #
1126
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/LoadBalancerAttribute AWS API Documentation
1127
+ #
1128
+ class LoadBalancerAttribute < Struct.new(
1129
+ :key,
1130
+ :value)
1131
+ include Aws::Structure
1132
+ end
1133
+
1134
+ # Information about the state of the load balancer.
1135
+ #
1136
+ # @!attribute [rw] code
1137
+ # The state code. The initial state of the load balancer is
1138
+ # `provisioning`. After the load balancer is fully set up and ready to
1139
+ # route traffic, its state is `active`. If the load balancer could not
1140
+ # be set up, its state is `failed`.
1141
+ # @return [String]
1142
+ #
1143
+ # @!attribute [rw] reason
1144
+ # A description of the state.
1145
+ # @return [String]
1146
+ #
1147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/LoadBalancerState AWS API Documentation
1148
+ #
1149
+ class LoadBalancerState < Struct.new(
1150
+ :code,
1151
+ :reason)
1152
+ include Aws::Structure
1153
+ end
1154
+
1155
+ # Information to use when checking for a successful response from a
1156
+ # target.
1157
+ #
1158
+ # @note When making an API call, you may pass Matcher
1159
+ # data as a hash:
1160
+ #
1161
+ # {
1162
+ # http_code: "HttpCode", # required
1163
+ # }
1164
+ #
1165
+ # @!attribute [rw] http_code
1166
+ # The HTTP codes. The default value is 200. You can specify multiple
1167
+ # values (for example, "200,202") or a range of values (for example,
1168
+ # "200-299").
1169
+ # @return [String]
1170
+ #
1171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Matcher AWS API Documentation
1172
+ #
1173
+ class Matcher < Struct.new(
1174
+ :http_code)
1175
+ include Aws::Structure
1176
+ end
1177
+
1178
+ # @note When making an API call, you may pass ModifyListenerInput
1179
+ # data as a hash:
1180
+ #
1181
+ # {
1182
+ # listener_arn: "ListenerArn", # required
1183
+ # port: 1,
1184
+ # protocol: "HTTP", # accepts HTTP, HTTPS
1185
+ # ssl_policy: "SslPolicyName",
1186
+ # certificates: [
1187
+ # {
1188
+ # certificate_arn: "CertificateArn",
1189
+ # },
1190
+ # ],
1191
+ # default_actions: [
1192
+ # {
1193
+ # type: "forward", # required, accepts forward
1194
+ # target_group_arn: "TargetGroupArn", # required
1195
+ # },
1196
+ # ],
1197
+ # }
1198
+ #
1199
+ # @!attribute [rw] listener_arn
1200
+ # The Amazon Resource Name (ARN) of the listener.
1201
+ # @return [String]
1202
+ #
1203
+ # @!attribute [rw] port
1204
+ # The port for connections from clients to the load balancer.
1205
+ # @return [Integer]
1206
+ #
1207
+ # @!attribute [rw] protocol
1208
+ # The protocol for connections from clients to the load balancer.
1209
+ # @return [String]
1210
+ #
1211
+ # @!attribute [rw] ssl_policy
1212
+ # The security policy that defines which ciphers and protocols are
1213
+ # supported.
1214
+ # @return [String]
1215
+ #
1216
+ # @!attribute [rw] certificates
1217
+ # The SSL server certificate.
1218
+ # @return [Array<Types::Certificate>]
1219
+ #
1220
+ # @!attribute [rw] default_actions
1221
+ # The default actions.
1222
+ # @return [Array<Types::Action>]
1223
+ #
1224
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerInput AWS API Documentation
1225
+ #
1226
+ class ModifyListenerInput < Struct.new(
1227
+ :listener_arn,
1228
+ :port,
1229
+ :protocol,
1230
+ :ssl_policy,
1231
+ :certificates,
1232
+ :default_actions)
1233
+ include Aws::Structure
1234
+ end
1235
+
1236
+ # @!attribute [rw] listeners
1237
+ # Information about the modified listeners.
1238
+ # @return [Array<Types::Listener>]
1239
+ #
1240
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerOutput AWS API Documentation
1241
+ #
1242
+ class ModifyListenerOutput < Struct.new(
1243
+ :listeners)
1244
+ include Aws::Structure
1245
+ end
1246
+
1247
+ # @note When making an API call, you may pass ModifyLoadBalancerAttributesInput
1248
+ # data as a hash:
1249
+ #
1250
+ # {
1251
+ # load_balancer_arn: "LoadBalancerArn", # required
1252
+ # attributes: [ # required
1253
+ # {
1254
+ # key: "LoadBalancerAttributeKey",
1255
+ # value: "LoadBalancerAttributeValue",
1256
+ # },
1257
+ # ],
1258
+ # }
1259
+ #
1260
+ # @!attribute [rw] load_balancer_arn
1261
+ # The Amazon Resource Name (ARN) of the load balancer.
1262
+ # @return [String]
1263
+ #
1264
+ # @!attribute [rw] attributes
1265
+ # The load balancer attributes.
1266
+ # @return [Array<Types::LoadBalancerAttribute>]
1267
+ #
1268
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributesInput AWS API Documentation
1269
+ #
1270
+ class ModifyLoadBalancerAttributesInput < Struct.new(
1271
+ :load_balancer_arn,
1272
+ :attributes)
1273
+ include Aws::Structure
1274
+ end
1275
+
1276
+ # @!attribute [rw] attributes
1277
+ # Information about the load balancer attributes.
1278
+ # @return [Array<Types::LoadBalancerAttribute>]
1279
+ #
1280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributesOutput AWS API Documentation
1281
+ #
1282
+ class ModifyLoadBalancerAttributesOutput < Struct.new(
1283
+ :attributes)
1284
+ include Aws::Structure
1285
+ end
1286
+
1287
+ # @note When making an API call, you may pass ModifyRuleInput
1288
+ # data as a hash:
1289
+ #
1290
+ # {
1291
+ # rule_arn: "RuleArn", # required
1292
+ # conditions: [
1293
+ # {
1294
+ # field: "ConditionFieldName",
1295
+ # values: ["StringValue"],
1296
+ # },
1297
+ # ],
1298
+ # actions: [
1299
+ # {
1300
+ # type: "forward", # required, accepts forward
1301
+ # target_group_arn: "TargetGroupArn", # required
1302
+ # },
1303
+ # ],
1304
+ # }
1305
+ #
1306
+ # @!attribute [rw] rule_arn
1307
+ # The Amazon Resource Name (ARN) of the rule.
1308
+ # @return [String]
1309
+ #
1310
+ # @!attribute [rw] conditions
1311
+ # The conditions.
1312
+ # @return [Array<Types::RuleCondition>]
1313
+ #
1314
+ # @!attribute [rw] actions
1315
+ # The actions.
1316
+ # @return [Array<Types::Action>]
1317
+ #
1318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleInput AWS API Documentation
1319
+ #
1320
+ class ModifyRuleInput < Struct.new(
1321
+ :rule_arn,
1322
+ :conditions,
1323
+ :actions)
1324
+ include Aws::Structure
1325
+ end
1326
+
1327
+ # @!attribute [rw] rules
1328
+ # Information about the rule.
1329
+ # @return [Array<Types::Rule>]
1330
+ #
1331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleOutput AWS API Documentation
1332
+ #
1333
+ class ModifyRuleOutput < Struct.new(
1334
+ :rules)
1335
+ include Aws::Structure
1336
+ end
1337
+
1338
+ # @note When making an API call, you may pass ModifyTargetGroupAttributesInput
1339
+ # data as a hash:
1340
+ #
1341
+ # {
1342
+ # target_group_arn: "TargetGroupArn", # required
1343
+ # attributes: [ # required
1344
+ # {
1345
+ # key: "TargetGroupAttributeKey",
1346
+ # value: "TargetGroupAttributeValue",
1347
+ # },
1348
+ # ],
1349
+ # }
1350
+ #
1351
+ # @!attribute [rw] target_group_arn
1352
+ # The Amazon Resource Name (ARN) of the target group.
1353
+ # @return [String]
1354
+ #
1355
+ # @!attribute [rw] attributes
1356
+ # The attributes.
1357
+ # @return [Array<Types::TargetGroupAttribute>]
1358
+ #
1359
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributesInput AWS API Documentation
1360
+ #
1361
+ class ModifyTargetGroupAttributesInput < Struct.new(
1362
+ :target_group_arn,
1363
+ :attributes)
1364
+ include Aws::Structure
1365
+ end
1366
+
1367
+ # @!attribute [rw] attributes
1368
+ # Information about the attributes.
1369
+ # @return [Array<Types::TargetGroupAttribute>]
1370
+ #
1371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributesOutput AWS API Documentation
1372
+ #
1373
+ class ModifyTargetGroupAttributesOutput < Struct.new(
1374
+ :attributes)
1375
+ include Aws::Structure
1376
+ end
1377
+
1378
+ # @note When making an API call, you may pass ModifyTargetGroupInput
1379
+ # data as a hash:
1380
+ #
1381
+ # {
1382
+ # target_group_arn: "TargetGroupArn", # required
1383
+ # health_check_protocol: "HTTP", # accepts HTTP, HTTPS
1384
+ # health_check_port: "HealthCheckPort",
1385
+ # health_check_path: "Path",
1386
+ # health_check_interval_seconds: 1,
1387
+ # health_check_timeout_seconds: 1,
1388
+ # healthy_threshold_count: 1,
1389
+ # unhealthy_threshold_count: 1,
1390
+ # matcher: {
1391
+ # http_code: "HttpCode", # required
1392
+ # },
1393
+ # }
1394
+ #
1395
+ # @!attribute [rw] target_group_arn
1396
+ # The Amazon Resource Name (ARN) of the target group.
1397
+ # @return [String]
1398
+ #
1399
+ # @!attribute [rw] health_check_protocol
1400
+ # The protocol to use to connect with the target.
1401
+ # @return [String]
1402
+ #
1403
+ # @!attribute [rw] health_check_port
1404
+ # The port to use to connect with the target.
1405
+ # @return [String]
1406
+ #
1407
+ # @!attribute [rw] health_check_path
1408
+ # The ping path that is the destination for the health check request.
1409
+ # @return [String]
1410
+ #
1411
+ # @!attribute [rw] health_check_interval_seconds
1412
+ # The approximate amount of time, in seconds, between health checks of
1413
+ # an individual target.
1414
+ # @return [Integer]
1415
+ #
1416
+ # @!attribute [rw] health_check_timeout_seconds
1417
+ # The amount of time, in seconds, during which no response means a
1418
+ # failed health check.
1419
+ # @return [Integer]
1420
+ #
1421
+ # @!attribute [rw] healthy_threshold_count
1422
+ # The number of consecutive health checks successes required before
1423
+ # considering an unhealthy target healthy.
1424
+ # @return [Integer]
1425
+ #
1426
+ # @!attribute [rw] unhealthy_threshold_count
1427
+ # The number of consecutive health check failures required before
1428
+ # considering the target unhealthy.
1429
+ # @return [Integer]
1430
+ #
1431
+ # @!attribute [rw] matcher
1432
+ # The HTTP codes to use when checking for a successful response from a
1433
+ # target.
1434
+ # @return [Types::Matcher]
1435
+ #
1436
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupInput AWS API Documentation
1437
+ #
1438
+ class ModifyTargetGroupInput < Struct.new(
1439
+ :target_group_arn,
1440
+ :health_check_protocol,
1441
+ :health_check_port,
1442
+ :health_check_path,
1443
+ :health_check_interval_seconds,
1444
+ :health_check_timeout_seconds,
1445
+ :healthy_threshold_count,
1446
+ :unhealthy_threshold_count,
1447
+ :matcher)
1448
+ include Aws::Structure
1449
+ end
1450
+
1451
+ # @!attribute [rw] target_groups
1452
+ # Information about the target group.
1453
+ # @return [Array<Types::TargetGroup>]
1454
+ #
1455
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupOutput AWS API Documentation
1456
+ #
1457
+ class ModifyTargetGroupOutput < Struct.new(
1458
+ :target_groups)
1459
+ include Aws::Structure
1460
+ end
1461
+
1462
+ # @note When making an API call, you may pass RegisterTargetsInput
1463
+ # data as a hash:
1464
+ #
1465
+ # {
1466
+ # target_group_arn: "TargetGroupArn", # required
1467
+ # targets: [ # required
1468
+ # {
1469
+ # id: "TargetId", # required
1470
+ # port: 1,
1471
+ # },
1472
+ # ],
1473
+ # }
1474
+ #
1475
+ # @!attribute [rw] target_group_arn
1476
+ # The Amazon Resource Name (ARN) of the target group.
1477
+ # @return [String]
1478
+ #
1479
+ # @!attribute [rw] targets
1480
+ # The targets. The default port for a target is the port for the
1481
+ # target group. You can specify a port override. If a target is
1482
+ # already registered, you can register it again using a different
1483
+ # port.
1484
+ # @return [Array<Types::TargetDescription>]
1485
+ #
1486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargetsInput AWS API Documentation
1487
+ #
1488
+ class RegisterTargetsInput < Struct.new(
1489
+ :target_group_arn,
1490
+ :targets)
1491
+ include Aws::Structure
1492
+ end
1493
+
1494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargetsOutput AWS API Documentation
1495
+ #
1496
+ class RegisterTargetsOutput < Aws::EmptyStructure; end
1497
+
1498
+ # @note When making an API call, you may pass RemoveTagsInput
1499
+ # data as a hash:
1500
+ #
1501
+ # {
1502
+ # resource_arns: ["ResourceArn"], # required
1503
+ # tag_keys: ["TagKey"], # required
1504
+ # }
1505
+ #
1506
+ # @!attribute [rw] resource_arns
1507
+ # The Amazon Resource Name (ARN) of the resource.
1508
+ # @return [Array<String>]
1509
+ #
1510
+ # @!attribute [rw] tag_keys
1511
+ # The tag keys for the tags to remove.
1512
+ # @return [Array<String>]
1513
+ #
1514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTagsInput AWS API Documentation
1515
+ #
1516
+ class RemoveTagsInput < Struct.new(
1517
+ :resource_arns,
1518
+ :tag_keys)
1519
+ include Aws::Structure
1520
+ end
1521
+
1522
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTagsOutput AWS API Documentation
1523
+ #
1524
+ class RemoveTagsOutput < Aws::EmptyStructure; end
1525
+
1526
+ # Information about a rule.
1527
+ #
1528
+ # @!attribute [rw] rule_arn
1529
+ # The Amazon Resource Name (ARN) of the rule.
1530
+ # @return [String]
1531
+ #
1532
+ # @!attribute [rw] priority
1533
+ # The priority.
1534
+ # @return [String]
1535
+ #
1536
+ # @!attribute [rw] conditions
1537
+ # The conditions.
1538
+ # @return [Array<Types::RuleCondition>]
1539
+ #
1540
+ # @!attribute [rw] actions
1541
+ # The actions.
1542
+ # @return [Array<Types::Action>]
1543
+ #
1544
+ # @!attribute [rw] is_default
1545
+ # Indicates whether this is the default rule.
1546
+ # @return [Boolean]
1547
+ #
1548
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Rule AWS API Documentation
1549
+ #
1550
+ class Rule < Struct.new(
1551
+ :rule_arn,
1552
+ :priority,
1553
+ :conditions,
1554
+ :actions,
1555
+ :is_default)
1556
+ include Aws::Structure
1557
+ end
1558
+
1559
+ # Information about a condition for a rule.
1560
+ #
1561
+ # @note When making an API call, you may pass RuleCondition
1562
+ # data as a hash:
1563
+ #
1564
+ # {
1565
+ # field: "ConditionFieldName",
1566
+ # values: ["StringValue"],
1567
+ # }
1568
+ #
1569
+ # @!attribute [rw] field
1570
+ # The only possible value is `path-pattern`.
1571
+ # @return [String]
1572
+ #
1573
+ # @!attribute [rw] values
1574
+ # The path pattern. You can specify a single path pattern.
1575
+ #
1576
+ # A path pattern is case sensitive, can be up to 128 characters in
1577
+ # length, and can contain any of the following characters. Note that
1578
+ # you can include up to three wildcard characters in a path pattern.
1579
+ #
1580
+ # * A-Z, a-z, 0-9
1581
+ #
1582
+ # * \_ - . $ / ~ " ' @ : +
1583
+ #
1584
+ # * &amp; (using &amp;amp;)
1585
+ #
1586
+ # * * (matches 0 or more characters)
1587
+ #
1588
+ # * ? (matches exactly 1 character)
1589
+ # @return [Array<String>]
1590
+ #
1591
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RuleCondition AWS API Documentation
1592
+ #
1593
+ class RuleCondition < Struct.new(
1594
+ :field,
1595
+ :values)
1596
+ include Aws::Structure
1597
+ end
1598
+
1599
+ # Information about the priorities for the rules for a listener.
1600
+ #
1601
+ # @note When making an API call, you may pass RulePriorityPair
1602
+ # data as a hash:
1603
+ #
1604
+ # {
1605
+ # rule_arn: "RuleArn",
1606
+ # priority: 1,
1607
+ # }
1608
+ #
1609
+ # @!attribute [rw] rule_arn
1610
+ # The Amazon Resource Name (ARN) of the rule.
1611
+ # @return [String]
1612
+ #
1613
+ # @!attribute [rw] priority
1614
+ # The rule priority.
1615
+ # @return [Integer]
1616
+ #
1617
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RulePriorityPair AWS API Documentation
1618
+ #
1619
+ class RulePriorityPair < Struct.new(
1620
+ :rule_arn,
1621
+ :priority)
1622
+ include Aws::Structure
1623
+ end
1624
+
1625
+ # @note When making an API call, you may pass SetIpAddressTypeInput
1626
+ # data as a hash:
1627
+ #
1628
+ # {
1629
+ # load_balancer_arn: "LoadBalancerArn", # required
1630
+ # ip_address_type: "ipv4", # required, accepts ipv4, dualstack
1631
+ # }
1632
+ #
1633
+ # @!attribute [rw] load_balancer_arn
1634
+ # The Amazon Resource Name (ARN) of the load balancer.
1635
+ # @return [String]
1636
+ #
1637
+ # @!attribute [rw] ip_address_type
1638
+ # The IP address type. The possible values are `ipv4` (for IPv4
1639
+ # addresses) and `dualstack` (for IPv4 and IPv6 addresses). Internal
1640
+ # load balancers must use `ipv4`.
1641
+ # @return [String]
1642
+ #
1643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressTypeInput AWS API Documentation
1644
+ #
1645
+ class SetIpAddressTypeInput < Struct.new(
1646
+ :load_balancer_arn,
1647
+ :ip_address_type)
1648
+ include Aws::Structure
1649
+ end
1650
+
1651
+ # @!attribute [rw] ip_address_type
1652
+ # The IP address type.
1653
+ # @return [String]
1654
+ #
1655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressTypeOutput AWS API Documentation
1656
+ #
1657
+ class SetIpAddressTypeOutput < Struct.new(
1658
+ :ip_address_type)
1659
+ include Aws::Structure
1660
+ end
1661
+
1662
+ # @note When making an API call, you may pass SetRulePrioritiesInput
1663
+ # data as a hash:
1664
+ #
1665
+ # {
1666
+ # rule_priorities: [ # required
1667
+ # {
1668
+ # rule_arn: "RuleArn",
1669
+ # priority: 1,
1670
+ # },
1671
+ # ],
1672
+ # }
1673
+ #
1674
+ # @!attribute [rw] rule_priorities
1675
+ # The rule priorities.
1676
+ # @return [Array<Types::RulePriorityPair>]
1677
+ #
1678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePrioritiesInput AWS API Documentation
1679
+ #
1680
+ class SetRulePrioritiesInput < Struct.new(
1681
+ :rule_priorities)
1682
+ include Aws::Structure
1683
+ end
1684
+
1685
+ # @!attribute [rw] rules
1686
+ # Information about the rules.
1687
+ # @return [Array<Types::Rule>]
1688
+ #
1689
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePrioritiesOutput AWS API Documentation
1690
+ #
1691
+ class SetRulePrioritiesOutput < Struct.new(
1692
+ :rules)
1693
+ include Aws::Structure
1694
+ end
1695
+
1696
+ # @note When making an API call, you may pass SetSecurityGroupsInput
1697
+ # data as a hash:
1698
+ #
1699
+ # {
1700
+ # load_balancer_arn: "LoadBalancerArn", # required
1701
+ # security_groups: ["SecurityGroupId"], # required
1702
+ # }
1703
+ #
1704
+ # @!attribute [rw] load_balancer_arn
1705
+ # The Amazon Resource Name (ARN) of the load balancer.
1706
+ # @return [String]
1707
+ #
1708
+ # @!attribute [rw] security_groups
1709
+ # The IDs of the security groups.
1710
+ # @return [Array<String>]
1711
+ #
1712
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroupsInput AWS API Documentation
1713
+ #
1714
+ class SetSecurityGroupsInput < Struct.new(
1715
+ :load_balancer_arn,
1716
+ :security_groups)
1717
+ include Aws::Structure
1718
+ end
1719
+
1720
+ # @!attribute [rw] security_group_ids
1721
+ # The IDs of the security groups associated with the load balancer.
1722
+ # @return [Array<String>]
1723
+ #
1724
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroupsOutput AWS API Documentation
1725
+ #
1726
+ class SetSecurityGroupsOutput < Struct.new(
1727
+ :security_group_ids)
1728
+ include Aws::Structure
1729
+ end
1730
+
1731
+ # @note When making an API call, you may pass SetSubnetsInput
1732
+ # data as a hash:
1733
+ #
1734
+ # {
1735
+ # load_balancer_arn: "LoadBalancerArn", # required
1736
+ # subnets: ["SubnetId"], # required
1737
+ # }
1738
+ #
1739
+ # @!attribute [rw] load_balancer_arn
1740
+ # The Amazon Resource Name (ARN) of the load balancer.
1741
+ # @return [String]
1742
+ #
1743
+ # @!attribute [rw] subnets
1744
+ # The IDs of the subnets. You must specify at least two subnets. You
1745
+ # can add only one subnet per Availability Zone.
1746
+ # @return [Array<String>]
1747
+ #
1748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsInput AWS API Documentation
1749
+ #
1750
+ class SetSubnetsInput < Struct.new(
1751
+ :load_balancer_arn,
1752
+ :subnets)
1753
+ include Aws::Structure
1754
+ end
1755
+
1756
+ # @!attribute [rw] availability_zones
1757
+ # Information about the subnet and Availability Zone.
1758
+ # @return [Array<Types::AvailabilityZone>]
1759
+ #
1760
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsOutput AWS API Documentation
1761
+ #
1762
+ class SetSubnetsOutput < Struct.new(
1763
+ :availability_zones)
1764
+ include Aws::Structure
1765
+ end
1766
+
1767
+ # Information about a policy used for SSL negotiation.
1768
+ #
1769
+ # @!attribute [rw] ssl_protocols
1770
+ # The protocols.
1771
+ # @return [Array<String>]
1772
+ #
1773
+ # @!attribute [rw] ciphers
1774
+ # The ciphers.
1775
+ # @return [Array<Types::Cipher>]
1776
+ #
1777
+ # @!attribute [rw] name
1778
+ # The name of the policy.
1779
+ # @return [String]
1780
+ #
1781
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SslPolicy AWS API Documentation
1782
+ #
1783
+ class SslPolicy < Struct.new(
1784
+ :ssl_protocols,
1785
+ :ciphers,
1786
+ :name)
1787
+ include Aws::Structure
1788
+ end
1789
+
1790
+ # Information about a tag.
1791
+ #
1792
+ # @note When making an API call, you may pass Tag
1793
+ # data as a hash:
1794
+ #
1795
+ # {
1796
+ # key: "TagKey", # required
1797
+ # value: "TagValue",
1798
+ # }
1799
+ #
1800
+ # @!attribute [rw] key
1801
+ # The key of the tag.
1802
+ # @return [String]
1803
+ #
1804
+ # @!attribute [rw] value
1805
+ # The value of the tag.
1806
+ # @return [String]
1807
+ #
1808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Tag AWS API Documentation
1809
+ #
1810
+ class Tag < Struct.new(
1811
+ :key,
1812
+ :value)
1813
+ include Aws::Structure
1814
+ end
1815
+
1816
+ # The tags associated with a resource.
1817
+ #
1818
+ # @!attribute [rw] resource_arn
1819
+ # The Amazon Resource Name (ARN) of the resource.
1820
+ # @return [String]
1821
+ #
1822
+ # @!attribute [rw] tags
1823
+ # Information about the tags.
1824
+ # @return [Array<Types::Tag>]
1825
+ #
1826
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TagDescription AWS API Documentation
1827
+ #
1828
+ class TagDescription < Struct.new(
1829
+ :resource_arn,
1830
+ :tags)
1831
+ include Aws::Structure
1832
+ end
1833
+
1834
+ # Information about a target.
1835
+ #
1836
+ # @note When making an API call, you may pass TargetDescription
1837
+ # data as a hash:
1838
+ #
1839
+ # {
1840
+ # id: "TargetId", # required
1841
+ # port: 1,
1842
+ # }
1843
+ #
1844
+ # @!attribute [rw] id
1845
+ # The ID of the target.
1846
+ # @return [String]
1847
+ #
1848
+ # @!attribute [rw] port
1849
+ # The port on which the target is listening.
1850
+ # @return [Integer]
1851
+ #
1852
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetDescription AWS API Documentation
1853
+ #
1854
+ class TargetDescription < Struct.new(
1855
+ :id,
1856
+ :port)
1857
+ include Aws::Structure
1858
+ end
1859
+
1860
+ # Information about a target group.
1861
+ #
1862
+ # @!attribute [rw] target_group_arn
1863
+ # The Amazon Resource Name (ARN) of the target group.
1864
+ # @return [String]
1865
+ #
1866
+ # @!attribute [rw] target_group_name
1867
+ # The name of the target group.
1868
+ # @return [String]
1869
+ #
1870
+ # @!attribute [rw] protocol
1871
+ # The protocol to use for routing traffic to the targets.
1872
+ # @return [String]
1873
+ #
1874
+ # @!attribute [rw] port
1875
+ # The port on which the targets are listening.
1876
+ # @return [Integer]
1877
+ #
1878
+ # @!attribute [rw] vpc_id
1879
+ # The ID of the VPC for the targets.
1880
+ # @return [String]
1881
+ #
1882
+ # @!attribute [rw] health_check_protocol
1883
+ # The protocol to use to connect with the target.
1884
+ # @return [String]
1885
+ #
1886
+ # @!attribute [rw] health_check_port
1887
+ # The port to use to connect with the target.
1888
+ # @return [String]
1889
+ #
1890
+ # @!attribute [rw] health_check_interval_seconds
1891
+ # The approximate amount of time, in seconds, between health checks of
1892
+ # an individual target.
1893
+ # @return [Integer]
1894
+ #
1895
+ # @!attribute [rw] health_check_timeout_seconds
1896
+ # The amount of time, in seconds, during which no response means a
1897
+ # failed health check.
1898
+ # @return [Integer]
1899
+ #
1900
+ # @!attribute [rw] healthy_threshold_count
1901
+ # The number of consecutive health checks successes required before
1902
+ # considering an unhealthy target healthy.
1903
+ # @return [Integer]
1904
+ #
1905
+ # @!attribute [rw] unhealthy_threshold_count
1906
+ # The number of consecutive health check failures required before
1907
+ # considering the target unhealthy.
1908
+ # @return [Integer]
1909
+ #
1910
+ # @!attribute [rw] health_check_path
1911
+ # The destination for the health check request.
1912
+ # @return [String]
1913
+ #
1914
+ # @!attribute [rw] matcher
1915
+ # The HTTP codes to use when checking for a successful response from a
1916
+ # target.
1917
+ # @return [Types::Matcher]
1918
+ #
1919
+ # @!attribute [rw] load_balancer_arns
1920
+ # The Amazon Resource Names (ARN) of the load balancers that route
1921
+ # traffic to this target group.
1922
+ # @return [Array<String>]
1923
+ #
1924
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetGroup AWS API Documentation
1925
+ #
1926
+ class TargetGroup < Struct.new(
1927
+ :target_group_arn,
1928
+ :target_group_name,
1929
+ :protocol,
1930
+ :port,
1931
+ :vpc_id,
1932
+ :health_check_protocol,
1933
+ :health_check_port,
1934
+ :health_check_interval_seconds,
1935
+ :health_check_timeout_seconds,
1936
+ :healthy_threshold_count,
1937
+ :unhealthy_threshold_count,
1938
+ :health_check_path,
1939
+ :matcher,
1940
+ :load_balancer_arns)
1941
+ include Aws::Structure
1942
+ end
1943
+
1944
+ # Information about a target group attribute.
1945
+ #
1946
+ # @note When making an API call, you may pass TargetGroupAttribute
1947
+ # data as a hash:
1948
+ #
1949
+ # {
1950
+ # key: "TargetGroupAttributeKey",
1951
+ # value: "TargetGroupAttributeValue",
1952
+ # }
1953
+ #
1954
+ # @!attribute [rw] key
1955
+ # The name of the attribute.
1956
+ #
1957
+ # * `deregistration_delay.timeout_seconds` - The amount time for
1958
+ # Elastic Load Balancing to wait before changing the state of a
1959
+ # deregistering target from `draining` to `unused`. The range is
1960
+ # 0-3600 seconds. The default value is 300 seconds.
1961
+ #
1962
+ # * `stickiness.enabled` - Indicates whether sticky sessions are
1963
+ # enabled. The value is `true` or `false`.
1964
+ #
1965
+ # * `stickiness.type` - The type of sticky sessions. The possible
1966
+ # value is `lb_cookie`.
1967
+ #
1968
+ # * `stickiness.lb_cookie.duration_seconds` - The time period, in
1969
+ # seconds, during which requests from a client should be routed to
1970
+ # the same target. After this time period expires, the load
1971
+ # balancer-generated cookie is considered stale. The range is 1
1972
+ # second to 1 week (604800 seconds). The default value is 1 day
1973
+ # (86400 seconds).
1974
+ # @return [String]
1975
+ #
1976
+ # @!attribute [rw] value
1977
+ # The value of the attribute.
1978
+ # @return [String]
1979
+ #
1980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetGroupAttribute AWS API Documentation
1981
+ #
1982
+ class TargetGroupAttribute < Struct.new(
1983
+ :key,
1984
+ :value)
1985
+ include Aws::Structure
1986
+ end
1987
+
1988
+ # Information about the current health of a target.
1989
+ #
1990
+ # @!attribute [rw] state
1991
+ # The state of the target.
1992
+ # @return [String]
1993
+ #
1994
+ # @!attribute [rw] reason
1995
+ # The reason code. If the target state is `healthy`, a reason code is
1996
+ # not provided.
1997
+ #
1998
+ # If the target state is `initial`, the reason code can be one of the
1999
+ # following values:
2000
+ #
2001
+ # * `Elb.RegistrationInProgress` - The target is in the process of
2002
+ # being registered with the load balancer.
2003
+ #
2004
+ # * `Elb.InitialHealthChecking` - The load balancer is still sending
2005
+ # the target the minimum number of health checks required to
2006
+ # determine its health status.
2007
+ #
2008
+ # If the target state is `unhealthy`, the reason code can be one of
2009
+ # the following values:
2010
+ #
2011
+ # * `Target.ResponseCodeMismatch` - The health checks did not return
2012
+ # an expected HTTP code.
2013
+ #
2014
+ # * `Target.Timeout` - The health check requests timed out.
2015
+ #
2016
+ # * `Target.FailedHealthChecks` - The health checks failed because the
2017
+ # connection to the target timed out, the target response was
2018
+ # malformed, or the target failed the health check for an unknown
2019
+ # reason.
2020
+ #
2021
+ # * `Elb.InternalError` - The health checks failed due to an internal
2022
+ # error.
2023
+ #
2024
+ # If the target state is `unused`, the reason code can be one of the
2025
+ # following values:
2026
+ #
2027
+ # * `Target.NotRegistered` - The target is not registered with the
2028
+ # target group.
2029
+ #
2030
+ # * `Target.NotInUse` - The target group is not used by any load
2031
+ # balancer or the target is in an Availability Zone that is not
2032
+ # enabled for its load balancer.
2033
+ #
2034
+ # * `Target.InvalidState` - The target is in the stopped or terminated
2035
+ # state.
2036
+ #
2037
+ # If the target state is `draining`, the reason code can be the
2038
+ # following value:
2039
+ #
2040
+ # * `Target.DeregistrationInProgress` - The target is in the process
2041
+ # of being deregistered and the deregistration delay period has not
2042
+ # expired.
2043
+ #
2044
+ # ^
2045
+ # @return [String]
2046
+ #
2047
+ # @!attribute [rw] description
2048
+ # A description of the target health that provides additional details.
2049
+ # If the state is `healthy`, a description is not provided.
2050
+ # @return [String]
2051
+ #
2052
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetHealth AWS API Documentation
2053
+ #
2054
+ class TargetHealth < Struct.new(
2055
+ :state,
2056
+ :reason,
2057
+ :description)
2058
+ include Aws::Structure
2059
+ end
2060
+
2061
+ # Information about the health of a target.
2062
+ #
2063
+ # @!attribute [rw] target
2064
+ # The description of the target.
2065
+ # @return [Types::TargetDescription]
2066
+ #
2067
+ # @!attribute [rw] health_check_port
2068
+ # The port to use to connect with the target.
2069
+ # @return [String]
2070
+ #
2071
+ # @!attribute [rw] target_health
2072
+ # The health information for the target.
2073
+ # @return [Types::TargetHealth]
2074
+ #
2075
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetHealthDescription AWS API Documentation
2076
+ #
2077
+ class TargetHealthDescription < Struct.new(
2078
+ :target,
2079
+ :health_check_port,
2080
+ :target_health)
2081
+ include Aws::Structure
2082
+ end
2083
+
1805
2084
  end
1806
2085
  end