Skip to content

Commit 5dd3fca

Browse files
author
awstools
committed
docs(client-elastic-load-balancing-v2): Provides new target group attributes to turn on/off cross zone load balancing and configure target group health for Network Load Balancers and Application Load Balancers. Provides improvements to health check configuration for Network Load Balancers.
1 parent 4f00f1a commit 5dd3fca

File tree

4 files changed

+401
-367
lines changed

4 files changed

+401
-367
lines changed

clients/client-elastic-load-balancing-v2/src/ElasticLoadBalancingV2.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1175,8 +1175,6 @@ export class ElasticLoadBalancingV2 extends ElasticLoadBalancingV2Client {
11751175
/**
11761176
* <p>Modifies the health checks used when evaluating the health state of the targets in the
11771177
* specified target group.</p>
1178-
* <p>If the protocol of the target group is TCP, TLS, UDP, or TCP_UDP, you can't modify the
1179-
* health check protocol, interval, timeout, or success codes.</p>
11801178
*/
11811179
public modifyTargetGroup(
11821180
args: ModifyTargetGroupCommandInput,

clients/client-elastic-load-balancing-v2/src/commands/ModifyTargetGroupCommand.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ export interface ModifyTargetGroupCommandOutput extends ModifyTargetGroupOutput,
3535
/**
3636
* <p>Modifies the health checks used when evaluating the health state of the targets in the
3737
* specified target group.</p>
38-
* <p>If the protocol of the target group is TCP, TLS, UDP, or TCP_UDP, you can't modify the
39-
* health check protocol, interval, timeout, or success codes.</p>
4038
* @example
4139
* Use a bare-bones client and the command you need to make an API call.
4240
* ```javascript

clients/client-elastic-load-balancing-v2/src/models/models_0.ts

Lines changed: 104 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ export interface TargetGroupStickinessConfig {
229229
*/
230230
export interface ForwardActionConfig {
231231
/**
232-
* <p>One or more target groups. For Network Load Balancers, you can specify a single target
232+
* <p>The target groups. For Network Load Balancers, you can specify a single target
233233
* group.</p>
234234
*/
235235
TargetGroups?: TargetGroupTuple[];
@@ -1560,7 +1560,7 @@ export class TooManyLoadBalancersException extends __BaseException {
15601560
*/
15611561
export interface HostHeaderConditionConfig {
15621562
/**
1563-
* <p>One or more host names. The maximum size of each name is 128 characters. The comparison is
1563+
* <p>The host names. The maximum size of each name is 128 characters. The comparison is
15641564
* case insensitive. The following wildcard characters are supported: * (matches 0 or more
15651565
* characters) and ? (matches exactly 1 character).</p>
15661566
* <p>If you specify multiple strings, the condition is satisfied if one of the strings matches
@@ -1584,7 +1584,7 @@ export interface HttpHeaderConditionConfig {
15841584
HttpHeaderName?: string;
15851585

15861586
/**
1587-
* <p>One or more strings to compare against the value of the HTTP header. The maximum size of
1587+
* <p>The strings to compare against the value of the HTTP header. The maximum size of
15881588
* each string is 128 characters. The comparison strings are case insensitive. The following
15891589
* wildcard characters are supported: * (matches 0 or more characters) and ? (matches exactly 1
15901590
* character).</p>
@@ -1620,7 +1620,7 @@ export interface HttpRequestMethodConditionConfig {
16201620
*/
16211621
export interface PathPatternConditionConfig {
16221622
/**
1623-
* <p>One or more path patterns to compare against the request URL. The maximum size of each
1623+
* <p>The path patterns to compare against the request URL. The maximum size of each
16241624
* string is 128 characters. The comparison is case sensitive. The following wildcard characters
16251625
* are supported: * (matches 0 or more characters) and ? (matches exactly 1 character).</p>
16261626
* <p>If you specify multiple strings, the condition is satisfied if one of them matches the
@@ -1654,7 +1654,7 @@ export interface QueryStringKeyValuePair {
16541654
*/
16551655
export interface QueryStringConditionConfig {
16561656
/**
1657-
* <p>One or more key/value pairs or values to find in the query string. The maximum size of
1657+
* <p>The key/value pairs or values to find in the query string. The maximum size of
16581658
* each string is 128 characters. The comparison is case insensitive. The following wildcard
16591659
* characters are supported: * (matches 0 or more characters) and ? (matches exactly 1
16601660
* character). To search for a literal '*' or '?' character in a query string, you must escape
@@ -1673,7 +1673,7 @@ export interface QueryStringConditionConfig {
16731673
*/
16741674
export interface SourceIpConditionConfig {
16751675
/**
1676-
* <p>One or more source IP addresses, in CIDR format. You can use both IPv4 and IPv6 addresses.
1676+
* <p>The source IP addresses, in CIDR format. You can use both IPv4 and IPv6 addresses.
16771677
* Wildcards are not supported.</p>
16781678
* <p>If you specify multiple addresses, the condition is satisfied if the source IP address of
16791679
* the request matches one of the CIDR blocks. This condition is not satisfied by the addresses
@@ -1956,10 +1956,11 @@ export enum TargetGroupIpAddressTypeEnum {
19561956
*/
19571957
export interface Matcher {
19581958
/**
1959-
* <p>For Application Load Balancers, you can specify values between 200 and 499, and the
1960-
* default value is 200. You can specify multiple values (for example, "200,202") or a range of
1961-
* values (for example, "200-299").</p>
1962-
* <p>For Network Load Balancers and Gateway Load Balancers, this must be "200–399".</p>
1959+
* <p>For Application Load Balancers, you can specify values between 200 and 499, with the
1960+
* default value being 200. You can specify multiple values (for example, "200,202") or a range of values (for example, "200-299").</p>
1961+
* <p>For Network Load Balancers, you can specify values between 200 and 599, with the
1962+
* default value being 200-399. You can specify multiple values (for example, "200,202") or a range of values (for example, "200-299").</p>
1963+
* <p>For Gateway Load Balancers, this must be "200–399".</p>
19631964
* <p>Note that when using shorthand syntax, some values such as commas need to be
19641965
* escaped.</p>
19651966
*/
@@ -2051,44 +2052,43 @@ export interface CreateTargetGroupInput {
20512052
HealthCheckPath?: string;
20522053

20532054
/**
2054-
* <p>The approximate amount of time, in seconds, between health checks of an individual target.
2055-
* If the target group protocol is HTTP or HTTPS, the default is 30 seconds.
2056-
* If the target group protocol is TCP, TLS, UDP, or TCP_UDP, the supported values are 10 and 30
2057-
* seconds and the default is 30 seconds.
2055+
* <p>The approximate amount of time, in seconds, between health checks of an individual target. The range is 5-300.
2056+
* If the target group protocol is TCP, TLS, UDP, TCP_UDP, HTTP or HTTPS, the default is 30 seconds.
20582057
* If the target group protocol is GENEVE, the default is 10 seconds.
20592058
* If the target type is <code>lambda</code>, the default is 35 seconds.</p>
20602059
*/
20612060
HealthCheckIntervalSeconds?: number;
20622061

20632062
/**
20642063
* <p>The amount of time, in seconds, during which no response from a target means a failed
2065-
* health check. For target groups with a protocol of HTTP, HTTPS, or GENEVE, the default is 5
2066-
* seconds. For target groups with a protocol of TCP or TLS, this value must be 6 seconds for
2067-
* HTTP health checks and 10 seconds for TCP and HTTPS health checks. If the target type is
2068-
* <code>lambda</code>, the default is 30 seconds.</p>
2064+
* health check. The range is 2–120 seconds. For target groups with a protocol of HTTP, the
2065+
* default is 6 seconds. For target groups with a protocol of TCP, TLS or HTTPS, the default
2066+
* is 10 seconds. For target groups with a protocol of GENEVE, the default is 5 seconds. If
2067+
* the target type is <code>lambda</code>, the default is 30 seconds.</p>
20692068
*/
20702069
HealthCheckTimeoutSeconds?: number;
20712070

20722071
/**
2073-
* <p>The number of consecutive health checks successes required before considering an unhealthy
2074-
* target healthy. For target groups with a protocol of HTTP or HTTPS, the default is 5. For
2075-
* target groups with a protocol of TCP, TLS, or GENEVE, the default is 3. If the target type is
2076-
* <code>lambda</code>, the default is 5.</p>
2072+
* <p>The number of consecutive health check successes required before considering a target healthy. The range is
2073+
* 2-10. If the target group protocol is TCP, TCP_UDP, UDP, TLS, HTTP or HTTPS, the default is 5. For target groups
2074+
* with a protocol of GENEVE, the default is 3. If the target type
2075+
* is <code>lambda</code>, the default is 5.</p>
20772076
*/
20782077
HealthyThresholdCount?: number;
20792078

20802079
/**
2081-
* <p>The number of consecutive health check failures required before considering a target
2082-
* unhealthy. If the target group protocol is HTTP or HTTPS, the default is 2. If the target
2083-
* group protocol is TCP or TLS, this value must be the same as the healthy threshold count. If
2084-
* the target group protocol is GENEVE, the default is 3. If the target type is
2085-
* <code>lambda</code>, the default is 2.</p>
2080+
* <p>The number of consecutive health check failures required before considering a target unhealthy. The range is
2081+
* 2-10. If the target group protocol is TCP, TCP_UDP, UDP, TLS, HTTP or HTTPS, the default is 2. For target groups
2082+
* with a protocol of GENEVE, the default is 3. If the target type
2083+
* is <code>lambda</code>, the default is 5.</p>
20862084
*/
20872085
UnhealthyThresholdCount?: number;
20882086

20892087
/**
20902088
* <p>[HTTP/HTTPS health checks] The HTTP or gRPC codes to use when checking for a successful
2091-
* response from a target.</p>
2089+
* response from a target. For target groups with a protocol of TCP, TCP_UDP, UDP or TLS the range
2090+
* is 200-599. For target groups with a protocol of HTTP or HTTPS, the range is 200-499. For target
2091+
* groups with a protocol of GENEVE, the range is 200-399.</p>
20922092
*/
20932093
Matcher?: Matcher;
20942094

@@ -2331,14 +2331,22 @@ export interface TargetDescription {
23312331
* <p>An Availability Zone or <code>all</code>. This determines whether the target receives
23322332
* traffic from the load balancer nodes in the specified Availability Zone or from all enabled
23332333
* Availability Zones for the load balancer.</p>
2334+
*
2335+
* <p>For Application Load Balancer target groups, the specified Availability Zone value is only applicable
2336+
* when cross-zone load balancing is off. Otherwise the parameter is ignored and treated
2337+
* as <code>all</code>.</p>
2338+
*
23342339
* <p>This parameter is not supported if the target type of the target group is
2335-
* <code>instance</code> or <code>alb</code>.</p>
2336-
* <p>If the target type is <code>ip</code> and the IP address is in a subnet of the VPC for the
2337-
* target group, the Availability Zone is automatically detected and this parameter is optional.
2338-
* If the IP address is outside the VPC, this parameter is required.</p>
2339-
* <p>With an Application Load Balancer, if the target type is <code>ip</code> and the IP
2340-
* address is outside the VPC for the target group, the only supported value is
2341-
* <code>all</code>.</p>
2340+
* <code>instance</code> or <code>alb</code>.</p>
2341+
*
2342+
* <p>If the target type is <code>ip</code> and the IP address is in a subnet of the VPC for the target group,
2343+
* the Availability Zone is automatically detected and this parameter is optional. If the IP address is outside
2344+
* the VPC, this parameter is required.</p>
2345+
*
2346+
* <p>For Application Load Balancer target groups with cross-zone load balancing off, if the target type
2347+
* is <code>ip</code> and the IP address is outside of the VPC for the target group, this should be an
2348+
* Availability Zone inside the VPC for the target group.</p>
2349+
*
23422350
* <p>If the target type is <code>lambda</code>, this parameter is optional and the only
23432351
* supported value is <code>all</code>.</p>
23442352
*/
@@ -2561,14 +2569,21 @@ export interface LoadBalancerAttribute {
25612569
/**
25622570
* <p>The name of the attribute.</p>
25632571
*
2564-
* <p>The following attribute is supported by all load balancers:</p>
2572+
* <p>The following attributes are supported by all load balancers:</p>
25652573
* <ul>
25662574
* <li>
25672575
* <p>
25682576
* <code>deletion_protection.enabled</code> - Indicates whether deletion protection is
25692577
* enabled. The value is <code>true</code> or <code>false</code>. The default is
25702578
* <code>false</code>.</p>
25712579
* </li>
2580+
* <li>
2581+
* <p>
2582+
* <code>load_balancing.cross_zone.enabled</code> - Indicates whether cross-zone load
2583+
* balancing is enabled. The possible values are <code>true</code> and <code>false</code>.
2584+
* The default for Network Load Balancers and Gateway Load Balancers is <code>false</code>.
2585+
* The default for Application Load Balancers is <code>true</code>, and cannot be changed.</p>
2586+
* </li>
25722587
* </ul>
25732588
*
25742589
* <p>The following attributes are supported by both Application Load Balancers and Network Load
@@ -2686,17 +2701,6 @@ export interface LoadBalancerAttribute {
26862701
* default is <code>false</code>.</p>
26872702
* </li>
26882703
* </ul>
2689-
*
2690-
* <p>The following attribute is supported by Network Load Balancers and Gateway Load
2691-
* Balancers:</p>
2692-
* <ul>
2693-
* <li>
2694-
* <p>
2695-
* <code>load_balancing.cross_zone.enabled</code> - Indicates whether cross-zone load
2696-
* balancing is enabled. The possible values are <code>true</code> and <code>false</code>.
2697-
* The default is <code>false</code>.</p>
2698-
* </li>
2699-
* </ul>
27002704
*/
27012705
Key?: string;
27022706

@@ -2892,7 +2896,7 @@ export interface TargetGroupAttribute {
28922896
/**
28932897
* <p>The name of the attribute.</p>
28942898
*
2895-
* <p>The following attribute is supported by all load balancers:</p>
2899+
* <p>The following attributes are supported by all load balancers:</p>
28962900
* <ul>
28972901
* <li>
28982902
* <p>
@@ -2902,11 +2906,6 @@ export interface TargetGroupAttribute {
29022906
* default value is 300 seconds. If the target is a Lambda function, this attribute is not
29032907
* supported.</p>
29042908
* </li>
2905-
* </ul>
2906-
*
2907-
* <p>The following attributes are supported by Application Load Balancers, Network Load
2908-
* Balancers, and Gateway Load Balancers:</p>
2909-
* <ul>
29102909
* <li>
29112910
* <p>
29122911
* <code>stickiness.enabled</code> - Indicates whether target stickiness is enabled. The
@@ -2915,8 +2914,7 @@ export interface TargetGroupAttribute {
29152914
* </li>
29162915
* <li>
29172916
* <p>
2918-
* <code>stickiness.type</code> - Indicates the type of stickiness. The possible values
2919-
* are: </p>
2917+
* <code>stickiness.type</code> - Indicates the type of stickiness. The possible values are:</p>
29202918
* <ul>
29212919
* <li>
29222920
* <p>
@@ -2928,13 +2926,56 @@ export interface TargetGroupAttribute {
29282926
* </li>
29292927
* <li>
29302928
* <p>
2931-
* <code>source_ip_dest_ip</code> and <code>source_ip_dest_ip_proto</code> for Gateway Load
2932-
* Balancers.</p>
2929+
* <code>source_ip_dest_ip</code> and <code>source_ip_dest_ip_proto</code> for Gateway Load Balancers.</p>
29332930
* </li>
29342931
* </ul>
29352932
* </li>
29362933
* </ul>
29372934
*
2935+
* <p>The following attributes are supported by Application Load Balancers and
2936+
* Network Load Balancers:</p>
2937+
* <ul>
2938+
* <li>
2939+
* <p>
2940+
* <code>load_balancing.cross_zone.enabled</code> - Indicates whether cross zone load
2941+
* balancing is enabled. The value is <code>true</code>, <code>false</code> or
2942+
* <code>use_load_balancer_configuration</code>. The default is
2943+
* <code>use_load_balancer_configuration</code>.</p>
2944+
* </li>
2945+
* <li>
2946+
* <p>
2947+
* <code>target_group_health.dns_failover.minimum_healthy_targets.count</code> -
2948+
* The minimum number of targets that must be healthy.
2949+
* If the number of healthy targets is below this value, mark the zone as unhealthy
2950+
* in DNS, so that traffic is routed only to healthy zones. The possible values are
2951+
* <code>off</code> or an integer from 1 to the maximum number of targets.
2952+
* The default is <code>off</code>.</p>
2953+
* </li>
2954+
* <li>
2955+
* <p>
2956+
* <code>target_group_health.dns_failover.minimum_healthy_targets.percentage</code> -
2957+
* The minimum percentage of targets that must be healthy.
2958+
* If the percentage of healthy targets is below this value, mark the zone as unhealthy
2959+
* in DNS, so that traffic is routed only to healthy zones. The possible values are
2960+
* <code>off</code> or an integer from 1 to 100. The default is <code>off</code>.</p>
2961+
* </li>
2962+
* <li>
2963+
* <p>
2964+
* <code>target_group_health.unhealthy_state_routing.minimum_healthy_targets.count</code> -
2965+
* The minimum number of targets that must be healthy.
2966+
* If the number of healthy targets is below this value, send traffic to all targets, including unhealthy targets.
2967+
* The possible values are 1 to the maximum number of targets. The default is 1.</p>
2968+
* </li>
2969+
* <li>
2970+
* <p>
2971+
* <code>target_group_health.unhealthy_state_routing.minimum_healthy_targets.percentage</code> -
2972+
* The minimum percentage of targets that must be healthy.
2973+
* If the percentage of healthy targets is below this value, send traffic to all targets, including unhealthy targets.
2974+
* The possible values are <code>off</code> or an integer from 1 to 100.
2975+
* The default is <code>off</code>.</p>
2976+
* </li>
2977+
* </ul>
2978+
*
29382979
* <p>The following attributes are supported only if the load balancer is an Application Load
29392980
* Balancer and the target is an instance or an IP address:</p>
29402981
* <ul>
@@ -3013,6 +3054,7 @@ export interface TargetGroupAttribute {
30133054
* <code>false</code>. </p>
30143055
* </li>
30153056
* </ul>
3057+
*
30163058
* <p>The following attributes are supported only by Gateway Load Balancers:</p>
30173059
* <ul>
30183060
* <li>
@@ -3453,8 +3495,7 @@ export interface ModifyTargetGroupInput {
34533495
HealthCheckEnabled?: boolean;
34543496

34553497
/**
3456-
* <p>The approximate amount of time, in seconds, between health checks of an individual target.
3457-
* For TCP health checks, the supported values are 10 or 30 seconds.</p>
3498+
* <p>The approximate amount of time, in seconds, between health checks of an individual target.</p>
34583499
*/
34593500
HealthCheckIntervalSeconds?: number;
34603501

@@ -3472,14 +3513,15 @@ export interface ModifyTargetGroupInput {
34723513

34733514
/**
34743515
* <p>The number of consecutive health check failures required before considering the target
3475-
* unhealthy. For target groups with a protocol of TCP or TLS, this value must be the same as the
3476-
* healthy threshold count.</p>
3516+
* unhealthy.</p>
34773517
*/
34783518
UnhealthyThresholdCount?: number;
34793519

34803520
/**
34813521
* <p>[HTTP/HTTPS health checks] The HTTP or gRPC codes to use when checking for a successful
3482-
* response from a target.</p>
3522+
* response from a target. For target groups with a protocol of TCP, TCP_UDP, UDP or TLS the range
3523+
* is 200-599. For target groups with a protocol of HTTP or HTTPS, the range is 200-499. For target
3524+
* groups with a protocol of GENEVE, the range is 200-399.</p>
34833525
*/
34843526
Matcher?: Matcher;
34853527
}

0 commit comments

Comments
 (0)