ApplicationTargetGroupProps Struct
Properties for defining an Application Target Group.
Example
declare const vpc: ec2.Vpc;
const tg = new elbv2.ApplicationTargetGroup(this, 'TG', {
targetType: elbv2.TargetType.IP,
port: 50051,
protocol: elbv2.ApplicationProtocol.HTTP,
protocolVersion: elbv2.ApplicationProtocolVersion.GRPC,
healthCheck: {
enabled: true,
healthyGrpcCodes: '0-99',
},
vpc,
});
Properties
crossZoneEnabledoptionalbooleancross_zone_enabledoptionalboolcrossZoneEnabledoptionalBooleanCrossZoneEnabledoptionalboolCrossZoneEnabledoptional*bool#Default: use load balancer configuration
deregistrationDelayoptionalDurationderegistration_delayoptionalDurationderegistrationDelayoptionalDurationDeregistrationDelayoptionalDurationDeregistrationDelayoptionalDuration= 300#The range is 0-3600 seconds.
enableAnomalyMitigationoptionalbooleanenable_anomaly_mitigationoptionalboolenableAnomalyMitigationoptionalBooleanEnableAnomalyMitigationoptionalboolEnableAnomalyMitigationoptional*bool= false#Only available when loadBalancingAlgorithmType is TargetGroupLoadBalancingAlgorithmType.WEIGHTED_RANDOM
healthCheckoptionalHealthCheckhealth_checkoptionalHealthCheckhealthCheckoptionalHealthCheckHealthCheckoptionalHealthCheckHealthCheckoptionalHealthCheck#Default: The default value for each property in this configuration varies depending on the target.
ipAddressTypeoptionalTargetGroupIpAddressTypeip_address_typeoptionalTargetGroupIpAddressTypeipAddressTypeoptionalTargetGroupIpAddressTypeIpAddressTypeoptionalTargetGroupIpAddressTypeIpAddressTypeoptionalTargetGroupIpAddressType#Default: undefined - ELB defaults to IPv4
loadBalancingAlgorithmTypeoptionalTargetGroupLoadBalancingAlgorithmTypeload_balancing_algorithm_typeoptionalTargetGroupLoadBalancingAlgorithmTypeloadBalancingAlgorithmTypeoptionalTargetGroupLoadBalancingAlgorithmTypeLoadBalancingAlgorithmTypeoptionalTargetGroupLoadBalancingAlgorithmTypeLoadBalancingAlgorithmTypeoptionalTargetGroupLoadBalancingAlgorithmType#Default: TargetGroupLoadBalancingAlgorithmType.ROUND_ROBIN
multiValueHeadersEnabledoptionalbooleanmulti_value_headers_enabledoptionalboolmultiValueHeadersEnabledoptionalBooleanMultiValueHeadersEnabledoptionalboolMultiValueHeadersEnabledoptional*bool= false#If the value is true, the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings.
Only applicable for Lambda targets.
Default: Determined from protocol if known
This is not applicable for Lambda targets.
protocoloptionalApplicationProtocolprotocoloptionalApplicationProtocolprotocoloptionalApplicationProtocolProtocoloptionalApplicationProtocolProtocoloptionalApplicationProtocol#Default: Determined from port if known
This is not applicable for Lambda targets.
protocolVersionoptionalApplicationProtocolVersionprotocol_versionoptionalApplicationProtocolVersionprotocolVersionoptionalApplicationProtocolVersionProtocolVersionoptionalApplicationProtocolVersionProtocolVersionoptionalApplicationProtocolVersion= ApplicationProtocolVersion.HTTP1#slowStartoptionalDurationslow_startoptionalDurationslowStartoptionalDurationSlowStartoptionalDurationSlowStartoptionalDuration= 0#The range is 30-900 seconds (15 minutes).
stickinessCookieDurationoptionalDurationstickiness_cookie_durationoptionalDurationstickinessCookieDurationoptionalDurationStickinessCookieDurationoptionalDurationStickinessCookieDurationoptionalDuration#Default: Stickiness is disabled
Setting this value enables load balancer stickiness.
After this period, the cookie is considered stale. The minimum value is 1 second and the maximum value is 7 days (604800 seconds).
stickinessCookieNameoptionalstringstickiness_cookie_nameoptionalstrstickinessCookieNameoptionalStringStickinessCookieNameoptionalstringStickinessCookieNameoptional*string#Default: If stickinessCookieDuration is set, a load-balancer generated cookie is used. Otherwise, no stickiness is defined.
notes
Names that start with the following prefixes are not allowed: AWSALB, AWSALBAPP, and AWSALBTG; they're reserved for use by the load balancer.
Note: stickinessCookieName parameter depends on the presence of stickinessCookieDuration parameter. If stickinessCookieDuration is not set, stickinessCookieName will be omitted.
targetGroupHealthoptionalTargetGroupHealthtarget_group_healthoptionalTargetGroupHealthtargetGroupHealthoptionalTargetGroupHealthTargetGroupHealthoptionalTargetGroupHealthTargetGroupHealthoptionalTargetGroupHealth#Default: use default configuration
targetGroupNameoptionalstringtarget_group_nameoptionalstrtargetGroupNameoptionalStringTargetGroupNameoptionalstringTargetGroupNameoptional*string#Default: Automatically generated.
This name must be unique per region per account, can have a maximum of 32 characters, must contain only alphanumeric characters or hyphens, and must not begin or end with a hyphen.
targetsoptionalIApplicationLoadBalancerTarget[]targetsoptionaltyping.List[IApplicationLoadBalancerTarget]targetsoptionalList<IApplicationLoadBalancerTarget>TargetsoptionalIApplicationLoadBalancerTarget[]Targetsoptional*[]IApplicationLoadBalancerTarget#Default: No targets.
Can be Instance, IPAddress, or any self-registering load balancing target. If you use either Instance or IPAddress as targets, all target must be of the same type.
targetTypeoptionalTargetTypetarget_typeoptionalTargetTypetargetTypeoptionalTargetTypeTargetTypeoptionalTargetTypeTargetTypeoptionalTargetType#Default: Determined automatically.
All targets registered into the group must be of this type. If you register targets to the TargetGroup in the CDK app, the TargetType is determined automatically.