aws-sdk-elasticloadbalancing 1.0.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ElasticLoadBalancing
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
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
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ElasticLoadBalancing
10
+ class Resource
11
+
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
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,1757 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ElasticLoadBalancing
10
+ module Types
11
+
12
+ # Information about the `AccessLog` attribute.
13
+ # @note When making an API call, pass AccessLog
14
+ # data as a hash:
15
+ #
16
+ # {
17
+ # enabled: false, # required
18
+ # s3_bucket_name: "S3BucketName",
19
+ # emit_interval: 1,
20
+ # s3_bucket_prefix: "AccessLogPrefix",
21
+ # }
22
+ # @!attribute [rw] enabled
23
+ # Specifies whether access logs are enabled for the load balancer.
24
+ # @return [Boolean]
25
+ #
26
+ # @!attribute [rw] s3_bucket_name
27
+ # The name of the Amazon S3 bucket where the access logs are stored.
28
+ # @return [String]
29
+ #
30
+ # @!attribute [rw] emit_interval
31
+ # The interval for publishing the access logs. You can specify an
32
+ # interval of either 5 minutes or 60 minutes.
33
+ #
34
+ # Default: 60 minutes
35
+ # @return [Integer]
36
+ #
37
+ # @!attribute [rw] s3_bucket_prefix
38
+ # The logical hierarchy you created for your Amazon S3 bucket, for
39
+ # example `my-bucket-prefix/prod`. If the prefix is not provided, the
40
+ # log is placed at the root level of the bucket.
41
+ # @return [String]
42
+ class AccessLog < Struct.new(
43
+ :enabled,
44
+ :s3_bucket_name,
45
+ :emit_interval,
46
+ :s3_bucket_prefix)
47
+ include Aws::Structure
48
+ end
49
+
50
+ # Contains the parameters for EnableAvailabilityZonesForLoadBalancer.
51
+ # @note When making an API call, pass AddAvailabilityZonesInput
52
+ # data as a hash:
53
+ #
54
+ # {
55
+ # load_balancer_name: "AccessPointName", # required
56
+ # availability_zones: ["AvailabilityZone"], # required
57
+ # }
58
+ # @!attribute [rw] load_balancer_name
59
+ # The name of the load balancer.
60
+ # @return [String]
61
+ #
62
+ # @!attribute [rw] availability_zones
63
+ # The Availability Zones. These must be in the same region as the load
64
+ # balancer.
65
+ # @return [Array<String>]
66
+ class AddAvailabilityZonesInput < Struct.new(
67
+ :load_balancer_name,
68
+ :availability_zones)
69
+ include Aws::Structure
70
+ end
71
+
72
+ # Contains the output of EnableAvailabilityZonesForLoadBalancer.
73
+ # @!attribute [rw] availability_zones
74
+ # The updated list of Availability Zones for the load balancer.
75
+ # @return [Array<String>]
76
+ class AddAvailabilityZonesOutput < Struct.new(
77
+ :availability_zones)
78
+ include Aws::Structure
79
+ end
80
+
81
+ # Contains the parameters for AddTags.
82
+ # @note When making an API call, pass AddTagsInput
83
+ # data as a hash:
84
+ #
85
+ # {
86
+ # load_balancer_names: ["AccessPointName"], # required
87
+ # tags: [ # required
88
+ # {
89
+ # key: "TagKey", # required
90
+ # value: "TagValue",
91
+ # },
92
+ # ],
93
+ # }
94
+ # @!attribute [rw] load_balancer_names
95
+ # The name of the load balancer. You can specify one load balancer
96
+ # only.
97
+ # @return [Array<String>]
98
+ #
99
+ # @!attribute [rw] tags
100
+ # The tags.
101
+ # @return [Array<Types::Tag>]
102
+ class AddTagsInput < Struct.new(
103
+ :load_balancer_names,
104
+ :tags)
105
+ include Aws::Structure
106
+ end
107
+
108
+ # Contains the output of AddTags.
109
+ class AddTagsOutput < Aws::EmptyStructure; end
110
+
111
+ # This data type is reserved.
112
+ # @note When making an API call, pass AdditionalAttribute
113
+ # data as a hash:
114
+ #
115
+ # {
116
+ # key: "AdditionalAttributeKey",
117
+ # value: "AdditionalAttributeValue",
118
+ # }
119
+ # @!attribute [rw] key
120
+ # This parameter is reserved.
121
+ # @return [String]
122
+ #
123
+ # @!attribute [rw] value
124
+ # This parameter is reserved.
125
+ # @return [String]
126
+ class AdditionalAttribute < Struct.new(
127
+ :key,
128
+ :value)
129
+ include Aws::Structure
130
+ end
131
+
132
+ # Information about a policy for application-controlled session
133
+ # stickiness.
134
+ # @!attribute [rw] policy_name
135
+ # The mnemonic name for the policy being created. The name must be
136
+ # unique within a set of policies for this load balancer.
137
+ # @return [String]
138
+ #
139
+ # @!attribute [rw] cookie_name
140
+ # The name of the application cookie used for stickiness.
141
+ # @return [String]
142
+ class AppCookieStickinessPolicy < Struct.new(
143
+ :policy_name,
144
+ :cookie_name)
145
+ include Aws::Structure
146
+ end
147
+
148
+ # Contains the parameters for ApplySecurityGroupsToLoadBalancer.
149
+ # @note When making an API call, pass ApplySecurityGroupsToLoadBalancerInput
150
+ # data as a hash:
151
+ #
152
+ # {
153
+ # load_balancer_name: "AccessPointName", # required
154
+ # security_groups: ["SecurityGroupId"], # required
155
+ # }
156
+ # @!attribute [rw] load_balancer_name
157
+ # The name of the load balancer.
158
+ # @return [String]
159
+ #
160
+ # @!attribute [rw] security_groups
161
+ # The IDs of the security groups to associate with the load balancer.
162
+ # Note that you cannot specify the name of the security group.
163
+ # @return [Array<String>]
164
+ class ApplySecurityGroupsToLoadBalancerInput < Struct.new(
165
+ :load_balancer_name,
166
+ :security_groups)
167
+ include Aws::Structure
168
+ end
169
+
170
+ # Contains the output of ApplySecurityGroupsToLoadBalancer.
171
+ # @!attribute [rw] security_groups
172
+ # The IDs of the security groups associated with the load balancer.
173
+ # @return [Array<String>]
174
+ class ApplySecurityGroupsToLoadBalancerOutput < Struct.new(
175
+ :security_groups)
176
+ include Aws::Structure
177
+ end
178
+
179
+ # Contains the parameters for AttachLoaBalancerToSubnets.
180
+ # @note When making an API call, pass AttachLoadBalancerToSubnetsInput
181
+ # data as a hash:
182
+ #
183
+ # {
184
+ # load_balancer_name: "AccessPointName", # required
185
+ # subnets: ["SubnetId"], # required
186
+ # }
187
+ # @!attribute [rw] load_balancer_name
188
+ # The name of the load balancer.
189
+ # @return [String]
190
+ #
191
+ # @!attribute [rw] subnets
192
+ # The IDs of the subnets to add. You can add only one subnet per
193
+ # Availability Zone.
194
+ # @return [Array<String>]
195
+ class AttachLoadBalancerToSubnetsInput < Struct.new(
196
+ :load_balancer_name,
197
+ :subnets)
198
+ include Aws::Structure
199
+ end
200
+
201
+ # Contains the output of AttachLoadBalancerToSubnets.
202
+ # @!attribute [rw] subnets
203
+ # The IDs of the subnets attached to the load balancer.
204
+ # @return [Array<String>]
205
+ class AttachLoadBalancerToSubnetsOutput < Struct.new(
206
+ :subnets)
207
+ include Aws::Structure
208
+ end
209
+
210
+ # Information about the configuration of an EC2 instance.
211
+ # @!attribute [rw] instance_port
212
+ # The port on which the EC2 instance is listening.
213
+ # @return [Integer]
214
+ #
215
+ # @!attribute [rw] policy_names
216
+ # The names of the policies enabled for the EC2 instance.
217
+ # @return [Array<String>]
218
+ class BackendServerDescription < Struct.new(
219
+ :instance_port,
220
+ :policy_names)
221
+ include Aws::Structure
222
+ end
223
+
224
+ # Contains the parameters for ConfigureHealthCheck.
225
+ # @note When making an API call, pass ConfigureHealthCheckInput
226
+ # data as a hash:
227
+ #
228
+ # {
229
+ # load_balancer_name: "AccessPointName", # required
230
+ # health_check: { # required
231
+ # target: "HealthCheckTarget", # required
232
+ # interval: 1, # required
233
+ # timeout: 1, # required
234
+ # unhealthy_threshold: 1, # required
235
+ # healthy_threshold: 1, # required
236
+ # },
237
+ # }
238
+ # @!attribute [rw] load_balancer_name
239
+ # The name of the load balancer.
240
+ # @return [String]
241
+ #
242
+ # @!attribute [rw] health_check
243
+ # The configuration information.
244
+ # @return [Types::HealthCheck]
245
+ class ConfigureHealthCheckInput < Struct.new(
246
+ :load_balancer_name,
247
+ :health_check)
248
+ include Aws::Structure
249
+ end
250
+
251
+ # Contains the output of ConfigureHealthCheck.
252
+ # @!attribute [rw] health_check
253
+ # The updated health check.
254
+ # @return [Types::HealthCheck]
255
+ class ConfigureHealthCheckOutput < Struct.new(
256
+ :health_check)
257
+ include Aws::Structure
258
+ end
259
+
260
+ # Information about the `ConnectionDraining` attribute.
261
+ # @note When making an API call, pass ConnectionDraining
262
+ # data as a hash:
263
+ #
264
+ # {
265
+ # enabled: false, # required
266
+ # timeout: 1,
267
+ # }
268
+ # @!attribute [rw] enabled
269
+ # Specifies whether connection draining is enabled for the load
270
+ # balancer.
271
+ # @return [Boolean]
272
+ #
273
+ # @!attribute [rw] timeout
274
+ # The maximum time, in seconds, to keep the existing connections open
275
+ # before deregistering the instances.
276
+ # @return [Integer]
277
+ class ConnectionDraining < Struct.new(
278
+ :enabled,
279
+ :timeout)
280
+ include Aws::Structure
281
+ end
282
+
283
+ # Information about the `ConnectionSettings` attribute.
284
+ # @note When making an API call, pass ConnectionSettings
285
+ # data as a hash:
286
+ #
287
+ # {
288
+ # idle_timeout: 1, # required
289
+ # }
290
+ # @!attribute [rw] idle_timeout
291
+ # The time, in seconds, that the connection is allowed to be idle (no
292
+ # data has been sent over the connection) before it is closed by the
293
+ # load balancer.
294
+ # @return [Integer]
295
+ class ConnectionSettings < Struct.new(
296
+ :idle_timeout)
297
+ include Aws::Structure
298
+ end
299
+
300
+ # Contains the parameters for CreateLoadBalancer.
301
+ # @note When making an API call, pass CreateAccessPointInput
302
+ # data as a hash:
303
+ #
304
+ # {
305
+ # load_balancer_name: "AccessPointName", # required
306
+ # listeners: [ # required
307
+ # {
308
+ # protocol: "Protocol", # required
309
+ # load_balancer_port: 1, # required
310
+ # instance_protocol: "Protocol",
311
+ # instance_port: 1, # required
312
+ # ssl_certificate_id: "SSLCertificateId",
313
+ # },
314
+ # ],
315
+ # availability_zones: ["AvailabilityZone"],
316
+ # subnets: ["SubnetId"],
317
+ # security_groups: ["SecurityGroupId"],
318
+ # scheme: "LoadBalancerScheme",
319
+ # tags: [
320
+ # {
321
+ # key: "TagKey", # required
322
+ # value: "TagValue",
323
+ # },
324
+ # ],
325
+ # }
326
+ # @!attribute [rw] load_balancer_name
327
+ # The name of the load balancer.
328
+ #
329
+ # This name must be unique within your set of load balancers for the
330
+ # region, must have a maximum of 32 characters, must contain only
331
+ # alphanumeric characters or hyphens, and cannot begin or end with a
332
+ # hyphen.
333
+ # @return [String]
334
+ #
335
+ # @!attribute [rw] listeners
336
+ # The listeners.
337
+ #
338
+ # For more information, see [Listeners for Your Classic Load
339
+ # Balancer][1] in the *Classic Load Balancers Guide*.
340
+ #
341
+ #
342
+ #
343
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html
344
+ # @return [Array<Types::Listener>]
345
+ #
346
+ # @!attribute [rw] availability_zones
347
+ # One or more Availability Zones from the same region as the load
348
+ # balancer.
349
+ #
350
+ # You must specify at least one Availability Zone.
351
+ #
352
+ # You can add more Availability Zones after you create the load
353
+ # balancer using EnableAvailabilityZonesForLoadBalancer.
354
+ # @return [Array<String>]
355
+ #
356
+ # @!attribute [rw] subnets
357
+ # The IDs of the subnets in your VPC to attach to the load balancer.
358
+ # Specify one subnet per Availability Zone specified in
359
+ # `AvailabilityZones`.
360
+ # @return [Array<String>]
361
+ #
362
+ # @!attribute [rw] security_groups
363
+ # The IDs of the security groups to assign to the load balancer.
364
+ # @return [Array<String>]
365
+ #
366
+ # @!attribute [rw] scheme
367
+ # The type of a load balancer. Valid only for load balancers in a VPC.
368
+ #
369
+ # By default, Elastic Load Balancing creates an Internet-facing load
370
+ # balancer with a DNS name that resolves to public IP addresses. For
371
+ # more information about Internet-facing and Internal load balancers,
372
+ # see [Load Balancer Scheme][1] in the *Elastic Load Balancing User
373
+ # Guide*.
374
+ #
375
+ # Specify `internal` to create a load balancer with a DNS name that
376
+ # resolves to private IP addresses.
377
+ #
378
+ #
379
+ #
380
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#load-balancer-scheme
381
+ # @return [String]
382
+ #
383
+ # @!attribute [rw] tags
384
+ # A list of tags to assign to the load balancer.
385
+ #
386
+ # For more information about tagging your load balancer, see [Tag Your
387
+ # Classic Load Balancer][1] in the *Classic Load Balancers Guide*.
388
+ #
389
+ #
390
+ #
391
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/add-remove-tags.html
392
+ # @return [Array<Types::Tag>]
393
+ class CreateAccessPointInput < Struct.new(
394
+ :load_balancer_name,
395
+ :listeners,
396
+ :availability_zones,
397
+ :subnets,
398
+ :security_groups,
399
+ :scheme,
400
+ :tags)
401
+ include Aws::Structure
402
+ end
403
+
404
+ # Contains the output for CreateLoadBalancer.
405
+ # @!attribute [rw] dns_name
406
+ # The DNS name of the load balancer.
407
+ # @return [String]
408
+ class CreateAccessPointOutput < Struct.new(
409
+ :dns_name)
410
+ include Aws::Structure
411
+ end
412
+
413
+ # Contains the parameters for CreateAppCookieStickinessPolicy.
414
+ # @note When making an API call, pass CreateAppCookieStickinessPolicyInput
415
+ # data as a hash:
416
+ #
417
+ # {
418
+ # load_balancer_name: "AccessPointName", # required
419
+ # policy_name: "PolicyName", # required
420
+ # cookie_name: "CookieName", # required
421
+ # }
422
+ # @!attribute [rw] load_balancer_name
423
+ # The name of the load balancer.
424
+ # @return [String]
425
+ #
426
+ # @!attribute [rw] policy_name
427
+ # The name of the policy being created. Policy names must consist of
428
+ # alphanumeric characters and dashes (-). This name must be unique
429
+ # within the set of policies for this load balancer.
430
+ # @return [String]
431
+ #
432
+ # @!attribute [rw] cookie_name
433
+ # The name of the application cookie used for stickiness.
434
+ # @return [String]
435
+ class CreateAppCookieStickinessPolicyInput < Struct.new(
436
+ :load_balancer_name,
437
+ :policy_name,
438
+ :cookie_name)
439
+ include Aws::Structure
440
+ end
441
+
442
+ # Contains the output for CreateAppCookieStickinessPolicy.
443
+ class CreateAppCookieStickinessPolicyOutput < Aws::EmptyStructure; end
444
+
445
+ # Contains the parameters for CreateLBCookieStickinessPolicy.
446
+ # @note When making an API call, pass CreateLBCookieStickinessPolicyInput
447
+ # data as a hash:
448
+ #
449
+ # {
450
+ # load_balancer_name: "AccessPointName", # required
451
+ # policy_name: "PolicyName", # required
452
+ # cookie_expiration_period: 1,
453
+ # }
454
+ # @!attribute [rw] load_balancer_name
455
+ # The name of the load balancer.
456
+ # @return [String]
457
+ #
458
+ # @!attribute [rw] policy_name
459
+ # The name of the policy being created. Policy names must consist of
460
+ # alphanumeric characters and dashes (-). This name must be unique
461
+ # within the set of policies for this load balancer.
462
+ # @return [String]
463
+ #
464
+ # @!attribute [rw] cookie_expiration_period
465
+ # The time period, in seconds, after which the cookie should be
466
+ # considered stale. If you do not specify this parameter, the default
467
+ # value is 0, which indicates that the sticky session should last for
468
+ # the duration of the browser session.
469
+ # @return [Integer]
470
+ class CreateLBCookieStickinessPolicyInput < Struct.new(
471
+ :load_balancer_name,
472
+ :policy_name,
473
+ :cookie_expiration_period)
474
+ include Aws::Structure
475
+ end
476
+
477
+ # Contains the output for CreateLBCookieStickinessPolicy.
478
+ class CreateLBCookieStickinessPolicyOutput < Aws::EmptyStructure; end
479
+
480
+ # Contains the parameters for CreateLoadBalancerListeners.
481
+ # @note When making an API call, pass CreateLoadBalancerListenerInput
482
+ # data as a hash:
483
+ #
484
+ # {
485
+ # load_balancer_name: "AccessPointName", # required
486
+ # listeners: [ # required
487
+ # {
488
+ # protocol: "Protocol", # required
489
+ # load_balancer_port: 1, # required
490
+ # instance_protocol: "Protocol",
491
+ # instance_port: 1, # required
492
+ # ssl_certificate_id: "SSLCertificateId",
493
+ # },
494
+ # ],
495
+ # }
496
+ # @!attribute [rw] load_balancer_name
497
+ # The name of the load balancer.
498
+ # @return [String]
499
+ #
500
+ # @!attribute [rw] listeners
501
+ # The listeners.
502
+ # @return [Array<Types::Listener>]
503
+ class CreateLoadBalancerListenerInput < Struct.new(
504
+ :load_balancer_name,
505
+ :listeners)
506
+ include Aws::Structure
507
+ end
508
+
509
+ # Contains the parameters for CreateLoadBalancerListener.
510
+ class CreateLoadBalancerListenerOutput < Aws::EmptyStructure; end
511
+
512
+ # Contains the parameters for CreateLoadBalancerPolicy.
513
+ # @note When making an API call, pass CreateLoadBalancerPolicyInput
514
+ # data as a hash:
515
+ #
516
+ # {
517
+ # load_balancer_name: "AccessPointName", # required
518
+ # policy_name: "PolicyName", # required
519
+ # policy_type_name: "PolicyTypeName", # required
520
+ # policy_attributes: [
521
+ # {
522
+ # attribute_name: "AttributeName",
523
+ # attribute_value: "AttributeValue",
524
+ # },
525
+ # ],
526
+ # }
527
+ # @!attribute [rw] load_balancer_name
528
+ # The name of the load balancer.
529
+ # @return [String]
530
+ #
531
+ # @!attribute [rw] policy_name
532
+ # The name of the load balancer policy to be created. This name must
533
+ # be unique within the set of policies for this load balancer.
534
+ # @return [String]
535
+ #
536
+ # @!attribute [rw] policy_type_name
537
+ # The name of the base policy type. To get the list of policy types,
538
+ # use DescribeLoadBalancerPolicyTypes.
539
+ # @return [String]
540
+ #
541
+ # @!attribute [rw] policy_attributes
542
+ # The policy attributes.
543
+ # @return [Array<Types::PolicyAttribute>]
544
+ class CreateLoadBalancerPolicyInput < Struct.new(
545
+ :load_balancer_name,
546
+ :policy_name,
547
+ :policy_type_name,
548
+ :policy_attributes)
549
+ include Aws::Structure
550
+ end
551
+
552
+ # Contains the output of CreateLoadBalancerPolicy.
553
+ class CreateLoadBalancerPolicyOutput < Aws::EmptyStructure; end
554
+
555
+ # Information about the `CrossZoneLoadBalancing` attribute.
556
+ # @note When making an API call, pass CrossZoneLoadBalancing
557
+ # data as a hash:
558
+ #
559
+ # {
560
+ # enabled: false, # required
561
+ # }
562
+ # @!attribute [rw] enabled
563
+ # Specifies whether cross-zone load balancing is enabled for the load
564
+ # balancer.
565
+ # @return [Boolean]
566
+ class CrossZoneLoadBalancing < Struct.new(
567
+ :enabled)
568
+ include Aws::Structure
569
+ end
570
+
571
+ # Contains the parameters for DeleteLoadBalancer.
572
+ # @note When making an API call, pass DeleteAccessPointInput
573
+ # data as a hash:
574
+ #
575
+ # {
576
+ # load_balancer_name: "AccessPointName", # required
577
+ # }
578
+ # @!attribute [rw] load_balancer_name
579
+ # The name of the load balancer.
580
+ # @return [String]
581
+ class DeleteAccessPointInput < Struct.new(
582
+ :load_balancer_name)
583
+ include Aws::Structure
584
+ end
585
+
586
+ # Contains the output of DeleteLoadBalancer.
587
+ class DeleteAccessPointOutput < Aws::EmptyStructure; end
588
+
589
+ # Contains the parameters for DeleteLoadBalancerListeners.
590
+ # @note When making an API call, pass DeleteLoadBalancerListenerInput
591
+ # data as a hash:
592
+ #
593
+ # {
594
+ # load_balancer_name: "AccessPointName", # required
595
+ # load_balancer_ports: [1], # required
596
+ # }
597
+ # @!attribute [rw] load_balancer_name
598
+ # The name of the load balancer.
599
+ # @return [String]
600
+ #
601
+ # @!attribute [rw] load_balancer_ports
602
+ # The client port numbers of the listeners.
603
+ # @return [Array<Integer>]
604
+ class DeleteLoadBalancerListenerInput < Struct.new(
605
+ :load_balancer_name,
606
+ :load_balancer_ports)
607
+ include Aws::Structure
608
+ end
609
+
610
+ # Contains the output of DeleteLoadBalancerListeners.
611
+ class DeleteLoadBalancerListenerOutput < Aws::EmptyStructure; end
612
+
613
+ # Contains the parameters for DeleteLoadBalancerPolicy.
614
+ # @note When making an API call, pass DeleteLoadBalancerPolicyInput
615
+ # data as a hash:
616
+ #
617
+ # {
618
+ # load_balancer_name: "AccessPointName", # required
619
+ # policy_name: "PolicyName", # required
620
+ # }
621
+ # @!attribute [rw] load_balancer_name
622
+ # The name of the load balancer.
623
+ # @return [String]
624
+ #
625
+ # @!attribute [rw] policy_name
626
+ # The name of the policy.
627
+ # @return [String]
628
+ class DeleteLoadBalancerPolicyInput < Struct.new(
629
+ :load_balancer_name,
630
+ :policy_name)
631
+ include Aws::Structure
632
+ end
633
+
634
+ # Contains the output of DeleteLoadBalancerPolicy.
635
+ class DeleteLoadBalancerPolicyOutput < Aws::EmptyStructure; end
636
+
637
+ # Contains the parameters for DeregisterInstancesFromLoadBalancer.
638
+ # @note When making an API call, pass DeregisterEndPointsInput
639
+ # data as a hash:
640
+ #
641
+ # {
642
+ # load_balancer_name: "AccessPointName", # required
643
+ # instances: [ # required
644
+ # {
645
+ # instance_id: "InstanceId",
646
+ # },
647
+ # ],
648
+ # }
649
+ # @!attribute [rw] load_balancer_name
650
+ # The name of the load balancer.
651
+ # @return [String]
652
+ #
653
+ # @!attribute [rw] instances
654
+ # The IDs of the instances.
655
+ # @return [Array<Types::Instance>]
656
+ class DeregisterEndPointsInput < Struct.new(
657
+ :load_balancer_name,
658
+ :instances)
659
+ include Aws::Structure
660
+ end
661
+
662
+ # Contains the output of DeregisterInstancesFromLoadBalancer.
663
+ # @!attribute [rw] instances
664
+ # The remaining instances registered with the load balancer.
665
+ # @return [Array<Types::Instance>]
666
+ class DeregisterEndPointsOutput < Struct.new(
667
+ :instances)
668
+ include Aws::Structure
669
+ end
670
+
671
+ # Contains the parameters for DescribeLoadBalancers.
672
+ # @note When making an API call, pass DescribeAccessPointsInput
673
+ # data as a hash:
674
+ #
675
+ # {
676
+ # load_balancer_names: ["AccessPointName"],
677
+ # marker: "Marker",
678
+ # page_size: 1,
679
+ # }
680
+ # @!attribute [rw] load_balancer_names
681
+ # The names of the load balancers.
682
+ # @return [Array<String>]
683
+ #
684
+ # @!attribute [rw] marker
685
+ # The marker for the next set of results. (You received this marker
686
+ # from a previous call.)
687
+ # @return [String]
688
+ #
689
+ # @!attribute [rw] page_size
690
+ # The maximum number of results to return with this call (a number
691
+ # from 1 to 400). The default is 400.
692
+ # @return [Integer]
693
+ class DescribeAccessPointsInput < Struct.new(
694
+ :load_balancer_names,
695
+ :marker,
696
+ :page_size)
697
+ include Aws::Structure
698
+ end
699
+
700
+ # Contains the parameters for DescribeLoadBalancers.
701
+ # @!attribute [rw] load_balancer_descriptions
702
+ # Information about the load balancers.
703
+ # @return [Array<Types::LoadBalancerDescription>]
704
+ #
705
+ # @!attribute [rw] next_marker
706
+ # The marker to use when requesting the next set of results. If there
707
+ # are no additional results, the string is empty.
708
+ # @return [String]
709
+ class DescribeAccessPointsOutput < Struct.new(
710
+ :load_balancer_descriptions,
711
+ :next_marker)
712
+ include Aws::Structure
713
+ end
714
+
715
+ # Contains the parameters for DescribeInstanceHealth.
716
+ # @note When making an API call, pass DescribeEndPointStateInput
717
+ # data as a hash:
718
+ #
719
+ # {
720
+ # load_balancer_name: "AccessPointName", # required
721
+ # instances: [
722
+ # {
723
+ # instance_id: "InstanceId",
724
+ # },
725
+ # ],
726
+ # }
727
+ # @!attribute [rw] load_balancer_name
728
+ # The name of the load balancer.
729
+ # @return [String]
730
+ #
731
+ # @!attribute [rw] instances
732
+ # The IDs of the instances.
733
+ # @return [Array<Types::Instance>]
734
+ class DescribeEndPointStateInput < Struct.new(
735
+ :load_balancer_name,
736
+ :instances)
737
+ include Aws::Structure
738
+ end
739
+
740
+ # Contains the output for DescribeInstanceHealth.
741
+ # @!attribute [rw] instance_states
742
+ # Information about the health of the instances.
743
+ # @return [Array<Types::InstanceState>]
744
+ class DescribeEndPointStateOutput < Struct.new(
745
+ :instance_states)
746
+ include Aws::Structure
747
+ end
748
+
749
+ # Contains the parameters for DescribeLoadBalancerAttributes.
750
+ # @note When making an API call, pass DescribeLoadBalancerAttributesInput
751
+ # data as a hash:
752
+ #
753
+ # {
754
+ # load_balancer_name: "AccessPointName", # required
755
+ # }
756
+ # @!attribute [rw] load_balancer_name
757
+ # The name of the load balancer.
758
+ # @return [String]
759
+ class DescribeLoadBalancerAttributesInput < Struct.new(
760
+ :load_balancer_name)
761
+ include Aws::Structure
762
+ end
763
+
764
+ # Contains the output of DescribeLoadBalancerAttributes.
765
+ # @!attribute [rw] load_balancer_attributes
766
+ # Information about the load balancer attributes.
767
+ # @return [Types::LoadBalancerAttributes]
768
+ class DescribeLoadBalancerAttributesOutput < Struct.new(
769
+ :load_balancer_attributes)
770
+ include Aws::Structure
771
+ end
772
+
773
+ # Contains the parameters for DescribeLoadBalancerPolicies.
774
+ # @note When making an API call, pass DescribeLoadBalancerPoliciesInput
775
+ # data as a hash:
776
+ #
777
+ # {
778
+ # load_balancer_name: "AccessPointName",
779
+ # policy_names: ["PolicyName"],
780
+ # }
781
+ # @!attribute [rw] load_balancer_name
782
+ # The name of the load balancer.
783
+ # @return [String]
784
+ #
785
+ # @!attribute [rw] policy_names
786
+ # The names of the policies.
787
+ # @return [Array<String>]
788
+ class DescribeLoadBalancerPoliciesInput < Struct.new(
789
+ :load_balancer_name,
790
+ :policy_names)
791
+ include Aws::Structure
792
+ end
793
+
794
+ # Contains the output of DescribeLoadBalancerPolicies.
795
+ # @!attribute [rw] policy_descriptions
796
+ # Information about the policies.
797
+ # @return [Array<Types::PolicyDescription>]
798
+ class DescribeLoadBalancerPoliciesOutput < Struct.new(
799
+ :policy_descriptions)
800
+ include Aws::Structure
801
+ end
802
+
803
+ # Contains the parameters for DescribeLoadBalancerPolicyTypes.
804
+ # @note When making an API call, pass DescribeLoadBalancerPolicyTypesInput
805
+ # data as a hash:
806
+ #
807
+ # {
808
+ # policy_type_names: ["PolicyTypeName"],
809
+ # }
810
+ # @!attribute [rw] policy_type_names
811
+ # The names of the policy types. If no names are specified, describes
812
+ # all policy types defined by Elastic Load Balancing.
813
+ # @return [Array<String>]
814
+ class DescribeLoadBalancerPolicyTypesInput < Struct.new(
815
+ :policy_type_names)
816
+ include Aws::Structure
817
+ end
818
+
819
+ # Contains the output of DescribeLoadBalancerPolicyTypes.
820
+ # @!attribute [rw] policy_type_descriptions
821
+ # Information about the policy types.
822
+ # @return [Array<Types::PolicyTypeDescription>]
823
+ class DescribeLoadBalancerPolicyTypesOutput < Struct.new(
824
+ :policy_type_descriptions)
825
+ include Aws::Structure
826
+ end
827
+
828
+ # Contains the parameters for DescribeTags.
829
+ # @note When making an API call, pass DescribeTagsInput
830
+ # data as a hash:
831
+ #
832
+ # {
833
+ # load_balancer_names: ["AccessPointName"], # required
834
+ # }
835
+ # @!attribute [rw] load_balancer_names
836
+ # The names of the load balancers.
837
+ # @return [Array<String>]
838
+ class DescribeTagsInput < Struct.new(
839
+ :load_balancer_names)
840
+ include Aws::Structure
841
+ end
842
+
843
+ # Contains the output for DescribeTags.
844
+ # @!attribute [rw] tag_descriptions
845
+ # Information about the tags.
846
+ # @return [Array<Types::TagDescription>]
847
+ class DescribeTagsOutput < Struct.new(
848
+ :tag_descriptions)
849
+ include Aws::Structure
850
+ end
851
+
852
+ # Contains the parameters for DetachLoadBalancerFromSubnets.
853
+ # @note When making an API call, pass DetachLoadBalancerFromSubnetsInput
854
+ # data as a hash:
855
+ #
856
+ # {
857
+ # load_balancer_name: "AccessPointName", # required
858
+ # subnets: ["SubnetId"], # required
859
+ # }
860
+ # @!attribute [rw] load_balancer_name
861
+ # The name of the load balancer.
862
+ # @return [String]
863
+ #
864
+ # @!attribute [rw] subnets
865
+ # The IDs of the subnets.
866
+ # @return [Array<String>]
867
+ class DetachLoadBalancerFromSubnetsInput < Struct.new(
868
+ :load_balancer_name,
869
+ :subnets)
870
+ include Aws::Structure
871
+ end
872
+
873
+ # Contains the output of DetachLoadBalancerFromSubnets.
874
+ # @!attribute [rw] subnets
875
+ # The IDs of the remaining subnets for the load balancer.
876
+ # @return [Array<String>]
877
+ class DetachLoadBalancerFromSubnetsOutput < Struct.new(
878
+ :subnets)
879
+ include Aws::Structure
880
+ end
881
+
882
+ # Information about a health check.
883
+ # @note When making an API call, pass HealthCheck
884
+ # data as a hash:
885
+ #
886
+ # {
887
+ # target: "HealthCheckTarget", # required
888
+ # interval: 1, # required
889
+ # timeout: 1, # required
890
+ # unhealthy_threshold: 1, # required
891
+ # healthy_threshold: 1, # required
892
+ # }
893
+ # @!attribute [rw] target
894
+ # The instance being checked. The protocol is either TCP, HTTP, HTTPS,
895
+ # or SSL. The range of valid ports is one (1) through 65535.
896
+ #
897
+ # TCP is the default, specified as a TCP: port pair, for example
898
+ # "TCP:5000". In this case, a health check simply attempts to open a
899
+ # TCP connection to the instance on the specified port. Failure to
900
+ # connect within the configured timeout is considered unhealthy.
901
+ #
902
+ # SSL is also specified as SSL: port pair, for example, SSL:5000.
903
+ #
904
+ # For HTTP/HTTPS, you must include a ping path in the string. HTTP is
905
+ # specified as a HTTP:port;/;PathToPing; grouping, for example
906
+ # "HTTP:80/weather/us/wa/seattle". In this case, a HTTP GET request
907
+ # is issued to the instance on the given port and path. Any answer
908
+ # other than "200 OK" within the timeout period is considered
909
+ # unhealthy.
910
+ #
911
+ # The total length of the HTTP ping target must be 1024 16-bit Unicode
912
+ # characters or less.
913
+ # @return [String]
914
+ #
915
+ # @!attribute [rw] interval
916
+ # The approximate interval, in seconds, between health checks of an
917
+ # individual instance.
918
+ # @return [Integer]
919
+ #
920
+ # @!attribute [rw] timeout
921
+ # The amount of time, in seconds, during which no response means a
922
+ # failed health check.
923
+ #
924
+ # This value must be less than the `Interval` value.
925
+ # @return [Integer]
926
+ #
927
+ # @!attribute [rw] unhealthy_threshold
928
+ # The number of consecutive health check failures required before
929
+ # moving the instance to the `Unhealthy` state.
930
+ # @return [Integer]
931
+ #
932
+ # @!attribute [rw] healthy_threshold
933
+ # The number of consecutive health checks successes required before
934
+ # moving the instance to the `Healthy` state.
935
+ # @return [Integer]
936
+ class HealthCheck < Struct.new(
937
+ :target,
938
+ :interval,
939
+ :timeout,
940
+ :unhealthy_threshold,
941
+ :healthy_threshold)
942
+ include Aws::Structure
943
+ end
944
+
945
+ # The ID of an EC2 instance.
946
+ # @note When making an API call, pass Instance
947
+ # data as a hash:
948
+ #
949
+ # {
950
+ # instance_id: "InstanceId",
951
+ # }
952
+ # @!attribute [rw] instance_id
953
+ # The instance ID.
954
+ # @return [String]
955
+ class Instance < Struct.new(
956
+ :instance_id)
957
+ include Aws::Structure
958
+ end
959
+
960
+ # Information about the state of an EC2 instance.
961
+ # @!attribute [rw] instance_id
962
+ # The ID of the instance.
963
+ # @return [String]
964
+ #
965
+ # @!attribute [rw] state
966
+ # The current state of the instance.
967
+ #
968
+ # Valid values: `InService` \| `OutOfService` \| `Unknown`
969
+ # @return [String]
970
+ #
971
+ # @!attribute [rw] reason_code
972
+ # Information about the cause of `OutOfService` instances.
973
+ # Specifically, whether the cause is Elastic Load Balancing or the
974
+ # instance.
975
+ #
976
+ # Valid values: `ELB` \| `Instance` \| `N/A`
977
+ # @return [String]
978
+ #
979
+ # @!attribute [rw] description
980
+ # A description of the instance state. This string can contain one or
981
+ # more of the following messages.
982
+ #
983
+ # * `N/A`
984
+ #
985
+ # * `A transient error occurred. Please try again later.`
986
+ #
987
+ # * `Instance has failed at least the UnhealthyThreshold number of
988
+ # health checks consecutively.`
989
+ #
990
+ # * `Instance has not passed the configured HealthyThreshold number of
991
+ # health checks consecutively.`
992
+ #
993
+ # * `Instance registration is still in progress.`
994
+ #
995
+ # * `Instance is in the EC2 Availability Zone for which LoadBalancer
996
+ # is not configured to route traffic to.`
997
+ #
998
+ # * `Instance is not currently registered with the LoadBalancer.`
999
+ #
1000
+ # * `Instance deregistration currently in progress.`
1001
+ #
1002
+ # * `Disable Availability Zone is currently in progress.`
1003
+ #
1004
+ # * `Instance is in pending state.`
1005
+ #
1006
+ # * `Instance is in stopped state.`
1007
+ #
1008
+ # * `Instance is in terminated state.`
1009
+ # @return [String]
1010
+ class InstanceState < Struct.new(
1011
+ :instance_id,
1012
+ :state,
1013
+ :reason_code,
1014
+ :description)
1015
+ include Aws::Structure
1016
+ end
1017
+
1018
+ # Information about a policy for duration-based session stickiness.
1019
+ # @!attribute [rw] policy_name
1020
+ # The name of the policy. This name must be unique within the set of
1021
+ # policies for this load balancer.
1022
+ # @return [String]
1023
+ #
1024
+ # @!attribute [rw] cookie_expiration_period
1025
+ # The time period, in seconds, after which the cookie should be
1026
+ # considered stale. If this parameter is not specified, the stickiness
1027
+ # session lasts for the duration of the browser session.
1028
+ # @return [Integer]
1029
+ class LBCookieStickinessPolicy < Struct.new(
1030
+ :policy_name,
1031
+ :cookie_expiration_period)
1032
+ include Aws::Structure
1033
+ end
1034
+
1035
+ # Information about a listener.
1036
+ #
1037
+ # For information about the protocols and the ports supported by Elastic
1038
+ # Load Balancing, see [Listeners for Your Classic Load Balancer][1] in
1039
+ # the *Classic Load Balancers Guide*.
1040
+ #
1041
+ #
1042
+ #
1043
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html
1044
+ # @note When making an API call, pass Listener
1045
+ # data as a hash:
1046
+ #
1047
+ # {
1048
+ # protocol: "Protocol", # required
1049
+ # load_balancer_port: 1, # required
1050
+ # instance_protocol: "Protocol",
1051
+ # instance_port: 1, # required
1052
+ # ssl_certificate_id: "SSLCertificateId",
1053
+ # }
1054
+ # @!attribute [rw] protocol
1055
+ # The load balancer transport protocol to use for routing: HTTP,
1056
+ # HTTPS, TCP, or SSL.
1057
+ # @return [String]
1058
+ #
1059
+ # @!attribute [rw] load_balancer_port
1060
+ # The port on which the load balancer is listening. On EC2-VPC, you
1061
+ # can specify any port from the range 1-65535. On EC2-Classic, you can
1062
+ # specify any port from the following list: 25, 80, 443, 465, 587,
1063
+ # 1024-65535.
1064
+ # @return [Integer]
1065
+ #
1066
+ # @!attribute [rw] instance_protocol
1067
+ # The protocol to use for routing traffic to instances: HTTP, HTTPS,
1068
+ # TCP, or SSL.
1069
+ #
1070
+ # If the front-end protocol is HTTP, HTTPS, TCP, or SSL,
1071
+ # `InstanceProtocol` must be at the same protocol.
1072
+ #
1073
+ # If there is another listener with the same `InstancePort` whose
1074
+ # `InstanceProtocol` is secure, (HTTPS or SSL), the listener's
1075
+ # `InstanceProtocol` must also be secure.
1076
+ #
1077
+ # If there is another listener with the same `InstancePort` whose
1078
+ # `InstanceProtocol` is HTTP or TCP, the listener's
1079
+ # `InstanceProtocol` must be HTTP or TCP.
1080
+ # @return [String]
1081
+ #
1082
+ # @!attribute [rw] instance_port
1083
+ # The port on which the instance is listening.
1084
+ # @return [Integer]
1085
+ #
1086
+ # @!attribute [rw] ssl_certificate_id
1087
+ # The Amazon Resource Name (ARN) of the server certificate.
1088
+ # @return [String]
1089
+ class Listener < Struct.new(
1090
+ :protocol,
1091
+ :load_balancer_port,
1092
+ :instance_protocol,
1093
+ :instance_port,
1094
+ :ssl_certificate_id)
1095
+ include Aws::Structure
1096
+ end
1097
+
1098
+ # The policies enabled for a listener.
1099
+ # @!attribute [rw] listener
1100
+ # Information about a listener.
1101
+ #
1102
+ # For information about the protocols and the ports supported by
1103
+ # Elastic Load Balancing, see [Listeners for Your Classic Load
1104
+ # Balancer][1] in the *Classic Load Balancers Guide*.
1105
+ #
1106
+ #
1107
+ #
1108
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html
1109
+ # @return [Types::Listener]
1110
+ #
1111
+ # @!attribute [rw] policy_names
1112
+ # The policies. If there are no policies enabled, the list is empty.
1113
+ # @return [Array<String>]
1114
+ class ListenerDescription < Struct.new(
1115
+ :listener,
1116
+ :policy_names)
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # The attributes for a load balancer.
1121
+ # @note When making an API call, pass LoadBalancerAttributes
1122
+ # data as a hash:
1123
+ #
1124
+ # {
1125
+ # cross_zone_load_balancing: {
1126
+ # enabled: false, # required
1127
+ # },
1128
+ # access_log: {
1129
+ # enabled: false, # required
1130
+ # s3_bucket_name: "S3BucketName",
1131
+ # emit_interval: 1,
1132
+ # s3_bucket_prefix: "AccessLogPrefix",
1133
+ # },
1134
+ # connection_draining: {
1135
+ # enabled: false, # required
1136
+ # timeout: 1,
1137
+ # },
1138
+ # connection_settings: {
1139
+ # idle_timeout: 1, # required
1140
+ # },
1141
+ # additional_attributes: [
1142
+ # {
1143
+ # key: "AdditionalAttributeKey",
1144
+ # value: "AdditionalAttributeValue",
1145
+ # },
1146
+ # ],
1147
+ # }
1148
+ # @!attribute [rw] cross_zone_load_balancing
1149
+ # If enabled, the load balancer routes the request traffic evenly
1150
+ # across all instances regardless of the Availability Zones.
1151
+ #
1152
+ # For more information, see [Configure Cross-Zone Load Balancing][1]
1153
+ # in the *Classic Load Balancers Guide*.
1154
+ #
1155
+ #
1156
+ #
1157
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-disable-crosszone-lb.html
1158
+ # @return [Types::CrossZoneLoadBalancing]
1159
+ #
1160
+ # @!attribute [rw] access_log
1161
+ # If enabled, the load balancer captures detailed information of all
1162
+ # requests and delivers the information to the Amazon S3 bucket that
1163
+ # you specify.
1164
+ #
1165
+ # For more information, see [Enable Access Logs][1] in the *Classic
1166
+ # Load Balancers Guide*.
1167
+ #
1168
+ #
1169
+ #
1170
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html
1171
+ # @return [Types::AccessLog]
1172
+ #
1173
+ # @!attribute [rw] connection_draining
1174
+ # If enabled, the load balancer allows existing requests to complete
1175
+ # before the load balancer shifts traffic away from a deregistered or
1176
+ # unhealthy instance.
1177
+ #
1178
+ # For more information, see [Configure Connection Draining][1] in the
1179
+ # *Classic Load Balancers Guide*.
1180
+ #
1181
+ #
1182
+ #
1183
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-conn-drain.html
1184
+ # @return [Types::ConnectionDraining]
1185
+ #
1186
+ # @!attribute [rw] connection_settings
1187
+ # If enabled, the load balancer allows the connections to remain idle
1188
+ # (no data is sent over the connection) for the specified duration.
1189
+ #
1190
+ # By default, Elastic Load Balancing maintains a 60-second idle
1191
+ # connection timeout for both front-end and back-end connections of
1192
+ # your load balancer. For more information, see [Configure Idle
1193
+ # Connection Timeout][1] in the *Classic Load Balancers Guide*.
1194
+ #
1195
+ #
1196
+ #
1197
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/config-idle-timeout.html
1198
+ # @return [Types::ConnectionSettings]
1199
+ #
1200
+ # @!attribute [rw] additional_attributes
1201
+ # This parameter is reserved.
1202
+ # @return [Array<Types::AdditionalAttribute>]
1203
+ class LoadBalancerAttributes < Struct.new(
1204
+ :cross_zone_load_balancing,
1205
+ :access_log,
1206
+ :connection_draining,
1207
+ :connection_settings,
1208
+ :additional_attributes)
1209
+ include Aws::Structure
1210
+ end
1211
+
1212
+ # Information about a load balancer.
1213
+ # @!attribute [rw] load_balancer_name
1214
+ # The name of the load balancer.
1215
+ # @return [String]
1216
+ #
1217
+ # @!attribute [rw] dns_name
1218
+ # The DNS name of the load balancer.
1219
+ # @return [String]
1220
+ #
1221
+ # @!attribute [rw] canonical_hosted_zone_name
1222
+ # The DNS name of the load balancer.
1223
+ #
1224
+ # For more information, see [Configure a Custom Domain Name][1] in the
1225
+ # *Classic Load Balancers Guide*.
1226
+ #
1227
+ #
1228
+ #
1229
+ # [1]: http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/using-domain-names-with-elb.html
1230
+ # @return [String]
1231
+ #
1232
+ # @!attribute [rw] canonical_hosted_zone_name_id
1233
+ # The ID of the Amazon Route 53 hosted zone for the load balancer.
1234
+ # @return [String]
1235
+ #
1236
+ # @!attribute [rw] listener_descriptions
1237
+ # The listeners for the load balancer.
1238
+ # @return [Array<Types::ListenerDescription>]
1239
+ #
1240
+ # @!attribute [rw] policies
1241
+ # The policies defined for the load balancer.
1242
+ # @return [Types::Policies]
1243
+ #
1244
+ # @!attribute [rw] backend_server_descriptions
1245
+ # Information about your EC2 instances.
1246
+ # @return [Array<Types::BackendServerDescription>]
1247
+ #
1248
+ # @!attribute [rw] availability_zones
1249
+ # The Availability Zones for the load balancer.
1250
+ # @return [Array<String>]
1251
+ #
1252
+ # @!attribute [rw] subnets
1253
+ # The IDs of the subnets for the load balancer.
1254
+ # @return [Array<String>]
1255
+ #
1256
+ # @!attribute [rw] vpc_id
1257
+ # The ID of the VPC for the load balancer.
1258
+ # @return [String]
1259
+ #
1260
+ # @!attribute [rw] instances
1261
+ # The IDs of the instances for the load balancer.
1262
+ # @return [Array<Types::Instance>]
1263
+ #
1264
+ # @!attribute [rw] health_check
1265
+ # Information about the health checks conducted on the load balancer.
1266
+ # @return [Types::HealthCheck]
1267
+ #
1268
+ # @!attribute [rw] source_security_group
1269
+ # The security group for the load balancer, which you can use as part
1270
+ # of your inbound rules for your registered instances. To only allow
1271
+ # traffic from load balancers, add a security group rule that
1272
+ # specifies this source security group as the inbound source.
1273
+ # @return [Types::SourceSecurityGroup]
1274
+ #
1275
+ # @!attribute [rw] security_groups
1276
+ # The security groups for the load balancer. Valid only for load
1277
+ # balancers in a VPC.
1278
+ # @return [Array<String>]
1279
+ #
1280
+ # @!attribute [rw] created_time
1281
+ # The date and time the load balancer was created.
1282
+ # @return [Time]
1283
+ #
1284
+ # @!attribute [rw] scheme
1285
+ # The type of load balancer. Valid only for load balancers in a VPC.
1286
+ #
1287
+ # If `Scheme` is `internet-facing`, the load balancer has a public DNS
1288
+ # name that resolves to a public IP address.
1289
+ #
1290
+ # If `Scheme` is `internal`, the load balancer has a public DNS name
1291
+ # that resolves to a private IP address.
1292
+ # @return [String]
1293
+ class LoadBalancerDescription < Struct.new(
1294
+ :load_balancer_name,
1295
+ :dns_name,
1296
+ :canonical_hosted_zone_name,
1297
+ :canonical_hosted_zone_name_id,
1298
+ :listener_descriptions,
1299
+ :policies,
1300
+ :backend_server_descriptions,
1301
+ :availability_zones,
1302
+ :subnets,
1303
+ :vpc_id,
1304
+ :instances,
1305
+ :health_check,
1306
+ :source_security_group,
1307
+ :security_groups,
1308
+ :created_time,
1309
+ :scheme)
1310
+ include Aws::Structure
1311
+ end
1312
+
1313
+ # Contains the parameters for ModifyLoadBalancerAttributes.
1314
+ # @note When making an API call, pass ModifyLoadBalancerAttributesInput
1315
+ # data as a hash:
1316
+ #
1317
+ # {
1318
+ # load_balancer_name: "AccessPointName", # required
1319
+ # load_balancer_attributes: { # required
1320
+ # cross_zone_load_balancing: {
1321
+ # enabled: false, # required
1322
+ # },
1323
+ # access_log: {
1324
+ # enabled: false, # required
1325
+ # s3_bucket_name: "S3BucketName",
1326
+ # emit_interval: 1,
1327
+ # s3_bucket_prefix: "AccessLogPrefix",
1328
+ # },
1329
+ # connection_draining: {
1330
+ # enabled: false, # required
1331
+ # timeout: 1,
1332
+ # },
1333
+ # connection_settings: {
1334
+ # idle_timeout: 1, # required
1335
+ # },
1336
+ # additional_attributes: [
1337
+ # {
1338
+ # key: "AdditionalAttributeKey",
1339
+ # value: "AdditionalAttributeValue",
1340
+ # },
1341
+ # ],
1342
+ # },
1343
+ # }
1344
+ # @!attribute [rw] load_balancer_name
1345
+ # The name of the load balancer.
1346
+ # @return [String]
1347
+ #
1348
+ # @!attribute [rw] load_balancer_attributes
1349
+ # The attributes of the load balancer.
1350
+ # @return [Types::LoadBalancerAttributes]
1351
+ class ModifyLoadBalancerAttributesInput < Struct.new(
1352
+ :load_balancer_name,
1353
+ :load_balancer_attributes)
1354
+ include Aws::Structure
1355
+ end
1356
+
1357
+ # Contains the output of ModifyLoadBalancerAttributes.
1358
+ # @!attribute [rw] load_balancer_name
1359
+ # The name of the load balancer.
1360
+ # @return [String]
1361
+ #
1362
+ # @!attribute [rw] load_balancer_attributes
1363
+ # The attributes for a load balancer.
1364
+ # @return [Types::LoadBalancerAttributes]
1365
+ class ModifyLoadBalancerAttributesOutput < Struct.new(
1366
+ :load_balancer_name,
1367
+ :load_balancer_attributes)
1368
+ include Aws::Structure
1369
+ end
1370
+
1371
+ # The policies for a load balancer.
1372
+ # @!attribute [rw] app_cookie_stickiness_policies
1373
+ # The stickiness policies created using
1374
+ # CreateAppCookieStickinessPolicy.
1375
+ # @return [Array<Types::AppCookieStickinessPolicy>]
1376
+ #
1377
+ # @!attribute [rw] lb_cookie_stickiness_policies
1378
+ # The stickiness policies created using
1379
+ # CreateLBCookieStickinessPolicy.
1380
+ # @return [Array<Types::LBCookieStickinessPolicy>]
1381
+ #
1382
+ # @!attribute [rw] other_policies
1383
+ # The policies other than the stickiness policies.
1384
+ # @return [Array<String>]
1385
+ class Policies < Struct.new(
1386
+ :app_cookie_stickiness_policies,
1387
+ :lb_cookie_stickiness_policies,
1388
+ :other_policies)
1389
+ include Aws::Structure
1390
+ end
1391
+
1392
+ # Information about a policy attribute.
1393
+ # @note When making an API call, pass PolicyAttribute
1394
+ # data as a hash:
1395
+ #
1396
+ # {
1397
+ # attribute_name: "AttributeName",
1398
+ # attribute_value: "AttributeValue",
1399
+ # }
1400
+ # @!attribute [rw] attribute_name
1401
+ # The name of the attribute.
1402
+ # @return [String]
1403
+ #
1404
+ # @!attribute [rw] attribute_value
1405
+ # The value of the attribute.
1406
+ # @return [String]
1407
+ class PolicyAttribute < Struct.new(
1408
+ :attribute_name,
1409
+ :attribute_value)
1410
+ include Aws::Structure
1411
+ end
1412
+
1413
+ # Information about a policy attribute.
1414
+ # @!attribute [rw] attribute_name
1415
+ # The name of the attribute.
1416
+ # @return [String]
1417
+ #
1418
+ # @!attribute [rw] attribute_value
1419
+ # The value of the attribute.
1420
+ # @return [String]
1421
+ class PolicyAttributeDescription < Struct.new(
1422
+ :attribute_name,
1423
+ :attribute_value)
1424
+ include Aws::Structure
1425
+ end
1426
+
1427
+ # Information about a policy attribute type.
1428
+ # @!attribute [rw] attribute_name
1429
+ # The name of the attribute.
1430
+ # @return [String]
1431
+ #
1432
+ # @!attribute [rw] attribute_type
1433
+ # The type of the attribute. For example, `Boolean` or `Integer`.
1434
+ # @return [String]
1435
+ #
1436
+ # @!attribute [rw] description
1437
+ # A description of the attribute.
1438
+ # @return [String]
1439
+ #
1440
+ # @!attribute [rw] default_value
1441
+ # The default value of the attribute, if applicable.
1442
+ # @return [String]
1443
+ #
1444
+ # @!attribute [rw] cardinality
1445
+ # The cardinality of the attribute.
1446
+ #
1447
+ # Valid values:
1448
+ #
1449
+ # * ONE(1) : Single value required
1450
+ #
1451
+ # * ZERO\_OR\_ONE(0..1) : Up to one value is allowed
1452
+ #
1453
+ # * ZERO\_OR\_MORE(0..*) : Optional. Multiple values are allowed
1454
+ #
1455
+ # * ONE\_OR\_MORE(1..*0) : Required. Multiple values are allowed
1456
+ # @return [String]
1457
+ class PolicyAttributeTypeDescription < Struct.new(
1458
+ :attribute_name,
1459
+ :attribute_type,
1460
+ :description,
1461
+ :default_value,
1462
+ :cardinality)
1463
+ include Aws::Structure
1464
+ end
1465
+
1466
+ # Information about a policy.
1467
+ # @!attribute [rw] policy_name
1468
+ # The name of the policy.
1469
+ # @return [String]
1470
+ #
1471
+ # @!attribute [rw] policy_type_name
1472
+ # The name of the policy type.
1473
+ # @return [String]
1474
+ #
1475
+ # @!attribute [rw] policy_attribute_descriptions
1476
+ # The policy attributes.
1477
+ # @return [Array<Types::PolicyAttributeDescription>]
1478
+ class PolicyDescription < Struct.new(
1479
+ :policy_name,
1480
+ :policy_type_name,
1481
+ :policy_attribute_descriptions)
1482
+ include Aws::Structure
1483
+ end
1484
+
1485
+ # Information about a policy type.
1486
+ # @!attribute [rw] policy_type_name
1487
+ # The name of the policy type.
1488
+ # @return [String]
1489
+ #
1490
+ # @!attribute [rw] description
1491
+ # A description of the policy type.
1492
+ # @return [String]
1493
+ #
1494
+ # @!attribute [rw] policy_attribute_type_descriptions
1495
+ # The description of the policy attributes associated with the
1496
+ # policies defined by Elastic Load Balancing.
1497
+ # @return [Array<Types::PolicyAttributeTypeDescription>]
1498
+ class PolicyTypeDescription < Struct.new(
1499
+ :policy_type_name,
1500
+ :description,
1501
+ :policy_attribute_type_descriptions)
1502
+ include Aws::Structure
1503
+ end
1504
+
1505
+ # Contains the parameters for RegisterInstancesWithLoadBalancer.
1506
+ # @note When making an API call, pass RegisterEndPointsInput
1507
+ # data as a hash:
1508
+ #
1509
+ # {
1510
+ # load_balancer_name: "AccessPointName", # required
1511
+ # instances: [ # required
1512
+ # {
1513
+ # instance_id: "InstanceId",
1514
+ # },
1515
+ # ],
1516
+ # }
1517
+ # @!attribute [rw] load_balancer_name
1518
+ # The name of the load balancer.
1519
+ # @return [String]
1520
+ #
1521
+ # @!attribute [rw] instances
1522
+ # The IDs of the instances.
1523
+ # @return [Array<Types::Instance>]
1524
+ class RegisterEndPointsInput < Struct.new(
1525
+ :load_balancer_name,
1526
+ :instances)
1527
+ include Aws::Structure
1528
+ end
1529
+
1530
+ # Contains the output of RegisterInstancesWithLoadBalancer.
1531
+ # @!attribute [rw] instances
1532
+ # The updated list of instances for the load balancer.
1533
+ # @return [Array<Types::Instance>]
1534
+ class RegisterEndPointsOutput < Struct.new(
1535
+ :instances)
1536
+ include Aws::Structure
1537
+ end
1538
+
1539
+ # Contains the parameters for DisableAvailabilityZonesForLoadBalancer.
1540
+ # @note When making an API call, pass RemoveAvailabilityZonesInput
1541
+ # data as a hash:
1542
+ #
1543
+ # {
1544
+ # load_balancer_name: "AccessPointName", # required
1545
+ # availability_zones: ["AvailabilityZone"], # required
1546
+ # }
1547
+ # @!attribute [rw] load_balancer_name
1548
+ # The name of the load balancer.
1549
+ # @return [String]
1550
+ #
1551
+ # @!attribute [rw] availability_zones
1552
+ # The Availability Zones.
1553
+ # @return [Array<String>]
1554
+ class RemoveAvailabilityZonesInput < Struct.new(
1555
+ :load_balancer_name,
1556
+ :availability_zones)
1557
+ include Aws::Structure
1558
+ end
1559
+
1560
+ # Contains the output for DisableAvailabilityZonesForLoadBalancer.
1561
+ # @!attribute [rw] availability_zones
1562
+ # The remaining Availability Zones for the load balancer.
1563
+ # @return [Array<String>]
1564
+ class RemoveAvailabilityZonesOutput < Struct.new(
1565
+ :availability_zones)
1566
+ include Aws::Structure
1567
+ end
1568
+
1569
+ # Contains the parameters for RemoveTags.
1570
+ # @note When making an API call, pass RemoveTagsInput
1571
+ # data as a hash:
1572
+ #
1573
+ # {
1574
+ # load_balancer_names: ["AccessPointName"], # required
1575
+ # tags: [ # required
1576
+ # {
1577
+ # key: "TagKey",
1578
+ # },
1579
+ # ],
1580
+ # }
1581
+ # @!attribute [rw] load_balancer_names
1582
+ # The name of the load balancer. You can specify a maximum of one load
1583
+ # balancer name.
1584
+ # @return [Array<String>]
1585
+ #
1586
+ # @!attribute [rw] tags
1587
+ # The list of tag keys to remove.
1588
+ # @return [Array<Types::TagKeyOnly>]
1589
+ class RemoveTagsInput < Struct.new(
1590
+ :load_balancer_names,
1591
+ :tags)
1592
+ include Aws::Structure
1593
+ end
1594
+
1595
+ # Contains the output of RemoveTags.
1596
+ class RemoveTagsOutput < Aws::EmptyStructure; end
1597
+
1598
+ # Contains the parameters for SetLoadBalancerListenerSSLCertificate.
1599
+ # @note When making an API call, pass SetLoadBalancerListenerSSLCertificateInput
1600
+ # data as a hash:
1601
+ #
1602
+ # {
1603
+ # load_balancer_name: "AccessPointName", # required
1604
+ # load_balancer_port: 1, # required
1605
+ # ssl_certificate_id: "SSLCertificateId", # required
1606
+ # }
1607
+ # @!attribute [rw] load_balancer_name
1608
+ # The name of the load balancer.
1609
+ # @return [String]
1610
+ #
1611
+ # @!attribute [rw] load_balancer_port
1612
+ # The port that uses the specified SSL certificate.
1613
+ # @return [Integer]
1614
+ #
1615
+ # @!attribute [rw] ssl_certificate_id
1616
+ # The Amazon Resource Name (ARN) of the SSL certificate.
1617
+ # @return [String]
1618
+ class SetLoadBalancerListenerSSLCertificateInput < Struct.new(
1619
+ :load_balancer_name,
1620
+ :load_balancer_port,
1621
+ :ssl_certificate_id)
1622
+ include Aws::Structure
1623
+ end
1624
+
1625
+ # Contains the output of SetLoadBalancerListenerSSLCertificate.
1626
+ class SetLoadBalancerListenerSSLCertificateOutput < Aws::EmptyStructure; end
1627
+
1628
+ # Contains the parameters for SetLoadBalancerPoliciesForBackendServer.
1629
+ # @note When making an API call, pass SetLoadBalancerPoliciesForBackendServerInput
1630
+ # data as a hash:
1631
+ #
1632
+ # {
1633
+ # load_balancer_name: "AccessPointName", # required
1634
+ # instance_port: 1, # required
1635
+ # policy_names: ["PolicyName"], # required
1636
+ # }
1637
+ # @!attribute [rw] load_balancer_name
1638
+ # The name of the load balancer.
1639
+ # @return [String]
1640
+ #
1641
+ # @!attribute [rw] instance_port
1642
+ # The port number associated with the EC2 instance.
1643
+ # @return [Integer]
1644
+ #
1645
+ # @!attribute [rw] policy_names
1646
+ # The names of the policies. If the list is empty, then all current
1647
+ # polices are removed from the EC2 instance.
1648
+ # @return [Array<String>]
1649
+ class SetLoadBalancerPoliciesForBackendServerInput < Struct.new(
1650
+ :load_balancer_name,
1651
+ :instance_port,
1652
+ :policy_names)
1653
+ include Aws::Structure
1654
+ end
1655
+
1656
+ # Contains the output of SetLoadBalancerPoliciesForBackendServer.
1657
+ class SetLoadBalancerPoliciesForBackendServerOutput < Aws::EmptyStructure; end
1658
+
1659
+ # Contains the parameters for SetLoadBalancePoliciesOfListener.
1660
+ # @note When making an API call, pass SetLoadBalancerPoliciesOfListenerInput
1661
+ # data as a hash:
1662
+ #
1663
+ # {
1664
+ # load_balancer_name: "AccessPointName", # required
1665
+ # load_balancer_port: 1, # required
1666
+ # policy_names: ["PolicyName"], # required
1667
+ # }
1668
+ # @!attribute [rw] load_balancer_name
1669
+ # The name of the load balancer.
1670
+ # @return [String]
1671
+ #
1672
+ # @!attribute [rw] load_balancer_port
1673
+ # The external port of the load balancer.
1674
+ # @return [Integer]
1675
+ #
1676
+ # @!attribute [rw] policy_names
1677
+ # The names of the policies. This list must include all policies to be
1678
+ # enabled. If you omit a policy that is currently enabled, it is
1679
+ # disabled. If the list is empty, all current policies are disabled.
1680
+ # @return [Array<String>]
1681
+ class SetLoadBalancerPoliciesOfListenerInput < Struct.new(
1682
+ :load_balancer_name,
1683
+ :load_balancer_port,
1684
+ :policy_names)
1685
+ include Aws::Structure
1686
+ end
1687
+
1688
+ # Contains the output of SetLoadBalancePoliciesOfListener.
1689
+ class SetLoadBalancerPoliciesOfListenerOutput < Aws::EmptyStructure; end
1690
+
1691
+ # Information about a source security group.
1692
+ # @!attribute [rw] owner_alias
1693
+ # The owner of the security group.
1694
+ # @return [String]
1695
+ #
1696
+ # @!attribute [rw] group_name
1697
+ # The name of the security group.
1698
+ # @return [String]
1699
+ class SourceSecurityGroup < Struct.new(
1700
+ :owner_alias,
1701
+ :group_name)
1702
+ include Aws::Structure
1703
+ end
1704
+
1705
+ # Information about a tag.
1706
+ # @note When making an API call, pass Tag
1707
+ # data as a hash:
1708
+ #
1709
+ # {
1710
+ # key: "TagKey", # required
1711
+ # value: "TagValue",
1712
+ # }
1713
+ # @!attribute [rw] key
1714
+ # The key of the tag.
1715
+ # @return [String]
1716
+ #
1717
+ # @!attribute [rw] value
1718
+ # The value of the tag.
1719
+ # @return [String]
1720
+ class Tag < Struct.new(
1721
+ :key,
1722
+ :value)
1723
+ include Aws::Structure
1724
+ end
1725
+
1726
+ # The tags associated with a load balancer.
1727
+ # @!attribute [rw] load_balancer_name
1728
+ # The name of the load balancer.
1729
+ # @return [String]
1730
+ #
1731
+ # @!attribute [rw] tags
1732
+ # The tags.
1733
+ # @return [Array<Types::Tag>]
1734
+ class TagDescription < Struct.new(
1735
+ :load_balancer_name,
1736
+ :tags)
1737
+ include Aws::Structure
1738
+ end
1739
+
1740
+ # The key of a tag.
1741
+ # @note When making an API call, pass TagKeyOnly
1742
+ # data as a hash:
1743
+ #
1744
+ # {
1745
+ # key: "TagKey",
1746
+ # }
1747
+ # @!attribute [rw] key
1748
+ # The name of the key.
1749
+ # @return [String]
1750
+ class TagKeyOnly < Struct.new(
1751
+ :key)
1752
+ include Aws::Structure
1753
+ end
1754
+
1755
+ end
1756
+ end
1757
+ end