aws-sdk-elasticloadbalancingv2 1.49.0 → 1.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 63471e765b6275c7ee3c54fb3352b8fa33fee1310b4740aee33685ca32ed5937
4
- data.tar.gz: f62d05bb5644b33f5255c415795629564fe4b51ddd7b590e845b0284a195b7a3
3
+ metadata.gz: 81a985f49cf2c2ffee2a2bb22a25fef073cdf6f0ea90ecfdf106dc76f3ea1b9a
4
+ data.tar.gz: 1c74da13fc1f30a76e024b833c7ed367c72b51b93eb3c9c99fd951d5c57b3449
5
5
  SHA512:
6
- metadata.gz: 759f313b5f49de3e7fb885fad2db28c7031601b2e52b559f3391cc05c9c4a2780afdeceff1e4f9ec9afc360248a43d1a741affcd81f55bce0a27dd94c5fcf16b
7
- data.tar.gz: 5e6e10b1a9b8b6da8b0cc16470464c97397ca907d818edbaba8b68aa31e10d1e507b71775489ca914e11c0d01a123bc3bb327c468274e9c2fefac2fed124dc81
6
+ metadata.gz: 92976d3941d1348ca6a93c972e6bf871c7dd4bf8d388365046364ebf3d801ed8bec5c4ed83e61a4f68fdb732ea80b1a2513078fdd08cc9dd436e46d1d747e82d
7
+ data.tar.gz: 4ff97e172086794cafb10189868dce76e9dce867102c530e73f27ee2919c2542c6005afd132ad4de57d2710a16310a8386540ddc17e70a4908506aec7e73a1be
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  require 'aws-sdk-core'
11
12
  require 'aws-sigv4'
12
13
 
@@ -48,6 +49,6 @@ require_relative 'aws-sdk-elasticloadbalancingv2/customizations'
48
49
  # @!group service
49
50
  module Aws::ElasticLoadBalancingV2
50
51
 
51
- GEM_VERSION = '1.49.0'
52
+ GEM_VERSION = '1.54.0'
52
53
 
53
54
  end
@@ -385,7 +385,7 @@ module Aws::ElasticLoadBalancingV2
385
385
 
386
386
  # Adds the specified tags to the specified Elastic Load Balancing
387
387
  # resource. You can tag your Application Load Balancers, Network Load
388
- # Balancers, and your target groups.
388
+ # Balancers, target groups, listeners, and rules.
389
389
  #
390
390
  # Each tag consists of a key and an optional value. If a resource
391
391
  # already has a tag with the same key, `AddTags` updates its value.
@@ -518,26 +518,7 @@ module Aws::ElasticLoadBalancingV2
518
518
  # AddListenerCertificates.
519
519
  #
520
520
  # @option params [required, Array<Types::Action>] :default_actions
521
- # The actions for the default rule. The rule must include one forward
522
- # action or one or more fixed-response actions.
523
- #
524
- # If the action type is `forward`, you specify one or more target
525
- # groups. The protocol of the target group must be HTTP or HTTPS for an
526
- # Application Load Balancer. The protocol of the target group must be
527
- # TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
528
- #
529
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
530
- # authenticate users through an identity provider that is OpenID Connect
531
- # (OIDC) compliant.
532
- #
533
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`, you
534
- # authenticate users through the user pools supported by Amazon Cognito.
535
- #
536
- # \[Application Load Balancer\] If the action type is `redirect`, you
537
- # redirect specified client requests from one URL to another.
538
- #
539
- # \[Application Load Balancer\] If the action type is `fixed-response`,
540
- # you drop specified client requests and return a custom HTTP response.
521
+ # The actions for the default rule.
541
522
  #
542
523
  # @option params [Array<String>] :alpn_policy
543
524
  # \[TLS listeners\] The name of the Application-Layer Protocol
@@ -561,6 +542,9 @@ module Aws::ElasticLoadBalancingV2
561
542
  #
562
543
  # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
563
544
  #
545
+ # @option params [Array<Types::Tag>] :tags
546
+ # The tags to assign to the listener.
547
+ #
564
548
  # @return [Types::CreateListenerOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
565
549
  #
566
550
  # * {Types::CreateListenerOutput#listeners #listeners} => Array&lt;Types::Listener&gt;
@@ -724,6 +708,12 @@ module Aws::ElasticLoadBalancingV2
724
708
  # },
725
709
  # ],
726
710
  # alpn_policy: ["AlpnPolicyValue"],
711
+ # tags: [
712
+ # {
713
+ # key: "TagKey", # required
714
+ # value: "TagValue",
715
+ # },
716
+ # ],
727
717
  # })
728
718
  #
729
719
  # @example Response structure
@@ -835,6 +825,12 @@ module Aws::ElasticLoadBalancingV2
835
825
  # \[Application Load Balancers\] You must specify subnets from at least
836
826
  # two Availability Zones.
837
827
  #
828
+ # \[Application Load Balancers on Outposts\] You must specify one
829
+ # Outpost subnet.
830
+ #
831
+ # \[Application Load Balancers on Local Zones\] You can specify subnets
832
+ # from one or more Local Zones.
833
+ #
838
834
  # \[Network Load Balancers\] You can specify subnets from one or more
839
835
  # Availability Zones.
840
836
  #
@@ -846,6 +842,12 @@ module Aws::ElasticLoadBalancingV2
846
842
  # two Availability Zones. You cannot specify Elastic IP addresses for
847
843
  # your subnets.
848
844
  #
845
+ # \[Application Load Balancers on Outposts\] You must specify one
846
+ # Outpost subnet.
847
+ #
848
+ # \[Application Load Balancers on Local Zones\] You can specify subnets
849
+ # from one or more Local Zones.
850
+ #
849
851
  # \[Network Load Balancers\] You can specify subnets from one or more
850
852
  # Availability Zones. You can specify one Elastic IP address per subnet
851
853
  # if you need static IP addresses for your internet-facing load
@@ -872,7 +874,7 @@ module Aws::ElasticLoadBalancingV2
872
874
  # The default is an Internet-facing load balancer.
873
875
  #
874
876
  # @option params [Array<Types::Tag>] :tags
875
- # One or more tags to assign to the load balancer.
877
+ # The tags to assign to the load balancer.
876
878
  #
877
879
  # @option params [String] :type
878
880
  # The type of load balancer. The default is `application`.
@@ -883,6 +885,10 @@ module Aws::ElasticLoadBalancingV2
883
885
  # IPv4 addresses) and `dualstack` (for IPv4 and IPv6 addresses).
884
886
  # Internal load balancers must use `ipv4`.
885
887
  #
888
+ # @option params [String] :customer_owned_ipv_4_pool
889
+ # \[Application Load Balancers on Outposts\] The ID of the
890
+ # customer-owned address pool (CoIP pool).
891
+ #
886
892
  # @return [Types::CreateLoadBalancerOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
887
893
  #
888
894
  # * {Types::CreateLoadBalancerOutput#load_balancers #load_balancers} => Array&lt;Types::LoadBalancer&gt;
@@ -1001,6 +1007,7 @@ module Aws::ElasticLoadBalancingV2
1001
1007
  # ],
1002
1008
  # type: "application", # accepts application, network
1003
1009
  # ip_address_type: "ipv4", # accepts ipv4, dualstack
1010
+ # customer_owned_ipv_4_pool: "CustomerOwnedIpv4Pool",
1004
1011
  # })
1005
1012
  #
1006
1013
  # @example Response structure
@@ -1019,6 +1026,7 @@ module Aws::ElasticLoadBalancingV2
1019
1026
  # resp.load_balancers[0].availability_zones #=> Array
1020
1027
  # resp.load_balancers[0].availability_zones[0].zone_name #=> String
1021
1028
  # resp.load_balancers[0].availability_zones[0].subnet_id #=> String
1029
+ # resp.load_balancers[0].availability_zones[0].outpost_id #=> String
1022
1030
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses #=> Array
1023
1031
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses[0].ip_address #=> String
1024
1032
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses[0].allocation_id #=> String
@@ -1026,6 +1034,7 @@ module Aws::ElasticLoadBalancingV2
1026
1034
  # resp.load_balancers[0].security_groups #=> Array
1027
1035
  # resp.load_balancers[0].security_groups[0] #=> String
1028
1036
  # resp.load_balancers[0].ip_address_type #=> String, one of "ipv4", "dualstack"
1037
+ # resp.load_balancers[0].customer_owned_ipv_4_pool #=> String
1029
1038
  #
1030
1039
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancer AWS API Documentation
1031
1040
  #
@@ -1058,38 +1067,17 @@ module Aws::ElasticLoadBalancingV2
1058
1067
  # The Amazon Resource Name (ARN) of the listener.
1059
1068
  #
1060
1069
  # @option params [required, Array<Types::RuleCondition>] :conditions
1061
- # The conditions. Each rule can optionally include up to one of each of
1062
- # the following conditions: `http-request-method`, `host-header`,
1063
- # `path-pattern`, and `source-ip`. Each rule can also optionally include
1064
- # one or more of each of the following conditions: `http-header` and
1065
- # `query-string`.
1070
+ # The conditions.
1066
1071
  #
1067
1072
  # @option params [required, Integer] :priority
1068
1073
  # The rule priority. A listener can't have multiple rules with the same
1069
1074
  # priority.
1070
1075
  #
1071
1076
  # @option params [required, Array<Types::Action>] :actions
1072
- # The actions. Each rule must include exactly one of the following types
1073
- # of actions: `forward`, `fixed-response`, or `redirect`, and it must be
1074
- # the last action to be performed.
1075
- #
1076
- # If the action type is `forward`, you specify one or more target
1077
- # groups. The protocol of the target group must be HTTP or HTTPS for an
1078
- # Application Load Balancer. The protocol of the target group must be
1079
- # TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
1080
- #
1081
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
1082
- # authenticate users through an identity provider that is OpenID Connect
1083
- # (OIDC) compliant.
1084
- #
1085
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`, you
1086
- # authenticate users through the user pools supported by Amazon Cognito.
1077
+ # The actions.
1087
1078
  #
1088
- # \[Application Load Balancer\] If the action type is `redirect`, you
1089
- # redirect specified client requests from one URL to another.
1090
- #
1091
- # \[Application Load Balancer\] If the action type is `fixed-response`,
1092
- # you drop specified client requests and return a custom HTTP response.
1079
+ # @option params [Array<Types::Tag>] :tags
1080
+ # The tags to assign to the rule.
1093
1081
  #
1094
1082
  # @return [Types::CreateRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1095
1083
  #
@@ -1240,6 +1228,12 @@ module Aws::ElasticLoadBalancingV2
1240
1228
  # },
1241
1229
  # },
1242
1230
  # ],
1231
+ # tags: [
1232
+ # {
1233
+ # key: "TagKey", # required
1234
+ # value: "TagValue",
1235
+ # },
1236
+ # ],
1243
1237
  # })
1244
1238
  #
1245
1239
  # @example Response structure
@@ -1357,6 +1351,12 @@ module Aws::ElasticLoadBalancingV2
1357
1351
  # TCP\_UDP target group. If the target is a Lambda function, this
1358
1352
  # parameter does not apply.
1359
1353
  #
1354
+ # @option params [String] :protocol_version
1355
+ # \[HTTP/HTTPS protocol\] The protocol version. Specify `GRPC` to send
1356
+ # requests to targets using gRPC. Specify `HTTP2` to send requests to
1357
+ # targets using HTTP/2. The default is `HTTP1`, which sends requests to
1358
+ # targets using HTTP/1.1.
1359
+ #
1360
1360
  # @option params [Integer] :port
1361
1361
  # The port on which the targets receive traffic. This port is used
1362
1362
  # unless you specify a port override when registering the target. If the
@@ -1387,8 +1387,14 @@ module Aws::ElasticLoadBalancingV2
1387
1387
  # enabled and cannot be disabled.
1388
1388
  #
1389
1389
  # @option params [String] :health_check_path
1390
- # \[HTTP/HTTPS health checks\] The ping path that is the destination on
1391
- # the targets for health checks. The default is /.
1390
+ # \[HTTP/HTTPS health checks\] The destination for health checks on the
1391
+ # targets.
1392
+ #
1393
+ # \[HTTP1 or HTTP2 protocol version\] The ping path. The default is /.
1394
+ #
1395
+ # \[GRPC protocol version\] The path of a custom health check method
1396
+ # with the format /package.service/method. The default is
1397
+ # /AWS.ALB/healthcheck.
1392
1398
  #
1393
1399
  # @option params [Integer] :health_check_interval_seconds
1394
1400
  # The approximate amount of time, in seconds, between health checks of
@@ -1420,8 +1426,8 @@ module Aws::ElasticLoadBalancingV2
1420
1426
  # count. If the target type is `lambda`, the default is 2.
1421
1427
  #
1422
1428
  # @option params [Types::Matcher] :matcher
1423
- # \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for a
1424
- # successful response from a target.
1429
+ # \[HTTP/HTTPS health checks\] The HTTP or gRPC codes to use when
1430
+ # checking for a successful response from a target.
1425
1431
  #
1426
1432
  # @option params [String] :target_type
1427
1433
  # The type of target that you must specify when registering targets with
@@ -1439,6 +1445,9 @@ module Aws::ElasticLoadBalancingV2
1439
1445
  #
1440
1446
  # * `lambda` - The target groups contains a single Lambda function.
1441
1447
  #
1448
+ # @option params [Array<Types::Tag>] :tags
1449
+ # The tags to assign to the target group.
1450
+ #
1442
1451
  # @return [Types::CreateTargetGroupOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1443
1452
  #
1444
1453
  # * {Types::CreateTargetGroupOutput#target_groups #target_groups} => Array&lt;Types::TargetGroup&gt;
@@ -1484,6 +1493,7 @@ module Aws::ElasticLoadBalancingV2
1484
1493
  # resp = client.create_target_group({
1485
1494
  # name: "TargetGroupName", # required
1486
1495
  # protocol: "HTTP", # accepts HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP
1496
+ # protocol_version: "ProtocolVersion",
1487
1497
  # port: 1,
1488
1498
  # vpc_id: "VpcId",
1489
1499
  # health_check_protocol: "HTTP", # accepts HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP
@@ -1495,9 +1505,16 @@ module Aws::ElasticLoadBalancingV2
1495
1505
  # healthy_threshold_count: 1,
1496
1506
  # unhealthy_threshold_count: 1,
1497
1507
  # matcher: {
1498
- # http_code: "HttpCode", # required
1508
+ # http_code: "HttpCode",
1509
+ # grpc_code: "GrpcCode",
1499
1510
  # },
1500
1511
  # target_type: "instance", # accepts instance, ip, lambda
1512
+ # tags: [
1513
+ # {
1514
+ # key: "TagKey", # required
1515
+ # value: "TagValue",
1516
+ # },
1517
+ # ],
1501
1518
  # })
1502
1519
  #
1503
1520
  # @example Response structure
@@ -1517,9 +1534,11 @@ module Aws::ElasticLoadBalancingV2
1517
1534
  # resp.target_groups[0].unhealthy_threshold_count #=> Integer
1518
1535
  # resp.target_groups[0].health_check_path #=> String
1519
1536
  # resp.target_groups[0].matcher.http_code #=> String
1537
+ # resp.target_groups[0].matcher.grpc_code #=> String
1520
1538
  # resp.target_groups[0].load_balancer_arns #=> Array
1521
1539
  # resp.target_groups[0].load_balancer_arns[0] #=> String
1522
1540
  # resp.target_groups[0].target_type #=> String, one of "instance", "ip", "lambda"
1541
+ # resp.target_groups[0].protocol_version #=> String
1523
1542
  #
1524
1543
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroup AWS API Documentation
1525
1544
  #
@@ -2122,6 +2141,7 @@ module Aws::ElasticLoadBalancingV2
2122
2141
  # resp.load_balancers[0].availability_zones #=> Array
2123
2142
  # resp.load_balancers[0].availability_zones[0].zone_name #=> String
2124
2143
  # resp.load_balancers[0].availability_zones[0].subnet_id #=> String
2144
+ # resp.load_balancers[0].availability_zones[0].outpost_id #=> String
2125
2145
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses #=> Array
2126
2146
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses[0].ip_address #=> String
2127
2147
  # resp.load_balancers[0].availability_zones[0].load_balancer_addresses[0].allocation_id #=> String
@@ -2129,6 +2149,7 @@ module Aws::ElasticLoadBalancingV2
2129
2149
  # resp.load_balancers[0].security_groups #=> Array
2130
2150
  # resp.load_balancers[0].security_groups[0] #=> String
2131
2151
  # resp.load_balancers[0].ip_address_type #=> String, one of "ipv4", "dualstack"
2152
+ # resp.load_balancers[0].customer_owned_ipv_4_pool #=> String
2132
2153
  # resp.next_marker #=> String
2133
2154
  #
2134
2155
  #
@@ -2444,9 +2465,9 @@ module Aws::ElasticLoadBalancingV2
2444
2465
  req.send_request(options)
2445
2466
  end
2446
2467
 
2447
- # Describes the tags for the specified resources. You can describe the
2448
- # tags for one or more Application Load Balancers, Network Load
2449
- # Balancers, and target groups.
2468
+ # Describes the tags for the specified Elastic Load Balancing resources.
2469
+ # You can describe the tags for one or more Application Load Balancers,
2470
+ # Network Load Balancers, target groups, listeners, or rules.
2450
2471
  #
2451
2472
  # @option params [required, Array<String>] :resource_arns
2452
2473
  # The Amazon Resource Names (ARN) of the resources. You can specify up
@@ -2676,9 +2697,11 @@ module Aws::ElasticLoadBalancingV2
2676
2697
  # resp.target_groups[0].unhealthy_threshold_count #=> Integer
2677
2698
  # resp.target_groups[0].health_check_path #=> String
2678
2699
  # resp.target_groups[0].matcher.http_code #=> String
2700
+ # resp.target_groups[0].matcher.grpc_code #=> String
2679
2701
  # resp.target_groups[0].load_balancer_arns #=> Array
2680
2702
  # resp.target_groups[0].load_balancer_arns[0] #=> String
2681
2703
  # resp.target_groups[0].target_type #=> String, one of "instance", "ip", "lambda"
2704
+ # resp.target_groups[0].protocol_version #=> String
2682
2705
  # resp.next_marker #=> String
2683
2706
  #
2684
2707
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroups AWS API Documentation
@@ -2873,26 +2896,7 @@ module Aws::ElasticLoadBalancingV2
2873
2896
  # To create a certificate list, use AddListenerCertificates.
2874
2897
  #
2875
2898
  # @option params [Array<Types::Action>] :default_actions
2876
- # The actions for the default rule. The rule must include one forward
2877
- # action or one or more fixed-response actions.
2878
- #
2879
- # If the action type is `forward`, you specify one or more target
2880
- # groups. The protocol of the target group must be HTTP or HTTPS for an
2881
- # Application Load Balancer. The protocol of the target group must be
2882
- # TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
2883
- #
2884
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
2885
- # authenticate users through an identity provider that is OpenID Connect
2886
- # (OIDC) compliant.
2887
- #
2888
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`, you
2889
- # authenticate users through the user pools supported by Amazon Cognito.
2890
- #
2891
- # \[Application Load Balancer\] If the action type is `redirect`, you
2892
- # redirect specified client requests from one URL to another.
2893
- #
2894
- # \[Application Load Balancer\] If the action type is `fixed-response`,
2895
- # you drop specified client requests and return a custom HTTP response.
2899
+ # The actions for the default rule.
2896
2900
  #
2897
2901
  # @option params [Array<String>] :alpn_policy
2898
2902
  # \[TLS listeners\] The name of the Application-Layer Protocol
@@ -3317,33 +3321,10 @@ module Aws::ElasticLoadBalancingV2
3317
3321
  # The Amazon Resource Name (ARN) of the rule.
3318
3322
  #
3319
3323
  # @option params [Array<Types::RuleCondition>] :conditions
3320
- # The conditions. Each rule can include zero or one of the following
3321
- # conditions: `http-request-method`, `host-header`, `path-pattern`, and
3322
- # `source-ip`, and zero or more of the following conditions:
3323
- # `http-header` and `query-string`.
3324
+ # The conditions.
3324
3325
  #
3325
3326
  # @option params [Array<Types::Action>] :actions
3326
- # The actions. Each rule must include exactly one of the following types
3327
- # of actions: `forward`, `fixed-response`, or `redirect`, and it must be
3328
- # the last action to be performed.
3329
- #
3330
- # If the action type is `forward`, you specify one or more target
3331
- # groups. The protocol of the target group must be HTTP or HTTPS for an
3332
- # Application Load Balancer. The protocol of the target group must be
3333
- # TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
3334
- #
3335
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
3336
- # authenticate users through an identity provider that is OpenID Connect
3337
- # (OIDC) compliant.
3338
- #
3339
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`, you
3340
- # authenticate users through the user pools supported by Amazon Cognito.
3341
- #
3342
- # \[Application Load Balancer\] If the action type is `redirect`, you
3343
- # redirect specified client requests from one URL to another.
3344
- #
3345
- # \[Application Load Balancer\] If the action type is `fixed-response`,
3346
- # you drop specified client requests and return a custom HTTP response.
3327
+ # The actions.
3347
3328
  #
3348
3329
  # @return [Types::ModifyRuleOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3349
3330
  #
@@ -3582,17 +3563,23 @@ module Aws::ElasticLoadBalancingV2
3582
3563
  # targets.
3583
3564
  #
3584
3565
  # @option params [String] :health_check_path
3585
- # \[HTTP/HTTPS health checks\] The ping path that is the destination for
3586
- # the health check request.
3566
+ # \[HTTP/HTTPS health checks\] The destination for health checks on the
3567
+ # targets.
3568
+ #
3569
+ # \[HTTP1 or HTTP2 protocol version\] The ping path. The default is /.
3570
+ #
3571
+ # \[GRPC protocol version\] The path of a custom health check method
3572
+ # with the format /package.service/method. The default is
3573
+ # /AWS.ALB/healthcheck.
3587
3574
  #
3588
3575
  # @option params [Boolean] :health_check_enabled
3589
3576
  # Indicates whether health checks are enabled.
3590
3577
  #
3591
3578
  # @option params [Integer] :health_check_interval_seconds
3592
3579
  # The approximate amount of time, in seconds, between health checks of
3593
- # an individual target. For Application Load Balancers, the range is 5
3594
- # to 300 seconds. For Network Load Balancers, the supported values are
3595
- # 10 or 30 seconds.
3580
+ # an individual target. For HTTP and HTTPS health checks, the range is 5
3581
+ # to 300 seconds. For TPC health checks, the supported values are 10 or
3582
+ # 30 seconds.
3596
3583
  #
3597
3584
  # With Network Load Balancers, you can't modify this setting.
3598
3585
  #
@@ -3608,14 +3595,13 @@ module Aws::ElasticLoadBalancingV2
3608
3595
  #
3609
3596
  # @option params [Integer] :unhealthy_threshold_count
3610
3597
  # The number of consecutive health check failures required before
3611
- # considering the target unhealthy. For Network Load Balancers, this
3612
- # value must be the same as the healthy threshold count.
3598
+ # considering the target unhealthy. For target groups with a protocol of
3599
+ # TCP or TLS, this value must be the same as the healthy threshold
3600
+ # count.
3613
3601
  #
3614
3602
  # @option params [Types::Matcher] :matcher
3615
- # \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for a
3616
- # successful response from a target. The possible values are from 200 to
3617
- # 499. You can specify multiple values (for example, "200,202") or a
3618
- # range of values (for example, "200-299"). The default is 200.
3603
+ # \[HTTP/HTTPS health checks\] The HTTP or gRPC codes to use when
3604
+ # checking for a successful response from a target.
3619
3605
  #
3620
3606
  # With Network Load Balancers, you can't modify this setting.
3621
3607
  #
@@ -3673,7 +3659,8 @@ module Aws::ElasticLoadBalancingV2
3673
3659
  # healthy_threshold_count: 1,
3674
3660
  # unhealthy_threshold_count: 1,
3675
3661
  # matcher: {
3676
- # http_code: "HttpCode", # required
3662
+ # http_code: "HttpCode",
3663
+ # grpc_code: "GrpcCode",
3677
3664
  # },
3678
3665
  # })
3679
3666
  #
@@ -3694,9 +3681,11 @@ module Aws::ElasticLoadBalancingV2
3694
3681
  # resp.target_groups[0].unhealthy_threshold_count #=> Integer
3695
3682
  # resp.target_groups[0].health_check_path #=> String
3696
3683
  # resp.target_groups[0].matcher.http_code #=> String
3684
+ # resp.target_groups[0].matcher.grpc_code #=> String
3697
3685
  # resp.target_groups[0].load_balancer_arns #=> Array
3698
3686
  # resp.target_groups[0].load_balancer_arns[0] #=> String
3699
3687
  # resp.target_groups[0].target_type #=> String, one of "instance", "ip", "lambda"
3688
+ # resp.target_groups[0].protocol_version #=> String
3700
3689
  #
3701
3690
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroup AWS API Documentation
3702
3691
  #
@@ -3807,10 +3796,6 @@ module Aws::ElasticLoadBalancingV2
3807
3796
  # @option params [required, Array<Types::TargetDescription>] :targets
3808
3797
  # The targets.
3809
3798
  #
3810
- # To register a target by instance ID, specify the instance ID. To
3811
- # register a target by IP address, specify the IP address. To register a
3812
- # Lambda function, specify the ARN of the Lambda function.
3813
- #
3814
3799
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3815
3800
  #
3816
3801
  #
@@ -3912,7 +3897,8 @@ module Aws::ElasticLoadBalancingV2
3912
3897
  end
3913
3898
 
3914
3899
  # Removes the specified tags from the specified Elastic Load Balancing
3915
- # resource.
3900
+ # resources. You can remove the tags for one or more Application Load
3901
+ # Balancers, Network Load Balancers, target groups, listeners, or rules.
3916
3902
  #
3917
3903
  # To list the current tags for your resources, use DescribeTags.
3918
3904
  #
@@ -4264,6 +4250,7 @@ module Aws::ElasticLoadBalancingV2
4264
4250
  # resp.availability_zones #=> Array
4265
4251
  # resp.availability_zones[0].zone_name #=> String
4266
4252
  # resp.availability_zones[0].subnet_id #=> String
4253
+ # resp.availability_zones[0].outpost_id #=> String
4267
4254
  # resp.availability_zones[0].load_balancer_addresses #=> Array
4268
4255
  # resp.availability_zones[0].load_balancer_addresses[0].ip_address #=> String
4269
4256
  # resp.availability_zones[0].load_balancer_addresses[0].allocation_id #=> String
@@ -4291,7 +4278,7 @@ module Aws::ElasticLoadBalancingV2
4291
4278
  params: params,
4292
4279
  config: config)
4293
4280
  context[:gem_name] = 'aws-sdk-elasticloadbalancingv2'
4294
- context[:gem_version] = '1.49.0'
4281
+ context[:gem_version] = '1.54.0'
4295
4282
  Seahorse::Client::Request.new(handlers, context)
4296
4283
  end
4297
4284
 
@@ -74,6 +74,7 @@ module Aws::ElasticLoadBalancingV2
74
74
  CreateTargetGroupInput = Shapes::StructureShape.new(name: 'CreateTargetGroupInput')
75
75
  CreateTargetGroupOutput = Shapes::StructureShape.new(name: 'CreateTargetGroupOutput')
76
76
  CreatedTime = Shapes::TimestampShape.new(name: 'CreatedTime')
77
+ CustomerOwnedIpv4Pool = Shapes::StringShape.new(name: 'CustomerOwnedIpv4Pool')
77
78
  DNSName = Shapes::StringShape.new(name: 'DNSName')
78
79
  Default = Shapes::BooleanShape.new(name: 'Default')
79
80
  DeleteListenerInput = Shapes::StructureShape.new(name: 'DeleteListenerInput')
@@ -118,6 +119,7 @@ module Aws::ElasticLoadBalancingV2
118
119
  FixedResponseActionMessage = Shapes::StringShape.new(name: 'FixedResponseActionMessage')
119
120
  FixedResponseActionStatusCode = Shapes::StringShape.new(name: 'FixedResponseActionStatusCode')
120
121
  ForwardActionConfig = Shapes::StructureShape.new(name: 'ForwardActionConfig')
122
+ GrpcCode = Shapes::StringShape.new(name: 'GrpcCode')
121
123
  HealthCheckEnabled = Shapes::BooleanShape.new(name: 'HealthCheckEnabled')
122
124
  HealthCheckIntervalSeconds = Shapes::IntegerShape.new(name: 'HealthCheckIntervalSeconds')
123
125
  HealthCheckPort = Shapes::StringShape.new(name: 'HealthCheckPort')
@@ -179,6 +181,7 @@ module Aws::ElasticLoadBalancingV2
179
181
  ModifyTargetGroupOutput = Shapes::StructureShape.new(name: 'ModifyTargetGroupOutput')
180
182
  Name = Shapes::StringShape.new(name: 'Name')
181
183
  OperationNotPermittedException = Shapes::StructureShape.new(name: 'OperationNotPermittedException')
184
+ OutpostId = Shapes::StringShape.new(name: 'OutpostId')
182
185
  PageSize = Shapes::IntegerShape.new(name: 'PageSize')
183
186
  Path = Shapes::StringShape.new(name: 'Path')
184
187
  PathPatternConditionConfig = Shapes::StructureShape.new(name: 'PathPatternConditionConfig')
@@ -186,6 +189,7 @@ module Aws::ElasticLoadBalancingV2
186
189
  PriorityInUseException = Shapes::StructureShape.new(name: 'PriorityInUseException')
187
190
  PrivateIPv4Address = Shapes::StringShape.new(name: 'PrivateIPv4Address')
188
191
  ProtocolEnum = Shapes::StringShape.new(name: 'ProtocolEnum')
192
+ ProtocolVersion = Shapes::StringShape.new(name: 'ProtocolVersion')
189
193
  QueryStringConditionConfig = Shapes::StructureShape.new(name: 'QueryStringConditionConfig')
190
194
  QueryStringKeyValuePair = Shapes::StructureShape.new(name: 'QueryStringKeyValuePair')
191
195
  QueryStringKeyValuePairList = Shapes::ListShape.new(name: 'QueryStringKeyValuePairList')
@@ -352,6 +356,7 @@ module Aws::ElasticLoadBalancingV2
352
356
 
353
357
  AvailabilityZone.add_member(:zone_name, Shapes::ShapeRef.new(shape: ZoneName, location_name: "ZoneName"))
354
358
  AvailabilityZone.add_member(:subnet_id, Shapes::ShapeRef.new(shape: SubnetId, location_name: "SubnetId"))
359
+ AvailabilityZone.add_member(:outpost_id, Shapes::ShapeRef.new(shape: OutpostId, location_name: "OutpostId"))
355
360
  AvailabilityZone.add_member(:load_balancer_addresses, Shapes::ShapeRef.new(shape: LoadBalancerAddresses, location_name: "LoadBalancerAddresses"))
356
361
  AvailabilityZone.struct_class = Types::AvailabilityZone
357
362
 
@@ -380,6 +385,7 @@ module Aws::ElasticLoadBalancingV2
380
385
  CreateListenerInput.add_member(:certificates, Shapes::ShapeRef.new(shape: CertificateList, location_name: "Certificates"))
381
386
  CreateListenerInput.add_member(:default_actions, Shapes::ShapeRef.new(shape: Actions, required: true, location_name: "DefaultActions"))
382
387
  CreateListenerInput.add_member(:alpn_policy, Shapes::ShapeRef.new(shape: AlpnPolicyName, location_name: "AlpnPolicy"))
388
+ CreateListenerInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
383
389
  CreateListenerInput.struct_class = Types::CreateListenerInput
384
390
 
385
391
  CreateListenerOutput.add_member(:listeners, Shapes::ShapeRef.new(shape: Listeners, location_name: "Listeners"))
@@ -393,6 +399,7 @@ module Aws::ElasticLoadBalancingV2
393
399
  CreateLoadBalancerInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
394
400
  CreateLoadBalancerInput.add_member(:type, Shapes::ShapeRef.new(shape: LoadBalancerTypeEnum, location_name: "Type"))
395
401
  CreateLoadBalancerInput.add_member(:ip_address_type, Shapes::ShapeRef.new(shape: IpAddressType, location_name: "IpAddressType"))
402
+ CreateLoadBalancerInput.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: CustomerOwnedIpv4Pool, location_name: "CustomerOwnedIpv4Pool"))
396
403
  CreateLoadBalancerInput.struct_class = Types::CreateLoadBalancerInput
397
404
 
398
405
  CreateLoadBalancerOutput.add_member(:load_balancers, Shapes::ShapeRef.new(shape: LoadBalancers, location_name: "LoadBalancers"))
@@ -402,6 +409,7 @@ module Aws::ElasticLoadBalancingV2
402
409
  CreateRuleInput.add_member(:conditions, Shapes::ShapeRef.new(shape: RuleConditionList, required: true, location_name: "Conditions"))
403
410
  CreateRuleInput.add_member(:priority, Shapes::ShapeRef.new(shape: RulePriority, required: true, location_name: "Priority"))
404
411
  CreateRuleInput.add_member(:actions, Shapes::ShapeRef.new(shape: Actions, required: true, location_name: "Actions"))
412
+ CreateRuleInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
405
413
  CreateRuleInput.struct_class = Types::CreateRuleInput
406
414
 
407
415
  CreateRuleOutput.add_member(:rules, Shapes::ShapeRef.new(shape: Rules, location_name: "Rules"))
@@ -409,6 +417,7 @@ module Aws::ElasticLoadBalancingV2
409
417
 
410
418
  CreateTargetGroupInput.add_member(:name, Shapes::ShapeRef.new(shape: TargetGroupName, required: true, location_name: "Name"))
411
419
  CreateTargetGroupInput.add_member(:protocol, Shapes::ShapeRef.new(shape: ProtocolEnum, location_name: "Protocol"))
420
+ CreateTargetGroupInput.add_member(:protocol_version, Shapes::ShapeRef.new(shape: ProtocolVersion, location_name: "ProtocolVersion"))
412
421
  CreateTargetGroupInput.add_member(:port, Shapes::ShapeRef.new(shape: Port, location_name: "Port"))
413
422
  CreateTargetGroupInput.add_member(:vpc_id, Shapes::ShapeRef.new(shape: VpcId, location_name: "VpcId"))
414
423
  CreateTargetGroupInput.add_member(:health_check_protocol, Shapes::ShapeRef.new(shape: ProtocolEnum, location_name: "HealthCheckProtocol"))
@@ -421,6 +430,7 @@ module Aws::ElasticLoadBalancingV2
421
430
  CreateTargetGroupInput.add_member(:unhealthy_threshold_count, Shapes::ShapeRef.new(shape: HealthCheckThresholdCount, location_name: "UnhealthyThresholdCount"))
422
431
  CreateTargetGroupInput.add_member(:matcher, Shapes::ShapeRef.new(shape: Matcher, location_name: "Matcher"))
423
432
  CreateTargetGroupInput.add_member(:target_type, Shapes::ShapeRef.new(shape: TargetTypeEnum, location_name: "TargetType"))
433
+ CreateTargetGroupInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
424
434
  CreateTargetGroupInput.struct_class = Types::CreateTargetGroupInput
425
435
 
426
436
  CreateTargetGroupOutput.add_member(:target_groups, Shapes::ShapeRef.new(shape: TargetGroups, location_name: "TargetGroups"))
@@ -623,6 +633,7 @@ module Aws::ElasticLoadBalancingV2
623
633
  LoadBalancer.add_member(:availability_zones, Shapes::ShapeRef.new(shape: AvailabilityZones, location_name: "AvailabilityZones"))
624
634
  LoadBalancer.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroups, location_name: "SecurityGroups"))
625
635
  LoadBalancer.add_member(:ip_address_type, Shapes::ShapeRef.new(shape: IpAddressType, location_name: "IpAddressType"))
636
+ LoadBalancer.add_member(:customer_owned_ipv_4_pool, Shapes::ShapeRef.new(shape: CustomerOwnedIpv4Pool, location_name: "CustomerOwnedIpv4Pool"))
626
637
  LoadBalancer.struct_class = Types::LoadBalancer
627
638
 
628
639
  LoadBalancerAddress.add_member(:ip_address, Shapes::ShapeRef.new(shape: IpAddress, location_name: "IpAddress"))
@@ -650,7 +661,8 @@ module Aws::ElasticLoadBalancingV2
650
661
 
651
662
  LoadBalancers.member = Shapes::ShapeRef.new(shape: LoadBalancer)
652
663
 
653
- Matcher.add_member(:http_code, Shapes::ShapeRef.new(shape: HttpCode, required: true, location_name: "HttpCode"))
664
+ Matcher.add_member(:http_code, Shapes::ShapeRef.new(shape: HttpCode, location_name: "HttpCode"))
665
+ Matcher.add_member(:grpc_code, Shapes::ShapeRef.new(shape: GrpcCode, location_name: "GrpcCode"))
654
666
  Matcher.struct_class = Types::Matcher
655
667
 
656
668
  ModifyListenerInput.add_member(:listener_arn, Shapes::ShapeRef.new(shape: ListenerArn, required: true, location_name: "ListenerArn"))
@@ -873,6 +885,7 @@ module Aws::ElasticLoadBalancingV2
873
885
  TargetGroup.add_member(:matcher, Shapes::ShapeRef.new(shape: Matcher, location_name: "Matcher"))
874
886
  TargetGroup.add_member(:load_balancer_arns, Shapes::ShapeRef.new(shape: LoadBalancerArns, location_name: "LoadBalancerArns"))
875
887
  TargetGroup.add_member(:target_type, Shapes::ShapeRef.new(shape: TargetTypeEnum, location_name: "TargetType"))
888
+ TargetGroup.add_member(:protocol_version, Shapes::ShapeRef.new(shape: ProtocolVersion, location_name: "ProtocolVersion"))
876
889
  TargetGroup.struct_class = Types::TargetGroup
877
890
 
878
891
  TargetGroupArns.member = Shapes::ShapeRef.new(shape: TargetGroupArn)
@@ -999,6 +1012,7 @@ module Aws::ElasticLoadBalancingV2
999
1012
  o.errors << Shapes::ShapeRef.new(shape: InvalidLoadBalancerActionException)
1000
1013
  o.errors << Shapes::ShapeRef.new(shape: TooManyUniqueTargetGroupsPerLoadBalancerException)
1001
1014
  o.errors << Shapes::ShapeRef.new(shape: ALPNPolicyNotSupportedException)
1015
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1002
1016
  end)
1003
1017
 
1004
1018
  api.add_operation(:create_load_balancer, Seahorse::Model::Operation.new.tap do |o|
@@ -1042,6 +1056,7 @@ module Aws::ElasticLoadBalancingV2
1042
1056
  o.errors << Shapes::ShapeRef.new(shape: TooManyActionsException)
1043
1057
  o.errors << Shapes::ShapeRef.new(shape: InvalidLoadBalancerActionException)
1044
1058
  o.errors << Shapes::ShapeRef.new(shape: TooManyUniqueTargetGroupsPerLoadBalancerException)
1059
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1045
1060
  end)
1046
1061
 
1047
1062
  api.add_operation(:create_target_group, Seahorse::Model::Operation.new.tap do |o|
@@ -1053,6 +1068,7 @@ module Aws::ElasticLoadBalancingV2
1053
1068
  o.errors << Shapes::ShapeRef.new(shape: DuplicateTargetGroupNameException)
1054
1069
  o.errors << Shapes::ShapeRef.new(shape: TooManyTargetGroupsException)
1055
1070
  o.errors << Shapes::ShapeRef.new(shape: InvalidConfigurationRequestException)
1071
+ o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
1056
1072
  end)
1057
1073
 
1058
1074
  api.add_operation(:delete_listener, Seahorse::Model::Operation.new.tap do |o|
@@ -438,6 +438,10 @@ module Aws::ElasticLoadBalancingV2
438
438
  # Zone.
439
439
  # @return [String]
440
440
  #
441
+ # @!attribute [rw] outpost_id
442
+ # \[Application Load Balancers on Outposts\] The ID of the Outpost.
443
+ # @return [String]
444
+ #
441
445
  # @!attribute [rw] load_balancer_addresses
442
446
  # \[Network Load Balancers\] If you need static IP addresses for your
443
447
  # load balancer, you can specify one Elastic IP address per
@@ -451,6 +455,7 @@ module Aws::ElasticLoadBalancingV2
451
455
  class AvailabilityZone < Struct.new(
452
456
  :zone_name,
453
457
  :subnet_id,
458
+ :outpost_id,
454
459
  :load_balancer_addresses)
455
460
  SENSITIVE = []
456
461
  include Aws::Structure
@@ -592,6 +597,12 @@ module Aws::ElasticLoadBalancingV2
592
597
  # },
593
598
  # ],
594
599
  # alpn_policy: ["AlpnPolicyValue"],
600
+ # tags: [
601
+ # {
602
+ # key: "TagKey", # required
603
+ # value: "TagValue",
604
+ # },
605
+ # ],
595
606
  # }
596
607
  #
597
608
  # @!attribute [rw] load_balancer_arn
@@ -652,28 +663,7 @@ module Aws::ElasticLoadBalancingV2
652
663
  # @return [Array<Types::Certificate>]
653
664
  #
654
665
  # @!attribute [rw] default_actions
655
- # The actions for the default rule. The rule must include one forward
656
- # action or one or more fixed-response actions.
657
- #
658
- # If the action type is `forward`, you specify one or more target
659
- # groups. The protocol of the target group must be HTTP or HTTPS for
660
- # an Application Load Balancer. The protocol of the target group must
661
- # be TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
662
- #
663
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
664
- # authenticate users through an identity provider that is OpenID
665
- # Connect (OIDC) compliant.
666
- #
667
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`,
668
- # you authenticate users through the user pools supported by Amazon
669
- # Cognito.
670
- #
671
- # \[Application Load Balancer\] If the action type is `redirect`, you
672
- # redirect specified client requests from one URL to another.
673
- #
674
- # \[Application Load Balancer\] If the action type is
675
- # `fixed-response`, you drop specified client requests and return a
676
- # custom HTTP response.
666
+ # The actions for the default rule.
677
667
  # @return [Array<Types::Action>]
678
668
  #
679
669
  # @!attribute [rw] alpn_policy
@@ -699,6 +689,10 @@ module Aws::ElasticLoadBalancingV2
699
689
  # [1]: https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies
700
690
  # @return [Array<String>]
701
691
  #
692
+ # @!attribute [rw] tags
693
+ # The tags to assign to the listener.
694
+ # @return [Array<Types::Tag>]
695
+ #
702
696
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerInput AWS API Documentation
703
697
  #
704
698
  class CreateListenerInput < Struct.new(
@@ -708,7 +702,8 @@ module Aws::ElasticLoadBalancingV2
708
702
  :ssl_policy,
709
703
  :certificates,
710
704
  :default_actions,
711
- :alpn_policy)
705
+ :alpn_policy,
706
+ :tags)
712
707
  SENSITIVE = []
713
708
  include Aws::Structure
714
709
  end
@@ -748,6 +743,7 @@ module Aws::ElasticLoadBalancingV2
748
743
  # ],
749
744
  # type: "application", # accepts application, network
750
745
  # ip_address_type: "ipv4", # accepts ipv4, dualstack
746
+ # customer_owned_ipv_4_pool: "CustomerOwnedIpv4Pool",
751
747
  # }
752
748
  #
753
749
  # @!attribute [rw] name
@@ -767,6 +763,12 @@ module Aws::ElasticLoadBalancingV2
767
763
  # \[Application Load Balancers\] You must specify subnets from at
768
764
  # least two Availability Zones.
769
765
  #
766
+ # \[Application Load Balancers on Outposts\] You must specify one
767
+ # Outpost subnet.
768
+ #
769
+ # \[Application Load Balancers on Local Zones\] You can specify
770
+ # subnets from one or more Local Zones.
771
+ #
770
772
  # \[Network Load Balancers\] You can specify subnets from one or more
771
773
  # Availability Zones.
772
774
  # @return [Array<String>]
@@ -780,6 +782,12 @@ module Aws::ElasticLoadBalancingV2
780
782
  # least two Availability Zones. You cannot specify Elastic IP
781
783
  # addresses for your subnets.
782
784
  #
785
+ # \[Application Load Balancers on Outposts\] You must specify one
786
+ # Outpost subnet.
787
+ #
788
+ # \[Application Load Balancers on Local Zones\] You can specify
789
+ # subnets from one or more Local Zones.
790
+ #
783
791
  # \[Network Load Balancers\] You can specify subnets from one or more
784
792
  # Availability Zones. You can specify one Elastic IP address per
785
793
  # subnet if you need static IP addresses for your internet-facing load
@@ -809,7 +817,7 @@ module Aws::ElasticLoadBalancingV2
809
817
  # @return [String]
810
818
  #
811
819
  # @!attribute [rw] tags
812
- # One or more tags to assign to the load balancer.
820
+ # The tags to assign to the load balancer.
813
821
  # @return [Array<Types::Tag>]
814
822
  #
815
823
  # @!attribute [rw] type
@@ -823,6 +831,11 @@ module Aws::ElasticLoadBalancingV2
823
831
  # Internal load balancers must use `ipv4`.
824
832
  # @return [String]
825
833
  #
834
+ # @!attribute [rw] customer_owned_ipv_4_pool
835
+ # \[Application Load Balancers on Outposts\] The ID of the
836
+ # customer-owned address pool (CoIP pool).
837
+ # @return [String]
838
+ #
826
839
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerInput AWS API Documentation
827
840
  #
828
841
  class CreateLoadBalancerInput < Struct.new(
@@ -833,7 +846,8 @@ module Aws::ElasticLoadBalancingV2
833
846
  :scheme,
834
847
  :tags,
835
848
  :type,
836
- :ip_address_type)
849
+ :ip_address_type,
850
+ :customer_owned_ipv_4_pool)
837
851
  SENSITIVE = []
838
852
  include Aws::Structure
839
853
  end
@@ -946,6 +960,12 @@ module Aws::ElasticLoadBalancingV2
946
960
  # },
947
961
  # },
948
962
  # ],
963
+ # tags: [
964
+ # {
965
+ # key: "TagKey", # required
966
+ # value: "TagValue",
967
+ # },
968
+ # ],
949
969
  # }
950
970
  #
951
971
  # @!attribute [rw] listener_arn
@@ -953,11 +973,7 @@ module Aws::ElasticLoadBalancingV2
953
973
  # @return [String]
954
974
  #
955
975
  # @!attribute [rw] conditions
956
- # The conditions. Each rule can optionally include up to one of each
957
- # of the following conditions: `http-request-method`, `host-header`,
958
- # `path-pattern`, and `source-ip`. Each rule can also optionally
959
- # include one or more of each of the following conditions:
960
- # `http-header` and `query-string`.
976
+ # The conditions.
961
977
  # @return [Array<Types::RuleCondition>]
962
978
  #
963
979
  # @!attribute [rw] priority
@@ -966,38 +982,21 @@ module Aws::ElasticLoadBalancingV2
966
982
  # @return [Integer]
967
983
  #
968
984
  # @!attribute [rw] actions
969
- # The actions. Each rule must include exactly one of the following
970
- # types of actions: `forward`, `fixed-response`, or `redirect`, and it
971
- # must be the last action to be performed.
972
- #
973
- # If the action type is `forward`, you specify one or more target
974
- # groups. The protocol of the target group must be HTTP or HTTPS for
975
- # an Application Load Balancer. The protocol of the target group must
976
- # be TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
977
- #
978
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
979
- # authenticate users through an identity provider that is OpenID
980
- # Connect (OIDC) compliant.
981
- #
982
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`,
983
- # you authenticate users through the user pools supported by Amazon
984
- # Cognito.
985
- #
986
- # \[Application Load Balancer\] If the action type is `redirect`, you
987
- # redirect specified client requests from one URL to another.
988
- #
989
- # \[Application Load Balancer\] If the action type is
990
- # `fixed-response`, you drop specified client requests and return a
991
- # custom HTTP response.
985
+ # The actions.
992
986
  # @return [Array<Types::Action>]
993
987
  #
988
+ # @!attribute [rw] tags
989
+ # The tags to assign to the rule.
990
+ # @return [Array<Types::Tag>]
991
+ #
994
992
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRuleInput AWS API Documentation
995
993
  #
996
994
  class CreateRuleInput < Struct.new(
997
995
  :listener_arn,
998
996
  :conditions,
999
997
  :priority,
1000
- :actions)
998
+ :actions,
999
+ :tags)
1001
1000
  SENSITIVE = []
1002
1001
  include Aws::Structure
1003
1002
  end
@@ -1020,6 +1019,7 @@ module Aws::ElasticLoadBalancingV2
1020
1019
  # {
1021
1020
  # name: "TargetGroupName", # required
1022
1021
  # protocol: "HTTP", # accepts HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP
1022
+ # protocol_version: "ProtocolVersion",
1023
1023
  # port: 1,
1024
1024
  # vpc_id: "VpcId",
1025
1025
  # health_check_protocol: "HTTP", # accepts HTTP, HTTPS, TCP, TLS, UDP, TCP_UDP
@@ -1031,9 +1031,16 @@ module Aws::ElasticLoadBalancingV2
1031
1031
  # healthy_threshold_count: 1,
1032
1032
  # unhealthy_threshold_count: 1,
1033
1033
  # matcher: {
1034
- # http_code: "HttpCode", # required
1034
+ # http_code: "HttpCode",
1035
+ # grpc_code: "GrpcCode",
1035
1036
  # },
1036
1037
  # target_type: "instance", # accepts instance, ip, lambda
1038
+ # tags: [
1039
+ # {
1040
+ # key: "TagKey", # required
1041
+ # value: "TagValue",
1042
+ # },
1043
+ # ],
1037
1044
  # }
1038
1045
  #
1039
1046
  # @!attribute [rw] name
@@ -1053,6 +1060,13 @@ module Aws::ElasticLoadBalancingV2
1053
1060
  # parameter does not apply.
1054
1061
  # @return [String]
1055
1062
  #
1063
+ # @!attribute [rw] protocol_version
1064
+ # \[HTTP/HTTPS protocol\] The protocol version. Specify `GRPC` to send
1065
+ # requests to targets using gRPC. Specify `HTTP2` to send requests to
1066
+ # targets using HTTP/2. The default is `HTTP1`, which sends requests
1067
+ # to targets using HTTP/1.1.
1068
+ # @return [String]
1069
+ #
1056
1070
  # @!attribute [rw] port
1057
1071
  # The port on which the targets receive traffic. This port is used
1058
1072
  # unless you specify a port override when registering the target. If
@@ -1088,8 +1102,14 @@ module Aws::ElasticLoadBalancingV2
1088
1102
  # @return [Boolean]
1089
1103
  #
1090
1104
  # @!attribute [rw] health_check_path
1091
- # \[HTTP/HTTPS health checks\] The ping path that is the destination
1092
- # on the targets for health checks. The default is /.
1105
+ # \[HTTP/HTTPS health checks\] The destination for health checks on
1106
+ # the targets.
1107
+ #
1108
+ # \[HTTP1 or HTTP2 protocol version\] The ping path. The default is /.
1109
+ #
1110
+ # \[GRPC protocol version\] The path of a custom health check method
1111
+ # with the format /package.service/method. The default is
1112
+ # /AWS.ALB/healthcheck.
1093
1113
  # @return [String]
1094
1114
  #
1095
1115
  # @!attribute [rw] health_check_interval_seconds
@@ -1127,8 +1147,8 @@ module Aws::ElasticLoadBalancingV2
1127
1147
  # @return [Integer]
1128
1148
  #
1129
1149
  # @!attribute [rw] matcher
1130
- # \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for
1131
- # a successful response from a target.
1150
+ # \[HTTP/HTTPS health checks\] The HTTP or gRPC codes to use when
1151
+ # checking for a successful response from a target.
1132
1152
  # @return [Types::Matcher]
1133
1153
  #
1134
1154
  # @!attribute [rw] target_type
@@ -1148,11 +1168,16 @@ module Aws::ElasticLoadBalancingV2
1148
1168
  # * `lambda` - The target groups contains a single Lambda function.
1149
1169
  # @return [String]
1150
1170
  #
1171
+ # @!attribute [rw] tags
1172
+ # The tags to assign to the target group.
1173
+ # @return [Array<Types::Tag>]
1174
+ #
1151
1175
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroupInput AWS API Documentation
1152
1176
  #
1153
1177
  class CreateTargetGroupInput < Struct.new(
1154
1178
  :name,
1155
1179
  :protocol,
1180
+ :protocol_version,
1156
1181
  :port,
1157
1182
  :vpc_id,
1158
1183
  :health_check_protocol,
@@ -1164,7 +1189,8 @@ module Aws::ElasticLoadBalancingV2
1164
1189
  :healthy_threshold_count,
1165
1190
  :unhealthy_threshold_count,
1166
1191
  :matcher,
1167
- :target_type)
1192
+ :target_type,
1193
+ :tags)
1168
1194
  SENSITIVE = []
1169
1195
  include Aws::Structure
1170
1196
  end
@@ -2229,7 +2255,7 @@ module Aws::ElasticLoadBalancingV2
2229
2255
  # @return [String]
2230
2256
  #
2231
2257
  # @!attribute [rw] availability_zones
2232
- # The Availability Zones for the load balancer.
2258
+ # The subnets for the load balancer.
2233
2259
  # @return [Array<Types::AvailabilityZone>]
2234
2260
  #
2235
2261
  # @!attribute [rw] security_groups
@@ -2242,6 +2268,11 @@ module Aws::ElasticLoadBalancingV2
2242
2268
  # (for IPv4 and IPv6 addresses).
2243
2269
  # @return [String]
2244
2270
  #
2271
+ # @!attribute [rw] customer_owned_ipv_4_pool
2272
+ # \[Application Load Balancers on Outposts\] The ID of the
2273
+ # customer-owned address pool.
2274
+ # @return [String]
2275
+ #
2245
2276
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/LoadBalancer AWS API Documentation
2246
2277
  #
2247
2278
  class LoadBalancer < Struct.new(
@@ -2256,7 +2287,8 @@ module Aws::ElasticLoadBalancingV2
2256
2287
  :type,
2257
2288
  :availability_zones,
2258
2289
  :security_groups,
2259
- :ip_address_type)
2290
+ :ip_address_type,
2291
+ :customer_owned_ipv_4_pool)
2260
2292
  SENSITIVE = []
2261
2293
  include Aws::Structure
2262
2294
  end
@@ -2392,31 +2424,38 @@ module Aws::ElasticLoadBalancingV2
2392
2424
  include Aws::Structure
2393
2425
  end
2394
2426
 
2395
- # Information to use when checking for a successful response from a
2396
- # target.
2427
+ # The codes to use when checking for a successful response from a
2428
+ # target. If the protocol version is gRPC, these are gRPC codes.
2429
+ # Otherwise, these are HTTP codes.
2397
2430
  #
2398
2431
  # @note When making an API call, you may pass Matcher
2399
2432
  # data as a hash:
2400
2433
  #
2401
2434
  # {
2402
- # http_code: "HttpCode", # required
2435
+ # http_code: "HttpCode",
2436
+ # grpc_code: "GrpcCode",
2403
2437
  # }
2404
2438
  #
2405
2439
  # @!attribute [rw] http_code
2406
- # The HTTP codes.
2407
- #
2408
2440
  # For Application Load Balancers, you can specify values between 200
2409
2441
  # and 499, and the default value is 200. You can specify multiple
2410
2442
  # values (for example, "200,202") or a range of values (for example,
2411
2443
  # "200-299").
2412
2444
  #
2413
- # For Network Load Balancers, this is 200–399.
2445
+ # For Network Load Balancers, this is "200–399".
2446
+ # @return [String]
2447
+ #
2448
+ # @!attribute [rw] grpc_code
2449
+ # You can specify values between 0 and 99. You can specify multiple
2450
+ # values (for example, "0,1") or a range of values (for example,
2451
+ # "0-5"). The default value is 12.
2414
2452
  # @return [String]
2415
2453
  #
2416
2454
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/Matcher AWS API Documentation
2417
2455
  #
2418
2456
  class Matcher < Struct.new(
2419
- :http_code)
2457
+ :http_code,
2458
+ :grpc_code)
2420
2459
  SENSITIVE = []
2421
2460
  include Aws::Structure
2422
2461
  end
@@ -2555,28 +2594,7 @@ module Aws::ElasticLoadBalancingV2
2555
2594
  # @return [Array<Types::Certificate>]
2556
2595
  #
2557
2596
  # @!attribute [rw] default_actions
2558
- # The actions for the default rule. The rule must include one forward
2559
- # action or one or more fixed-response actions.
2560
- #
2561
- # If the action type is `forward`, you specify one or more target
2562
- # groups. The protocol of the target group must be HTTP or HTTPS for
2563
- # an Application Load Balancer. The protocol of the target group must
2564
- # be TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
2565
- #
2566
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
2567
- # authenticate users through an identity provider that is OpenID
2568
- # Connect (OIDC) compliant.
2569
- #
2570
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`,
2571
- # you authenticate users through the user pools supported by Amazon
2572
- # Cognito.
2573
- #
2574
- # \[Application Load Balancer\] If the action type is `redirect`, you
2575
- # redirect specified client requests from one URL to another.
2576
- #
2577
- # \[Application Load Balancer\] If the action type is
2578
- # `fixed-response`, you drop specified client requests and return a
2579
- # custom HTTP response.
2597
+ # The actions for the default rule.
2580
2598
  # @return [Array<Types::Action>]
2581
2599
  #
2582
2600
  # @!attribute [rw] alpn_policy
@@ -2772,36 +2790,11 @@ module Aws::ElasticLoadBalancingV2
2772
2790
  # @return [String]
2773
2791
  #
2774
2792
  # @!attribute [rw] conditions
2775
- # The conditions. Each rule can include zero or one of the following
2776
- # conditions: `http-request-method`, `host-header`, `path-pattern`,
2777
- # and `source-ip`, and zero or more of the following conditions:
2778
- # `http-header` and `query-string`.
2793
+ # The conditions.
2779
2794
  # @return [Array<Types::RuleCondition>]
2780
2795
  #
2781
2796
  # @!attribute [rw] actions
2782
- # The actions. Each rule must include exactly one of the following
2783
- # types of actions: `forward`, `fixed-response`, or `redirect`, and it
2784
- # must be the last action to be performed.
2785
- #
2786
- # If the action type is `forward`, you specify one or more target
2787
- # groups. The protocol of the target group must be HTTP or HTTPS for
2788
- # an Application Load Balancer. The protocol of the target group must
2789
- # be TCP, TLS, UDP, or TCP\_UDP for a Network Load Balancer.
2790
- #
2791
- # \[HTTPS listeners\] If the action type is `authenticate-oidc`, you
2792
- # authenticate users through an identity provider that is OpenID
2793
- # Connect (OIDC) compliant.
2794
- #
2795
- # \[HTTPS listeners\] If the action type is `authenticate-cognito`,
2796
- # you authenticate users through the user pools supported by Amazon
2797
- # Cognito.
2798
- #
2799
- # \[Application Load Balancer\] If the action type is `redirect`, you
2800
- # redirect specified client requests from one URL to another.
2801
- #
2802
- # \[Application Load Balancer\] If the action type is
2803
- # `fixed-response`, you drop specified client requests and return a
2804
- # custom HTTP response.
2797
+ # The actions.
2805
2798
  # @return [Array<Types::Action>]
2806
2799
  #
2807
2800
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleInput AWS API Documentation
@@ -2882,7 +2875,8 @@ module Aws::ElasticLoadBalancingV2
2882
2875
  # healthy_threshold_count: 1,
2883
2876
  # unhealthy_threshold_count: 1,
2884
2877
  # matcher: {
2885
- # http_code: "HttpCode", # required
2878
+ # http_code: "HttpCode",
2879
+ # grpc_code: "GrpcCode",
2886
2880
  # },
2887
2881
  # }
2888
2882
  #
@@ -2905,8 +2899,14 @@ module Aws::ElasticLoadBalancingV2
2905
2899
  # @return [String]
2906
2900
  #
2907
2901
  # @!attribute [rw] health_check_path
2908
- # \[HTTP/HTTPS health checks\] The ping path that is the destination
2909
- # for the health check request.
2902
+ # \[HTTP/HTTPS health checks\] The destination for health checks on
2903
+ # the targets.
2904
+ #
2905
+ # \[HTTP1 or HTTP2 protocol version\] The ping path. The default is /.
2906
+ #
2907
+ # \[GRPC protocol version\] The path of a custom health check method
2908
+ # with the format /package.service/method. The default is
2909
+ # /AWS.ALB/healthcheck.
2910
2910
  # @return [String]
2911
2911
  #
2912
2912
  # @!attribute [rw] health_check_enabled
@@ -2915,9 +2915,9 @@ module Aws::ElasticLoadBalancingV2
2915
2915
  #
2916
2916
  # @!attribute [rw] health_check_interval_seconds
2917
2917
  # The approximate amount of time, in seconds, between health checks of
2918
- # an individual target. For Application Load Balancers, the range is 5
2919
- # to 300 seconds. For Network Load Balancers, the supported values are
2920
- # 10 or 30 seconds.
2918
+ # an individual target. For HTTP and HTTPS health checks, the range is
2919
+ # 5 to 300 seconds. For TPC health checks, the supported values are 10
2920
+ # or 30 seconds.
2921
2921
  #
2922
2922
  # With Network Load Balancers, you can't modify this setting.
2923
2923
  # @return [Integer]
@@ -2936,16 +2936,14 @@ module Aws::ElasticLoadBalancingV2
2936
2936
  #
2937
2937
  # @!attribute [rw] unhealthy_threshold_count
2938
2938
  # The number of consecutive health check failures required before
2939
- # considering the target unhealthy. For Network Load Balancers, this
2940
- # value must be the same as the healthy threshold count.
2939
+ # considering the target unhealthy. For target groups with a protocol
2940
+ # of TCP or TLS, this value must be the same as the healthy threshold
2941
+ # count.
2941
2942
  # @return [Integer]
2942
2943
  #
2943
2944
  # @!attribute [rw] matcher
2944
- # \[HTTP/HTTPS health checks\] The HTTP codes to use when checking for
2945
- # a successful response from a target. The possible values are from
2946
- # 200 to 499. You can specify multiple values (for example,
2947
- # "200,202") or a range of values (for example, "200-299"). The
2948
- # default is 200.
2945
+ # \[HTTP/HTTPS health checks\] The HTTP or gRPC codes to use when
2946
+ # checking for a successful response from a target.
2949
2947
  #
2950
2948
  # With Network Load Balancers, you can't modify this setting.
2951
2949
  # @return [Types::Matcher]
@@ -3189,10 +3187,6 @@ module Aws::ElasticLoadBalancingV2
3189
3187
  #
3190
3188
  # @!attribute [rw] targets
3191
3189
  # The targets.
3192
- #
3193
- # To register a target by instance ID, specify the instance ID. To
3194
- # register a target by IP address, specify the IP address. To register
3195
- # a Lambda function, specify the ARN of the Lambda function.
3196
3190
  # @return [Array<Types::TargetDescription>]
3197
3191
  #
3198
3192
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargetsInput AWS API Documentation
@@ -3661,7 +3655,7 @@ module Aws::ElasticLoadBalancingV2
3661
3655
  end
3662
3656
 
3663
3657
  # @!attribute [rw] availability_zones
3664
- # Information about the subnet and Availability Zone.
3658
+ # Information about the subnets.
3665
3659
  # @return [Array<Types::AvailabilityZone>]
3666
3660
  #
3667
3661
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsOutput AWS API Documentation
@@ -3927,12 +3921,12 @@ module Aws::ElasticLoadBalancingV2
3927
3921
  # @return [Integer]
3928
3922
  #
3929
3923
  # @!attribute [rw] health_check_path
3930
- # The destination for the health check request.
3924
+ # The destination for health checks on the targets.
3931
3925
  # @return [String]
3932
3926
  #
3933
3927
  # @!attribute [rw] matcher
3934
- # The HTTP codes to use when checking for a successful response from a
3935
- # target.
3928
+ # The HTTP or gRPC codes to use when checking for a successful
3929
+ # response from a target.
3936
3930
  # @return [Types::Matcher]
3937
3931
  #
3938
3932
  # @!attribute [rw] load_balancer_arns
@@ -3947,6 +3941,11 @@ module Aws::ElasticLoadBalancingV2
3947
3941
  # address).
3948
3942
  # @return [String]
3949
3943
  #
3944
+ # @!attribute [rw] protocol_version
3945
+ # \[HTTP/HTTPS protocol\] The protocol version. The possible values
3946
+ # are `GRPC`, `HTTP1`, and `HTTP2`.
3947
+ # @return [String]
3948
+ #
3950
3949
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/TargetGroup AWS API Documentation
3951
3950
  #
3952
3951
  class TargetGroup < Struct.new(
@@ -3965,7 +3964,8 @@ module Aws::ElasticLoadBalancingV2
3965
3964
  :health_check_path,
3966
3965
  :matcher,
3967
3966
  :load_balancer_arns,
3968
- :target_type)
3967
+ :target_type,
3968
+ :protocol_version)
3969
3969
  SENSITIVE = []
3970
3970
  include Aws::Structure
3971
3971
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-elasticloadbalancingv2
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.49.0
4
+ version: 1.54.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-25 00:00:00.000000000 Z
11
+ date: 2020-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.99.0
22
+ version: 3.109.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.99.0
32
+ version: 3.109.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement