Skip to main content

target_groups

Creates, updates, deletes or gets a target_group resource or lists target_groups in a region

Overview

Nametarget_groups
TypeResource
DescriptionResource Type definition for AWS::ElasticLoadBalancingV2::TargetGroup
Idaws.elasticloadbalancingv2.target_groups

Fields

NameDatatypeDescription
ip_address_typestringThe type of IP address used for this target group. The possible values are ipv4 and ipv6.
health_check_interval_secondsintegerThe approximate amount of time, in seconds, between health checks of an individual target.
load_balancer_arnsarrayThe Amazon Resource Names (ARNs) of the load balancers that route traffic to this target group.
matcherobject[HTTP/HTTPS health checks] The HTTP or gRPC codes to use when checking for a successful response from a target.
health_check_pathstring[HTTP/HTTPS health checks] The destination for health checks on the targets. [HTTP1 or HTTP2 protocol version] The ping path. The default is /. [GRPC protocol version] The path of a custom health check method with the format /package.service/method. The default is /AWS.ALB/healthcheck.
portintegerThe port on which the targets receive traffic. This port is used unless you specify a port override when registering the target. If the target is a Lambda function, this parameter does not apply. If the protocol is GENEVE, the supported port is 6081.
targetsarrayThe targets.
health_check_enabledbooleanIndicates whether health checks are enabled. If the target type is lambda, health checks are disabled by default but can be enabled. If the target type is instance, ip, or alb, health checks are always enabled and cannot be disabled.
protocol_versionstring[HTTP/HTTPS protocol] The protocol version. The possible values are GRPC, HTTP1, and HTTP2.
unhealthy_threshold_countintegerThe number of consecutive health check failures required before considering a target unhealthy.
health_check_timeout_secondsintegerThe amount of time, in seconds, during which no response from a target means a failed health check.
namestringThe name of the target group.
vpc_idstringThe identifier of the virtual private cloud (VPC). If the target is a Lambda function, this parameter does not apply.
target_group_full_namestringThe full name of the target group.
healthy_threshold_countintegerThe number of consecutive health checks successes required before considering an unhealthy target healthy.
health_check_protocolstringThe protocol the load balancer uses when performing health checks on targets.
target_group_attributesarrayThe attributes.
target_typestringThe type of target that you must specify when registering targets with this target group. You can't specify targets for a target group using more than one target type.
health_check_portstringThe port the load balancer uses when performing health checks on targets.
target_group_arnstringThe ARN of the Target Group
protocolstringThe protocol to use for routing traffic to the targets.
target_group_namestringThe name of the target group.
tagsarrayThe tags.
regionstringAWS region.

Methods

NameAccessible byRequired Params
create_resourceINSERTregion
delete_resourceDELETEdata__Identifier, region
update_resourceUPDATEdata__Identifier, data__PatchDocument, region
list_resourcesSELECTregion
get_resourceSELECTdata__Identifier, region

SELECT examples

Gets all target_groups in a region.

SELECT
region,
ip_address_type,
health_check_interval_seconds,
load_balancer_arns,
matcher,
health_check_path,
port,
targets,
health_check_enabled,
protocol_version,
unhealthy_threshold_count,
health_check_timeout_seconds,
name,
vpc_id,
target_group_full_name,
healthy_threshold_count,
health_check_protocol,
target_group_attributes,
target_type,
health_check_port,
target_group_arn,
protocol,
target_group_name,
tags
FROM aws.elasticloadbalancingv2.target_groups
WHERE region = 'us-east-1';

Gets all properties from an individual target_group.

SELECT
region,
ip_address_type,
health_check_interval_seconds,
load_balancer_arns,
matcher,
health_check_path,
port,
targets,
health_check_enabled,
protocol_version,
unhealthy_threshold_count,
health_check_timeout_seconds,
name,
vpc_id,
target_group_full_name,
healthy_threshold_count,
health_check_protocol,
target_group_attributes,
target_type,
health_check_port,
target_group_arn,
protocol,
target_group_name,
tags
FROM aws.elasticloadbalancingv2.target_groups
WHERE region = 'us-east-1' AND data__Identifier = '<TargetGroupArn>';

INSERT example

Use the following StackQL query and manifest file to create a new target_group resource, using stack-deploy.

/*+ create */
INSERT INTO aws.elasticloadbalancingv2.target_groups (
IpAddressType,
HealthCheckIntervalSeconds,
Matcher,
HealthCheckPath,
Port,
Targets,
HealthCheckEnabled,
ProtocolVersion,
UnhealthyThresholdCount,
HealthCheckTimeoutSeconds,
Name,
VpcId,
HealthyThresholdCount,
HealthCheckProtocol,
TargetGroupAttributes,
TargetType,
HealthCheckPort,
Protocol,
Tags,
region
)
SELECT
'{{ IpAddressType }}',
'{{ HealthCheckIntervalSeconds }}',
'{{ Matcher }}',
'{{ HealthCheckPath }}',
'{{ Port }}',
'{{ Targets }}',
'{{ HealthCheckEnabled }}',
'{{ ProtocolVersion }}',
'{{ UnhealthyThresholdCount }}',
'{{ HealthCheckTimeoutSeconds }}',
'{{ Name }}',
'{{ VpcId }}',
'{{ HealthyThresholdCount }}',
'{{ HealthCheckProtocol }}',
'{{ TargetGroupAttributes }}',
'{{ TargetType }}',
'{{ HealthCheckPort }}',
'{{ Protocol }}',
'{{ Tags }}',
'{{ region }}';

DELETE example

/*+ delete */
DELETE FROM aws.elasticloadbalancingv2.target_groups
WHERE data__Identifier = '<TargetGroupArn>'
AND region = 'us-east-1';

Permissions

To operate on the target_groups resource, the following permissions are required:

Create

elasticloadbalancing:CreateTargetGroup,
elasticloadbalancing:DescribeTargetGroups,
elasticloadbalancing:RegisterTargets,
elasticloadbalancing:ModifyTargetGroupAttributes,
elasticloadbalancing:DescribeTargetHealth,
elasticloadbalancing:AddTags

Delete

elasticloadbalancing:DeleteTargetGroup,
elasticloadbalancing:DescribeTargetGroups

List

elasticloadbalancing:DescribeTargetGroups

Read

elasticloadbalancing:DescribeTargetGroups,
elasticloadbalancing:DescribeTargetGroupAttributes,
elasticloadbalancing:DescribeTargetHealth,
elasticloadbalancing:DescribeTags

Update

elasticloadbalancing:DescribeTargetGroups,
elasticloadbalancing:ModifyTargetGroup,
elasticloadbalancing:ModifyTargetGroupAttributes,
elasticloadbalancing:RegisterTargets,
elasticloadbalancing:DescribeTargetHealth,
elasticloadbalancing:DeregisterTargets,
elasticloadbalancing:AddTags,
elasticloadbalancing:RemoveTags