aws-sdk-elasticloadbalancingv2 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
@@ -16,7 +16,10 @@ module Aws::ElasticLoadBalancingV2
|
|
16
16
|
Actions = Shapes::ListShape.new(name: 'Actions')
|
17
17
|
AddTagsInput = Shapes::StructureShape.new(name: 'AddTagsInput')
|
18
18
|
AddTagsOutput = Shapes::StructureShape.new(name: 'AddTagsOutput')
|
19
|
+
AllocationId = Shapes::StringShape.new(name: 'AllocationId')
|
20
|
+
AllocationIdNotFoundException = Shapes::StructureShape.new(name: 'AllocationIdNotFoundException')
|
19
21
|
AvailabilityZone = Shapes::StructureShape.new(name: 'AvailabilityZone')
|
22
|
+
AvailabilityZoneNotSupportedException = Shapes::StructureShape.new(name: 'AvailabilityZoneNotSupportedException')
|
20
23
|
AvailabilityZones = Shapes::ListShape.new(name: 'AvailabilityZones')
|
21
24
|
CanonicalHostedZoneId = Shapes::StringShape.new(name: 'CanonicalHostedZoneId')
|
22
25
|
Certificate = Shapes::StructureShape.new(name: 'Certificate')
|
@@ -85,6 +88,7 @@ module Aws::ElasticLoadBalancingV2
|
|
85
88
|
InvalidSecurityGroupException = Shapes::StructureShape.new(name: 'InvalidSecurityGroupException')
|
86
89
|
InvalidSubnetException = Shapes::StructureShape.new(name: 'InvalidSubnetException')
|
87
90
|
InvalidTargetException = Shapes::StructureShape.new(name: 'InvalidTargetException')
|
91
|
+
IpAddress = Shapes::StringShape.new(name: 'IpAddress')
|
88
92
|
IpAddressType = Shapes::StringShape.new(name: 'IpAddressType')
|
89
93
|
IsDefault = Shapes::BooleanShape.new(name: 'IsDefault')
|
90
94
|
Limit = Shapes::StructureShape.new(name: 'Limit')
|
@@ -96,6 +100,8 @@ module Aws::ElasticLoadBalancingV2
|
|
96
100
|
ListenerNotFoundException = Shapes::StructureShape.new(name: 'ListenerNotFoundException')
|
97
101
|
Listeners = Shapes::ListShape.new(name: 'Listeners')
|
98
102
|
LoadBalancer = Shapes::StructureShape.new(name: 'LoadBalancer')
|
103
|
+
LoadBalancerAddress = Shapes::StructureShape.new(name: 'LoadBalancerAddress')
|
104
|
+
LoadBalancerAddresses = Shapes::ListShape.new(name: 'LoadBalancerAddresses')
|
99
105
|
LoadBalancerArn = Shapes::StringShape.new(name: 'LoadBalancerArn')
|
100
106
|
LoadBalancerArns = Shapes::ListShape.new(name: 'LoadBalancerArns')
|
101
107
|
LoadBalancerAttribute = Shapes::StructureShape.new(name: 'LoadBalancerAttribute')
|
@@ -168,6 +174,8 @@ module Aws::ElasticLoadBalancingV2
|
|
168
174
|
String = Shapes::StringShape.new(name: 'String')
|
169
175
|
StringValue = Shapes::StringShape.new(name: 'StringValue')
|
170
176
|
SubnetId = Shapes::StringShape.new(name: 'SubnetId')
|
177
|
+
SubnetMapping = Shapes::StructureShape.new(name: 'SubnetMapping')
|
178
|
+
SubnetMappings = Shapes::ListShape.new(name: 'SubnetMappings')
|
171
179
|
SubnetNotFoundException = Shapes::StructureShape.new(name: 'SubnetNotFoundException')
|
172
180
|
Subnets = Shapes::ListShape.new(name: 'Subnets')
|
173
181
|
Tag = Shapes::StructureShape.new(name: 'Tag')
|
@@ -224,6 +232,7 @@ module Aws::ElasticLoadBalancingV2
|
|
224
232
|
|
225
233
|
AvailabilityZone.add_member(:zone_name, Shapes::ShapeRef.new(shape: ZoneName, location_name: "ZoneName"))
|
226
234
|
AvailabilityZone.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, location_name: "SubnetId"))
|
235
|
+
AvailabilityZone.add_member(:load_balancer_addresses, Shapes::ShapeRef.new(shape: LoadBalancerAddresses, location_name: "LoadBalancerAddresses"))
|
227
236
|
AvailabilityZone.struct_class = Types::AvailabilityZone
|
228
237
|
|
229
238
|
AvailabilityZones.member = Shapes::ShapeRef.new(shape: AvailabilityZone)
|
@@ -251,10 +260,12 @@ module Aws::ElasticLoadBalancingV2
|
|
251
260
|
CreateListenerOutput.struct_class = Types::CreateListenerOutput
|
252
261
|
|
253
262
|
CreateLoadBalancerInput.add_member(:name, Shapes::ShapeRef.new(shape: LoadBalancerName, required: true, location_name: "Name"))
|
254
|
-
CreateLoadBalancerInput.add_member(:subnets, Shapes::ShapeRef.new(shape: Subnets,
|
263
|
+
CreateLoadBalancerInput.add_member(:subnets, Shapes::ShapeRef.new(shape: Subnets, location_name: "Subnets"))
|
264
|
+
CreateLoadBalancerInput.add_member(:subnet_mappings, Shapes::ShapeRef.new(shape: SubnetMappings, location_name: "SubnetMappings"))
|
255
265
|
CreateLoadBalancerInput.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroups, location_name: "SecurityGroups"))
|
256
266
|
CreateLoadBalancerInput.add_member(:scheme, Shapes::ShapeRef.new(shape: LoadBalancerSchemeEnum, location_name: "Scheme"))
|
257
267
|
CreateLoadBalancerInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
|
268
|
+
CreateLoadBalancerInput.add_member(:type, Shapes::ShapeRef.new(shape: LoadBalancerTypeEnum, location_name: "Type"))
|
258
269
|
CreateLoadBalancerInput.add_member(:ip_address_type, Shapes::ShapeRef.new(shape: IpAddressType, location_name: "IpAddressType"))
|
259
270
|
CreateLoadBalancerInput.struct_class = Types::CreateLoadBalancerInput
|
260
271
|
|
@@ -432,6 +443,12 @@ module Aws::ElasticLoadBalancingV2
|
|
432
443
|
LoadBalancer.add_member(:ip_address_type, Shapes::ShapeRef.new(shape: IpAddressType, location_name: "IpAddressType"))
|
433
444
|
LoadBalancer.struct_class = Types::LoadBalancer
|
434
445
|
|
446
|
+
LoadBalancerAddress.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
|
447
|
+
LoadBalancerAddress.add_member(:allocation_id, Shapes::ShapeRef.new(shape: AllocationId, location_name: "AllocationId"))
|
448
|
+
LoadBalancerAddress.struct_class = Types::LoadBalancerAddress
|
449
|
+
|
450
|
+
LoadBalancerAddresses.member = Shapes::ShapeRef.new(shape: LoadBalancerAddress)
|
451
|
+
|
435
452
|
LoadBalancerArns.member = Shapes::ShapeRef.new(shape: LoadBalancerArn)
|
436
453
|
|
437
454
|
LoadBalancerAttribute.add_member(:key, Shapes::ShapeRef.new(shape: LoadBalancerAttributeKey, location_name: "Key"))
|
@@ -559,6 +576,7 @@ module Aws::ElasticLoadBalancingV2
|
|
559
576
|
|
560
577
|
SetSubnetsInput.add_member(:load_balancer_arn, Shapes::ShapeRef.new(shape: LoadBalancerArn, required: true, location_name: "LoadBalancerArn"))
|
561
578
|
SetSubnetsInput.add_member(:subnets, Shapes::ShapeRef.new(shape: Subnets, required: true, location_name: "Subnets"))
|
579
|
+
SetSubnetsInput.add_member(:subnet_mappings, Shapes::ShapeRef.new(shape: SubnetMappings, location_name: "SubnetMappings"))
|
562
580
|
SetSubnetsInput.struct_class = Types::SetSubnetsInput
|
563
581
|
|
564
582
|
SetSubnetsOutput.add_member(:availability_zones, Shapes::ShapeRef.new(shape: AvailabilityZones, location_name: "AvailabilityZones"))
|
@@ -575,6 +593,12 @@ module Aws::ElasticLoadBalancingV2
|
|
575
593
|
|
576
594
|
SslProtocols.member = Shapes::ShapeRef.new(shape: SslProtocol)
|
577
595
|
|
596
|
+
SubnetMapping.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, location_name: "SubnetId"))
|
597
|
+
SubnetMapping.add_member(:allocation_id, Shapes::ShapeRef.new(shape: AllocationId, location_name: "AllocationId"))
|
598
|
+
SubnetMapping.struct_class = Types::SubnetMapping
|
599
|
+
|
600
|
+
SubnetMappings.member = Shapes::ShapeRef.new(shape: SubnetMapping)
|
601
|
+
|
578
602
|
Subnets.member = Shapes::ShapeRef.new(shape: SubnetId)
|
579
603
|
|
580
604
|
Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
|
@@ -683,6 +707,7 @@ module Aws::ElasticLoadBalancingV2
|
|
683
707
|
o.errors << Shapes::ShapeRef.new(shape: CertificateNotFoundException)
|
684
708
|
o.errors << Shapes::ShapeRef.new(shape: UnsupportedProtocolException)
|
685
709
|
o.errors << Shapes::ShapeRef.new(shape: TooManyRegistrationsForTargetIdException)
|
710
|
+
o.errors << Shapes::ShapeRef.new(shape: TooManyTargetsException)
|
686
711
|
end)
|
687
712
|
|
688
713
|
api.add_operation(:create_load_balancer, Seahorse::Model::Operation.new.tap do |o|
|
@@ -700,6 +725,9 @@ module Aws::ElasticLoadBalancingV2
|
|
700
725
|
o.errors << Shapes::ShapeRef.new(shape: InvalidSchemeException)
|
701
726
|
o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
|
702
727
|
o.errors << Shapes::ShapeRef.new(shape: DuplicateTagKeysException)
|
728
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceInUseException)
|
729
|
+
o.errors << Shapes::ShapeRef.new(shape: AllocationIdNotFoundException)
|
730
|
+
o.errors << Shapes::ShapeRef.new(shape: AvailabilityZoneNotSupportedException)
|
703
731
|
end)
|
704
732
|
|
705
733
|
api.add_operation(:create_rule, Seahorse::Model::Operation.new.tap do |o|
|
@@ -712,10 +740,12 @@ module Aws::ElasticLoadBalancingV2
|
|
712
740
|
o.errors << Shapes::ShapeRef.new(shape: TooManyTargetGroupsException)
|
713
741
|
o.errors << Shapes::ShapeRef.new(shape: TooManyRulesException)
|
714
742
|
o.errors << Shapes::ShapeRef.new(shape: TargetGroupAssociationLimitException)
|
743
|
+
o.errors << Shapes::ShapeRef.new(shape: IncompatibleProtocolsException)
|
715
744
|
o.errors << Shapes::ShapeRef.new(shape: ListenerNotFoundException)
|
716
745
|
o.errors << Shapes::ShapeRef.new(shape: TargetGroupNotFoundException)
|
717
746
|
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
718
747
|
o.errors << Shapes::ShapeRef.new(shape: TooManyRegistrationsForTargetIdException)
|
748
|
+
o.errors << Shapes::ShapeRef.new(shape: TooManyTargetsException)
|
719
749
|
end)
|
720
750
|
|
721
751
|
api.add_operation(:create_target_group, Seahorse::Model::Operation.new.tap do |o|
|
@@ -726,6 +756,7 @@ module Aws::ElasticLoadBalancingV2
|
|
726
756
|
o.output = Shapes::ShapeRef.new(shape: CreateTargetGroupOutput)
|
727
757
|
o.errors << Shapes::ShapeRef.new(shape: DuplicateTargetGroupNameException)
|
728
758
|
o.errors << Shapes::ShapeRef.new(shape: TooManyTargetGroupsException)
|
759
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
729
760
|
end)
|
730
761
|
|
731
762
|
api.add_operation(:delete_listener, Seahorse::Model::Operation.new.tap do |o|
|
@@ -906,6 +937,7 @@ module Aws::ElasticLoadBalancingV2
|
|
906
937
|
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
907
938
|
o.errors << Shapes::ShapeRef.new(shape: UnsupportedProtocolException)
|
908
939
|
o.errors << Shapes::ShapeRef.new(shape: TooManyRegistrationsForTargetIdException)
|
940
|
+
o.errors << Shapes::ShapeRef.new(shape: TooManyTargetsException)
|
909
941
|
end)
|
910
942
|
|
911
943
|
api.add_operation(:modify_load_balancer_attributes, Seahorse::Model::Operation.new.tap do |o|
|
@@ -925,6 +957,7 @@ module Aws::ElasticLoadBalancingV2
|
|
925
957
|
o.input = Shapes::ShapeRef.new(shape: ModifyRuleInput)
|
926
958
|
o.output = Shapes::ShapeRef.new(shape: ModifyRuleOutput)
|
927
959
|
o.errors << Shapes::ShapeRef.new(shape: TargetGroupAssociationLimitException)
|
960
|
+
o.errors << Shapes::ShapeRef.new(shape: IncompatibleProtocolsException)
|
928
961
|
o.errors << Shapes::ShapeRef.new(shape: RuleNotFoundException)
|
929
962
|
o.errors << Shapes::ShapeRef.new(shape: OperationNotPermittedException)
|
930
963
|
o.errors << Shapes::ShapeRef.new(shape: TooManyRegistrationsForTargetIdException)
|
@@ -939,6 +972,7 @@ module Aws::ElasticLoadBalancingV2
|
|
939
972
|
o.input = Shapes::ShapeRef.new(shape: ModifyTargetGroupInput)
|
940
973
|
o.output = Shapes::ShapeRef.new(shape: ModifyTargetGroupOutput)
|
941
974
|
o.errors << Shapes::ShapeRef.new(shape: TargetGroupNotFoundException)
|
975
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
942
976
|
end)
|
943
977
|
|
944
978
|
api.add_operation(:modify_target_group_attributes, Seahorse::Model::Operation.new.tap do |o|
|
@@ -948,6 +982,7 @@ module Aws::ElasticLoadBalancingV2
|
|
948
982
|
o.input = Shapes::ShapeRef.new(shape: ModifyTargetGroupAttributesInput)
|
949
983
|
o.output = Shapes::ShapeRef.new(shape: ModifyTargetGroupAttributesOutput)
|
950
984
|
o.errors << Shapes::ShapeRef.new(shape: TargetGroupNotFoundException)
|
985
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
951
986
|
end)
|
952
987
|
|
953
988
|
api.add_operation(:register_targets, Seahorse::Model::Operation.new.tap do |o|
|
@@ -1018,6 +1053,8 @@ module Aws::ElasticLoadBalancingV2
|
|
1018
1053
|
o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
|
1019
1054
|
o.errors << Shapes::ShapeRef.new(shape: SubnetNotFoundException)
|
1020
1055
|
o.errors << Shapes::ShapeRef.new(shape: InvalidSubnetException)
|
1056
|
+
o.errors << Shapes::ShapeRef.new(shape: AllocationIdNotFoundException)
|
1057
|
+
o.errors << Shapes::ShapeRef.new(shape: AvailabilityZoneNotSupportedException)
|
1021
1058
|
end)
|
1022
1059
|
end
|
1023
1060
|
|
@@ -77,11 +77,16 @@ module Aws::ElasticLoadBalancingV2
|
|
77
77
|
# The ID of the subnet.
|
78
78
|
# @return [String]
|
79
79
|
#
|
80
|
+
# @!attribute [rw] load_balancer_addresses
|
81
|
+
# \[Network Load Balancers\] The static IP address.
|
82
|
+
# @return [Array<Types::LoadBalancerAddress>]
|
83
|
+
#
|
80
84
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AvailabilityZone AWS API Documentation
|
81
85
|
#
|
82
86
|
class AvailabilityZone < Struct.new(
|
83
87
|
:zone_name,
|
84
|
-
:subnet_id
|
88
|
+
:subnet_id,
|
89
|
+
:load_balancer_addresses)
|
85
90
|
include Aws::Structure
|
86
91
|
end
|
87
92
|
|
@@ -129,7 +134,7 @@ module Aws::ElasticLoadBalancingV2
|
|
129
134
|
#
|
130
135
|
# {
|
131
136
|
# load_balancer_arn: "LoadBalancerArn", # required
|
132
|
-
# protocol: "HTTP", # required, accepts HTTP, HTTPS
|
137
|
+
# protocol: "HTTP", # required, accepts HTTP, HTTPS, TCP
|
133
138
|
# port: 1, # required
|
134
139
|
# ssl_policy: "SslPolicyName",
|
135
140
|
# certificates: [
|
@@ -150,7 +155,9 @@ module Aws::ElasticLoadBalancingV2
|
|
150
155
|
# @return [String]
|
151
156
|
#
|
152
157
|
# @!attribute [rw] protocol
|
153
|
-
# The protocol for connections from clients to the load balancer.
|
158
|
+
# The protocol for connections from clients to the load balancer. For
|
159
|
+
# Application Load Balancers, the supported protocols are HTTP and
|
160
|
+
# HTTPS. For Network Load Balancers, the supported protocol is TCP.
|
154
161
|
# @return [String]
|
155
162
|
#
|
156
163
|
# @!attribute [rw] port
|
@@ -158,17 +165,21 @@ module Aws::ElasticLoadBalancingV2
|
|
158
165
|
# @return [Integer]
|
159
166
|
#
|
160
167
|
# @!attribute [rw] ssl_policy
|
161
|
-
# The security policy that defines which ciphers
|
162
|
-
# supported. The default is the current predefined
|
168
|
+
# \[HTTPS listeners\] The security policy that defines which ciphers
|
169
|
+
# and protocols are supported. The default is the current predefined
|
170
|
+
# security policy.
|
163
171
|
# @return [String]
|
164
172
|
#
|
165
173
|
# @!attribute [rw] certificates
|
166
|
-
# The SSL server certificate. You must provide
|
167
|
-
#
|
174
|
+
# \[HTTPS listeners\] The SSL server certificate. You must provide
|
175
|
+
# exactly one certificate.
|
168
176
|
# @return [Array<Types::Certificate>]
|
169
177
|
#
|
170
178
|
# @!attribute [rw] default_actions
|
171
|
-
# The default action for the listener.
|
179
|
+
# The default action for the listener. For Application Load Balancers,
|
180
|
+
# the protocol of the specified target group must be HTTP or HTTPS.
|
181
|
+
# For Network Load Balancers, the protocol of the specified target
|
182
|
+
# group must be TCP.
|
172
183
|
# @return [Array<Types::Action>]
|
173
184
|
#
|
174
185
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerInput AWS API Documentation
|
@@ -199,7 +210,13 @@ module Aws::ElasticLoadBalancingV2
|
|
199
210
|
#
|
200
211
|
# {
|
201
212
|
# name: "LoadBalancerName", # required
|
202
|
-
# subnets: ["SubnetId"],
|
213
|
+
# subnets: ["SubnetId"],
|
214
|
+
# subnet_mappings: [
|
215
|
+
# {
|
216
|
+
# subnet_id: "SubnetId",
|
217
|
+
# allocation_id: "AllocationId",
|
218
|
+
# },
|
219
|
+
# ],
|
203
220
|
# security_groups: ["SecurityGroupId"],
|
204
221
|
# scheme: "internet-facing", # accepts internet-facing, internal
|
205
222
|
# tags: [
|
@@ -208,6 +225,7 @@ module Aws::ElasticLoadBalancingV2
|
|
208
225
|
# value: "TagValue",
|
209
226
|
# },
|
210
227
|
# ],
|
228
|
+
# type: "application", # accepts application, network
|
211
229
|
# ip_address_type: "ipv4", # accepts ipv4, dualstack
|
212
230
|
# }
|
213
231
|
#
|
@@ -222,11 +240,27 @@ module Aws::ElasticLoadBalancingV2
|
|
222
240
|
# @!attribute [rw] subnets
|
223
241
|
# The IDs of the subnets to attach to the load balancer. You can
|
224
242
|
# specify only one subnet per Availability Zone. You must specify
|
225
|
-
# subnets
|
243
|
+
# either subnets or subnet mappings.
|
244
|
+
#
|
245
|
+
# \[Application Load Balancers\] You must specify subnets from at
|
246
|
+
# least two Availability Zones.
|
226
247
|
# @return [Array<String>]
|
227
248
|
#
|
249
|
+
# @!attribute [rw] subnet_mappings
|
250
|
+
# The IDs of the subnets to attach to the load balancer. You can
|
251
|
+
# specify only one subnet per Availability Zone. You must specify
|
252
|
+
# either subnets or subnet mappings.
|
253
|
+
#
|
254
|
+
# \[Network Load Balancers\] You can specify one Elastic IP address
|
255
|
+
# per subnet.
|
256
|
+
#
|
257
|
+
# \[Application Load Balancers\] You cannot specify Elastic IP
|
258
|
+
# addresses for your subnets.
|
259
|
+
# @return [Array<Types::SubnetMapping>]
|
260
|
+
#
|
228
261
|
# @!attribute [rw] security_groups
|
229
|
-
# The IDs of the security groups to
|
262
|
+
# \[Application Load Balancers\] The IDs of the security groups to
|
263
|
+
# assign to the load balancer.
|
230
264
|
# @return [Array<String>]
|
231
265
|
#
|
232
266
|
# @!attribute [rw] scheme
|
@@ -249,11 +283,15 @@ module Aws::ElasticLoadBalancingV2
|
|
249
283
|
# One or more tags to assign to the load balancer.
|
250
284
|
# @return [Array<Types::Tag>]
|
251
285
|
#
|
286
|
+
# @!attribute [rw] type
|
287
|
+
# The type of load balancer to create. The default is `application`.
|
288
|
+
# @return [String]
|
289
|
+
#
|
252
290
|
# @!attribute [rw] ip_address_type
|
253
|
-
# The type of IP addresses used by the
|
254
|
-
# The possible values are `ipv4` (for
|
255
|
-
# (for IPv4 and IPv6 addresses).
|
256
|
-
# `ipv4`.
|
291
|
+
# \[Application Load Balancers\] The type of IP addresses used by the
|
292
|
+
# subnets for your load balancer. The possible values are `ipv4` (for
|
293
|
+
# IPv4 addresses) and `dualstack` (for IPv4 and IPv6 addresses).
|
294
|
+
# Internal load balancers must use `ipv4`.
|
257
295
|
# @return [String]
|
258
296
|
#
|
259
297
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerInput AWS API Documentation
|
@@ -261,9 +299,11 @@ module Aws::ElasticLoadBalancingV2
|
|
261
299
|
class CreateLoadBalancerInput < Struct.new(
|
262
300
|
:name,
|
263
301
|
:subnets,
|
302
|
+
:subnet_mappings,
|
264
303
|
:security_groups,
|
265
304
|
:scheme,
|
266
305
|
:tags,
|
306
|
+
:type,
|
267
307
|
:ip_address_type)
|
268
308
|
include Aws::Structure
|
269
309
|
end
|
@@ -304,7 +344,7 @@ module Aws::ElasticLoadBalancingV2
|
|
304
344
|
# @return [String]
|
305
345
|
#
|
306
346
|
# @!attribute [rw] conditions
|
307
|
-
#
|
347
|
+
# The conditions. Each condition specifies a field name and a single
|
308
348
|
# value.
|
309
349
|
#
|
310
350
|
# If the field name is `host-header`, you can specify a single host
|
@@ -374,10 +414,10 @@ module Aws::ElasticLoadBalancingV2
|
|
374
414
|
#
|
375
415
|
# {
|
376
416
|
# name: "TargetGroupName", # required
|
377
|
-
# protocol: "HTTP", # required, accepts HTTP, HTTPS
|
417
|
+
# protocol: "HTTP", # required, accepts HTTP, HTTPS, TCP
|
378
418
|
# port: 1, # required
|
379
419
|
# vpc_id: "VpcId", # required
|
380
|
-
# health_check_protocol: "HTTP", # accepts HTTP, HTTPS
|
420
|
+
# health_check_protocol: "HTTP", # accepts HTTP, HTTPS, TCP
|
381
421
|
# health_check_port: "HealthCheckPort",
|
382
422
|
# health_check_path: "Path",
|
383
423
|
# health_check_interval_seconds: 1,
|
@@ -399,7 +439,9 @@ module Aws::ElasticLoadBalancingV2
|
|
399
439
|
# @return [String]
|
400
440
|
#
|
401
441
|
# @!attribute [rw] protocol
|
402
|
-
# The protocol to use for routing traffic to the targets.
|
442
|
+
# The protocol to use for routing traffic to the targets. For
|
443
|
+
# Application Load Balancers, the supported protocols are HTTP and
|
444
|
+
# HTTPS. For Network Load Balancers, the supported protocol is TCP.
|
403
445
|
# @return [String]
|
404
446
|
#
|
405
447
|
# @!attribute [rw] port
|
@@ -413,43 +455,54 @@ module Aws::ElasticLoadBalancingV2
|
|
413
455
|
#
|
414
456
|
# @!attribute [rw] health_check_protocol
|
415
457
|
# The protocol the load balancer uses when performing health checks on
|
416
|
-
# targets. The
|
458
|
+
# targets. The TCP protocol is supported only if the protocol of the
|
459
|
+
# target group is TCP. For Application Load Balancers, the default is
|
460
|
+
# HTTP. For Network Load Balancers, the default is TCP.
|
417
461
|
# @return [String]
|
418
462
|
#
|
419
463
|
# @!attribute [rw] health_check_port
|
420
464
|
# The port the load balancer uses when performing health checks on
|
421
|
-
# targets. The default is `traffic-port`, which
|
422
|
-
#
|
465
|
+
# targets. The default is `traffic-port`, which is the port on which
|
466
|
+
# each target receives traffic from the load balancer.
|
423
467
|
# @return [String]
|
424
468
|
#
|
425
469
|
# @!attribute [rw] health_check_path
|
426
|
-
# The ping path that is the destination
|
427
|
-
# checks. The default is /.
|
470
|
+
# \[HTTP/HTTPS health checks\] The ping path that is the destination
|
471
|
+
# on the targets for health checks. The default is /.
|
428
472
|
# @return [String]
|
429
473
|
#
|
430
474
|
# @!attribute [rw] health_check_interval_seconds
|
431
475
|
# The approximate amount of time, in seconds, between health checks of
|
432
|
-
# an individual target.
|
476
|
+
# an individual target. For Application Load Balancers, the range is 5
|
477
|
+
# to 300 seconds. For Network Load Balancers, the supported values are
|
478
|
+
# 10 or 30 seconds. The default is 30 seconds.
|
433
479
|
# @return [Integer]
|
434
480
|
#
|
435
481
|
# @!attribute [rw] health_check_timeout_seconds
|
436
482
|
# The amount of time, in seconds, during which no response from a
|
437
|
-
# target means a failed health check.
|
483
|
+
# target means a failed health check. For Application Load Balancers,
|
484
|
+
# the range is 2 to 60 seconds and the default is 5 seconds. For
|
485
|
+
# Network Load Balancers, this is 10 seconds for TCP and HTTPS health
|
486
|
+
# checks and 6 seconds for HTTP health checks.
|
438
487
|
# @return [Integer]
|
439
488
|
#
|
440
489
|
# @!attribute [rw] healthy_threshold_count
|
441
490
|
# The number of consecutive health checks successes required before
|
442
|
-
# considering an unhealthy target healthy.
|
491
|
+
# considering an unhealthy target healthy. For Application Load
|
492
|
+
# Balancers, the default is 5. For Network Load Balancers, the default
|
493
|
+
# is 3.
|
443
494
|
# @return [Integer]
|
444
495
|
#
|
445
496
|
# @!attribute [rw] unhealthy_threshold_count
|
446
497
|
# The number of consecutive health check failures required before
|
447
|
-
# considering a target unhealthy.
|
498
|
+
# considering a target unhealthy. For Application Load Balancers, the
|
499
|
+
# default is 2. For Network Load Balancers, this value must be the
|
500
|
+
# same as the healthy threshold count.
|
448
501
|
# @return [Integer]
|
449
502
|
#
|
450
503
|
# @!attribute [rw] matcher
|
451
|
-
# The HTTP codes to use when checking for
|
452
|
-
#
|
504
|
+
# \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for
|
505
|
+
# a successful response from a target.
|
453
506
|
# @return [Types::Matcher]
|
454
507
|
#
|
455
508
|
# @!attribute [rw] target_type
|
@@ -1071,6 +1124,10 @@ module Aws::ElasticLoadBalancingV2
|
|
1071
1124
|
#
|
1072
1125
|
# * listeners-per-application-load-balancer
|
1073
1126
|
#
|
1127
|
+
# * listeners-per-network-load-balancer
|
1128
|
+
#
|
1129
|
+
# * network-load-balancers
|
1130
|
+
#
|
1074
1131
|
# * rules-per-application-load-balancer
|
1075
1132
|
#
|
1076
1133
|
# * target-groups
|
@@ -1216,6 +1273,25 @@ module Aws::ElasticLoadBalancingV2
|
|
1216
1273
|
include Aws::Structure
|
1217
1274
|
end
|
1218
1275
|
|
1276
|
+
# Information about a static IP address for a load balancer.
|
1277
|
+
#
|
1278
|
+
# @!attribute [rw] ip_address
|
1279
|
+
# The static IP address.
|
1280
|
+
# @return [String]
|
1281
|
+
#
|
1282
|
+
# @!attribute [rw] allocation_id
|
1283
|
+
# \[Network Load Balancers\] The allocation ID of the Elastic IP
|
1284
|
+
# address.
|
1285
|
+
# @return [String]
|
1286
|
+
#
|
1287
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/LoadBalancerAddress AWS API Documentation
|
1288
|
+
#
|
1289
|
+
class LoadBalancerAddress < Struct.new(
|
1290
|
+
:ip_address,
|
1291
|
+
:allocation_id)
|
1292
|
+
include Aws::Structure
|
1293
|
+
end
|
1294
|
+
|
1219
1295
|
# Information about a load balancer attribute.
|
1220
1296
|
#
|
1221
1297
|
# @note When making an API call, you may pass LoadBalancerAttribute
|
@@ -1229,24 +1305,26 @@ module Aws::ElasticLoadBalancingV2
|
|
1229
1305
|
# @!attribute [rw] key
|
1230
1306
|
# The name of the attribute.
|
1231
1307
|
#
|
1232
|
-
# * `access_logs.s3.enabled` -
|
1233
|
-
# Amazon S3 are enabled. The
|
1308
|
+
# * `access_logs.s3.enabled` - \[Application Load Balancers\]
|
1309
|
+
# Indicates whether access logs stored in Amazon S3 are enabled. The
|
1310
|
+
# value is `true` or `false`.
|
1234
1311
|
#
|
1235
|
-
# * `access_logs.s3.bucket` -
|
1236
|
-
#
|
1237
|
-
# enabled. The bucket must exist in
|
1238
|
-
# balancer and have a bucket policy that
|
1239
|
-
# Balancing permission to write to the bucket.
|
1312
|
+
# * `access_logs.s3.bucket` - \[Application Load Balancers\] The name
|
1313
|
+
# of the S3 bucket for the access logs. This attribute is required
|
1314
|
+
# if access logs in Amazon S3 are enabled. The bucket must exist in
|
1315
|
+
# the same region as the load balancer and have a bucket policy that
|
1316
|
+
# grants Elastic Load Balancing permission to write to the bucket.
|
1240
1317
|
#
|
1241
|
-
# * `access_logs.s3.prefix` -
|
1242
|
-
# bucket. If you don't specify a
|
1243
|
-
# in the root of the bucket.
|
1318
|
+
# * `access_logs.s3.prefix` - \[Application Load Balancers\] The
|
1319
|
+
# prefix for the location in the S3 bucket. If you don't specify a
|
1320
|
+
# prefix, the access logs are stored in the root of the bucket.
|
1244
1321
|
#
|
1245
1322
|
# * `deletion_protection.enabled` - Indicates whether deletion
|
1246
1323
|
# protection is enabled. The value is `true` or `false`.
|
1247
1324
|
#
|
1248
|
-
# * `idle_timeout.timeout_seconds` -
|
1249
|
-
# seconds. The valid range is 1-
|
1325
|
+
# * `idle_timeout.timeout_seconds` - \[Application Load Balancers\]
|
1326
|
+
# The idle timeout value, in seconds. The valid range is 1-4000. The
|
1327
|
+
# default is 60 seconds.
|
1250
1328
|
# @return [String]
|
1251
1329
|
#
|
1252
1330
|
# @!attribute [rw] value
|
@@ -1293,9 +1371,14 @@ module Aws::ElasticLoadBalancingV2
|
|
1293
1371
|
# }
|
1294
1372
|
#
|
1295
1373
|
# @!attribute [rw] http_code
|
1296
|
-
# The HTTP codes.
|
1297
|
-
#
|
1298
|
-
#
|
1374
|
+
# The HTTP codes.
|
1375
|
+
#
|
1376
|
+
# For Application Load Balancers, you can specify values between 200
|
1377
|
+
# and 499, and the default value is 200. You can specify multiple
|
1378
|
+
# values (for example, "200,202") or a range of values (for example,
|
1379
|
+
# "200-299").
|
1380
|
+
#
|
1381
|
+
# For Network Load Balancers, this is 200 to 399.
|
1299
1382
|
# @return [String]
|
1300
1383
|
#
|
1301
1384
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Matcher AWS API Documentation
|
@@ -1311,7 +1394,7 @@ module Aws::ElasticLoadBalancingV2
|
|
1311
1394
|
# {
|
1312
1395
|
# listener_arn: "ListenerArn", # required
|
1313
1396
|
# port: 1,
|
1314
|
-
# protocol: "HTTP", # accepts HTTP, HTTPS
|
1397
|
+
# protocol: "HTTP", # accepts HTTP, HTTPS, TCP
|
1315
1398
|
# ssl_policy: "SslPolicyName",
|
1316
1399
|
# certificates: [
|
1317
1400
|
# {
|
@@ -1336,6 +1419,8 @@ module Aws::ElasticLoadBalancingV2
|
|
1336
1419
|
#
|
1337
1420
|
# @!attribute [rw] protocol
|
1338
1421
|
# The protocol for connections from clients to the load balancer.
|
1422
|
+
# Application Load Balancers support HTTP and HTTPS and Network Load
|
1423
|
+
# Balancers support TCP.
|
1339
1424
|
# @return [String]
|
1340
1425
|
#
|
1341
1426
|
# @!attribute [rw] ssl_policy
|
@@ -1353,7 +1438,9 @@ module Aws::ElasticLoadBalancingV2
|
|
1353
1438
|
# @return [Array<Types::Certificate>]
|
1354
1439
|
#
|
1355
1440
|
# @!attribute [rw] default_actions
|
1356
|
-
# The default
|
1441
|
+
# The default action. For Application Load Balancers, the protocol of
|
1442
|
+
# the specified target group must be HTTP or HTTPS. For Network Load
|
1443
|
+
# Balancers, the protocol of the specified target group must be TCP.
|
1357
1444
|
# @return [Array<Types::Action>]
|
1358
1445
|
#
|
1359
1446
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerInput AWS API Documentation
|
@@ -1447,7 +1534,7 @@ module Aws::ElasticLoadBalancingV2
|
|
1447
1534
|
# @return [Array<Types::RuleCondition>]
|
1448
1535
|
#
|
1449
1536
|
# @!attribute [rw] actions
|
1450
|
-
# The actions.
|
1537
|
+
# The actions. The target group must use the HTTP or HTTPS protocol.
|
1451
1538
|
# @return [Array<Types::Action>]
|
1452
1539
|
#
|
1453
1540
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleInput AWS API Documentation
|
@@ -1515,7 +1602,7 @@ module Aws::ElasticLoadBalancingV2
|
|
1515
1602
|
#
|
1516
1603
|
# {
|
1517
1604
|
# target_group_arn: "TargetGroupArn", # required
|
1518
|
-
# health_check_protocol: "HTTP", # accepts HTTP, HTTPS
|
1605
|
+
# health_check_protocol: "HTTP", # accepts HTTP, HTTPS, TCP
|
1519
1606
|
# health_check_port: "HealthCheckPort",
|
1520
1607
|
# health_check_path: "Path",
|
1521
1608
|
# health_check_interval_seconds: 1,
|
@@ -1532,25 +1619,31 @@ module Aws::ElasticLoadBalancingV2
|
|
1532
1619
|
# @return [String]
|
1533
1620
|
#
|
1534
1621
|
# @!attribute [rw] health_check_protocol
|
1535
|
-
# The protocol
|
1622
|
+
# The protocol the load balancer uses when performing health checks on
|
1623
|
+
# targets. The TCP protocol is supported only if the protocol of the
|
1624
|
+
# target group is TCP.
|
1536
1625
|
# @return [String]
|
1537
1626
|
#
|
1538
1627
|
# @!attribute [rw] health_check_port
|
1539
|
-
# The port
|
1628
|
+
# The port the load balancer uses when performing health checks on
|
1629
|
+
# targets.
|
1540
1630
|
# @return [String]
|
1541
1631
|
#
|
1542
1632
|
# @!attribute [rw] health_check_path
|
1543
|
-
# The ping path that is the destination
|
1633
|
+
# \[HTTP/HTTPS health checks\] The ping path that is the destination
|
1634
|
+
# for the health check request.
|
1544
1635
|
# @return [String]
|
1545
1636
|
#
|
1546
1637
|
# @!attribute [rw] health_check_interval_seconds
|
1547
1638
|
# The approximate amount of time, in seconds, between health checks of
|
1548
|
-
# an individual target.
|
1639
|
+
# an individual target. For Application Load Balancers, the range is 5
|
1640
|
+
# to 300 seconds. For Network Load Balancers, the supported values are
|
1641
|
+
# 10 or 30 seconds.
|
1549
1642
|
# @return [Integer]
|
1550
1643
|
#
|
1551
1644
|
# @!attribute [rw] health_check_timeout_seconds
|
1552
|
-
# The amount of time, in seconds, during
|
1553
|
-
# failed health check.
|
1645
|
+
# \[HTTP/HTTPS health checks\] The amount of time, in seconds, during
|
1646
|
+
# which no response means a failed health check.
|
1554
1647
|
# @return [Integer]
|
1555
1648
|
#
|
1556
1649
|
# @!attribute [rw] healthy_threshold_count
|
@@ -1560,12 +1653,13 @@ module Aws::ElasticLoadBalancingV2
|
|
1560
1653
|
#
|
1561
1654
|
# @!attribute [rw] unhealthy_threshold_count
|
1562
1655
|
# The number of consecutive health check failures required before
|
1563
|
-
# considering the target unhealthy.
|
1656
|
+
# considering the target unhealthy. For Network Load Balancers, this
|
1657
|
+
# value must be the same as the healthy threshold count.
|
1564
1658
|
# @return [Integer]
|
1565
1659
|
#
|
1566
1660
|
# @!attribute [rw] matcher
|
1567
|
-
# The HTTP codes to use when checking for
|
1568
|
-
# target.
|
1661
|
+
# \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for
|
1662
|
+
# a successful response from a target.
|
1569
1663
|
# @return [Types::Matcher]
|
1570
1664
|
#
|
1571
1665
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupInput AWS API Documentation
|
@@ -1887,6 +1981,12 @@ module Aws::ElasticLoadBalancingV2
|
|
1887
1981
|
# {
|
1888
1982
|
# load_balancer_arn: "LoadBalancerArn", # required
|
1889
1983
|
# subnets: ["SubnetId"], # required
|
1984
|
+
# subnet_mappings: [
|
1985
|
+
# {
|
1986
|
+
# subnet_id: "SubnetId",
|
1987
|
+
# allocation_id: "AllocationId",
|
1988
|
+
# },
|
1989
|
+
# ],
|
1890
1990
|
# }
|
1891
1991
|
#
|
1892
1992
|
# @!attribute [rw] load_balancer_arn
|
@@ -1894,15 +1994,26 @@ module Aws::ElasticLoadBalancingV2
|
|
1894
1994
|
# @return [String]
|
1895
1995
|
#
|
1896
1996
|
# @!attribute [rw] subnets
|
1897
|
-
# The IDs of the subnets. You must specify at least two
|
1898
|
-
# can
|
1997
|
+
# The IDs of the subnets. You must specify subnets from at least two
|
1998
|
+
# Availability Zones. You can specify only one subnet per Availability
|
1999
|
+
# Zone. You must specify either subnets or subnet mappings.
|
1899
2000
|
# @return [Array<String>]
|
1900
2001
|
#
|
2002
|
+
# @!attribute [rw] subnet_mappings
|
2003
|
+
# The IDs of the subnets. You must specify subnets from at least two
|
2004
|
+
# Availability Zones. You can specify only one subnet per Availability
|
2005
|
+
# Zone. You must specify either subnets or subnet mappings.
|
2006
|
+
#
|
2007
|
+
# The load balancer is allocated one static IP address per subnet. You
|
2008
|
+
# cannot specify your own Elastic IP addresses.
|
2009
|
+
# @return [Array<Types::SubnetMapping>]
|
2010
|
+
#
|
1901
2011
|
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsInput AWS API Documentation
|
1902
2012
|
#
|
1903
2013
|
class SetSubnetsInput < Struct.new(
|
1904
2014
|
:load_balancer_arn,
|
1905
|
-
:subnets
|
2015
|
+
:subnets,
|
2016
|
+
:subnet_mappings)
|
1906
2017
|
include Aws::Structure
|
1907
2018
|
end
|
1908
2019
|
|
@@ -1940,6 +2051,33 @@ module Aws::ElasticLoadBalancingV2
|
|
1940
2051
|
include Aws::Structure
|
1941
2052
|
end
|
1942
2053
|
|
2054
|
+
# Information about a subnet mapping.
|
2055
|
+
#
|
2056
|
+
# @note When making an API call, you may pass SubnetMapping
|
2057
|
+
# data as a hash:
|
2058
|
+
#
|
2059
|
+
# {
|
2060
|
+
# subnet_id: "SubnetId",
|
2061
|
+
# allocation_id: "AllocationId",
|
2062
|
+
# }
|
2063
|
+
#
|
2064
|
+
# @!attribute [rw] subnet_id
|
2065
|
+
# The ID of the subnet.
|
2066
|
+
# @return [String]
|
2067
|
+
#
|
2068
|
+
# @!attribute [rw] allocation_id
|
2069
|
+
# \[Network Load Balancers\] The allocation ID of the Elastic IP
|
2070
|
+
# address.
|
2071
|
+
# @return [String]
|
2072
|
+
#
|
2073
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SubnetMapping AWS API Documentation
|
2074
|
+
#
|
2075
|
+
class SubnetMapping < Struct.new(
|
2076
|
+
:subnet_id,
|
2077
|
+
:allocation_id)
|
2078
|
+
include Aws::Structure
|
2079
|
+
end
|
2080
|
+
|
1943
2081
|
# Information about a tag.
|
1944
2082
|
#
|
1945
2083
|
# @note When making an API call, you may pass Tag
|
@@ -2137,18 +2275,19 @@ module Aws::ElasticLoadBalancingV2
|
|
2137
2275
|
# deregistering target from `draining` to `unused`. The range is
|
2138
2276
|
# 0-3600 seconds. The default value is 300 seconds.
|
2139
2277
|
#
|
2140
|
-
# * `stickiness.enabled` -
|
2141
|
-
# enabled. The value is `true` or
|
2278
|
+
# * `stickiness.enabled` - \[Application Load Balancers\] Indicates
|
2279
|
+
# whether sticky sessions are enabled. The value is `true` or
|
2280
|
+
# `false`.
|
2142
2281
|
#
|
2143
|
-
# * `stickiness.type` - The type of
|
2144
|
-
# value is `lb_cookie`.
|
2282
|
+
# * `stickiness.type` - \[Application Load Balancers\] The type of
|
2283
|
+
# sticky sessions. The possible value is `lb_cookie`.
|
2145
2284
|
#
|
2146
|
-
# * `stickiness.lb_cookie.duration_seconds` -
|
2147
|
-
# seconds, during which requests
|
2148
|
-
# the same target. After this time
|
2149
|
-
# balancer-generated cookie is considered
|
2150
|
-
# second to 1 week (604800 seconds). The
|
2151
|
-
# (86400 seconds).
|
2285
|
+
# * `stickiness.lb_cookie.duration_seconds` - \[Application Load
|
2286
|
+
# Balancers\] The time period, in seconds, during which requests
|
2287
|
+
# from a client should be routed to the same target. After this time
|
2288
|
+
# period expires, the load balancer-generated cookie is considered
|
2289
|
+
# stale. The range is 1 second to 1 week (604800 seconds). The
|
2290
|
+
# default value is 1 day (86400 seconds).
|
2152
2291
|
# @return [String]
|
2153
2292
|
#
|
2154
2293
|
# @!attribute [rw] value
|
@@ -2209,6 +2348,9 @@ module Aws::ElasticLoadBalancingV2
|
|
2209
2348
|
# balancer or the target is in an Availability Zone that is not
|
2210
2349
|
# enabled for its load balancer.
|
2211
2350
|
#
|
2351
|
+
# * `Target.IpUnusable` - The target IP address is reserved for use by
|
2352
|
+
# a load balancer.
|
2353
|
+
#
|
2212
2354
|
# * `Target.InvalidState` - The target is in the stopped or terminated
|
2213
2355
|
# state.
|
2214
2356
|
#
|