Package com.pulumi.aws.alb
Class TargetGroupArgs.Builder
- java.lang.Object
-
- com.pulumi.aws.alb.TargetGroupArgs.Builder
-
- Enclosing class:
- TargetGroupArgs
public static final class TargetGroupArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
Builder(TargetGroupArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description TargetGroupArgs
build()
TargetGroupArgs.Builder
connectionTermination(com.pulumi.core.Output<java.lang.Boolean> connectionTermination)
TargetGroupArgs.Builder
connectionTermination(java.lang.Boolean connectionTermination)
TargetGroupArgs.Builder
deregistrationDelay(com.pulumi.core.Output<java.lang.Integer> deregistrationDelay)
TargetGroupArgs.Builder
deregistrationDelay(java.lang.Integer deregistrationDelay)
TargetGroupArgs.Builder
healthCheck(TargetGroupHealthCheckArgs healthCheck)
TargetGroupArgs.Builder
healthCheck(com.pulumi.core.Output<TargetGroupHealthCheckArgs> healthCheck)
TargetGroupArgs.Builder
ipAddressType(com.pulumi.core.Output<java.lang.String> ipAddressType)
TargetGroupArgs.Builder
ipAddressType(java.lang.String ipAddressType)
TargetGroupArgs.Builder
lambdaMultiValueHeadersEnabled(com.pulumi.core.Output<java.lang.Boolean> lambdaMultiValueHeadersEnabled)
TargetGroupArgs.Builder
lambdaMultiValueHeadersEnabled(java.lang.Boolean lambdaMultiValueHeadersEnabled)
TargetGroupArgs.Builder
loadBalancingAlgorithmType(com.pulumi.core.Output<java.lang.String> loadBalancingAlgorithmType)
TargetGroupArgs.Builder
loadBalancingAlgorithmType(java.lang.String loadBalancingAlgorithmType)
TargetGroupArgs.Builder
loadBalancingCrossZoneEnabled(com.pulumi.core.Output<java.lang.String> loadBalancingCrossZoneEnabled)
TargetGroupArgs.Builder
loadBalancingCrossZoneEnabled(java.lang.String loadBalancingCrossZoneEnabled)
TargetGroupArgs.Builder
name(com.pulumi.core.Output<java.lang.String> name)
TargetGroupArgs.Builder
name(java.lang.String name)
TargetGroupArgs.Builder
namePrefix(com.pulumi.core.Output<java.lang.String> namePrefix)
TargetGroupArgs.Builder
namePrefix(java.lang.String namePrefix)
TargetGroupArgs.Builder
port(com.pulumi.core.Output<java.lang.Integer> port)
TargetGroupArgs.Builder
port(java.lang.Integer port)
TargetGroupArgs.Builder
preserveClientIp(com.pulumi.core.Output<java.lang.String> preserveClientIp)
TargetGroupArgs.Builder
preserveClientIp(java.lang.String preserveClientIp)
TargetGroupArgs.Builder
protocol(com.pulumi.core.Output<java.lang.String> protocol)
TargetGroupArgs.Builder
protocol(java.lang.String protocol)
TargetGroupArgs.Builder
protocolVersion(com.pulumi.core.Output<java.lang.String> protocolVersion)
TargetGroupArgs.Builder
protocolVersion(java.lang.String protocolVersion)
TargetGroupArgs.Builder
proxyProtocolV2(com.pulumi.core.Output<java.lang.Boolean> proxyProtocolV2)
TargetGroupArgs.Builder
proxyProtocolV2(java.lang.Boolean proxyProtocolV2)
TargetGroupArgs.Builder
slowStart(com.pulumi.core.Output<java.lang.Integer> slowStart)
TargetGroupArgs.Builder
slowStart(java.lang.Integer slowStart)
TargetGroupArgs.Builder
stickiness(TargetGroupStickinessArgs stickiness)
TargetGroupArgs.Builder
stickiness(com.pulumi.core.Output<TargetGroupStickinessArgs> stickiness)
TargetGroupArgs.Builder
tags(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
TargetGroupArgs.Builder
tags(java.util.Map<java.lang.String,java.lang.String> tags)
TargetGroupArgs.Builder
targetFailovers(TargetGroupTargetFailoverArgs... targetFailovers)
TargetGroupArgs.Builder
targetFailovers(com.pulumi.core.Output<java.util.List<TargetGroupTargetFailoverArgs>> targetFailovers)
TargetGroupArgs.Builder
targetFailovers(java.util.List<TargetGroupTargetFailoverArgs> targetFailovers)
TargetGroupArgs.Builder
targetHealthStates(TargetGroupTargetHealthStateArgs... targetHealthStates)
TargetGroupArgs.Builder
targetHealthStates(com.pulumi.core.Output<java.util.List<TargetGroupTargetHealthStateArgs>> targetHealthStates)
TargetGroupArgs.Builder
targetHealthStates(java.util.List<TargetGroupTargetHealthStateArgs> targetHealthStates)
TargetGroupArgs.Builder
targetType(com.pulumi.core.Output<java.lang.String> targetType)
TargetGroupArgs.Builder
targetType(java.lang.String targetType)
TargetGroupArgs.Builder
vpcId(com.pulumi.core.Output<java.lang.String> vpcId)
TargetGroupArgs.Builder
vpcId(java.lang.String vpcId)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(TargetGroupArgs defaults)
-
-
Method Detail
-
connectionTermination
public TargetGroupArgs.Builder connectionTermination(@Nullable com.pulumi.core.Output<java.lang.Boolean> connectionTermination)
- Parameters:
connectionTermination
- Whether to terminate connections at the end of the deregistration timeout on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#deregistration-delay) for more information. Default is `false`.- Returns:
- builder
-
connectionTermination
public TargetGroupArgs.Builder connectionTermination(java.lang.Boolean connectionTermination)
- Parameters:
connectionTermination
- Whether to terminate connections at the end of the deregistration timeout on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#deregistration-delay) for more information. Default is `false`.- Returns:
- builder
-
deregistrationDelay
public TargetGroupArgs.Builder deregistrationDelay(@Nullable com.pulumi.core.Output<java.lang.Integer> deregistrationDelay)
- Parameters:
deregistrationDelay
- Amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.- Returns:
- builder
-
deregistrationDelay
public TargetGroupArgs.Builder deregistrationDelay(java.lang.Integer deregistrationDelay)
- Parameters:
deregistrationDelay
- Amount time for Elastic Load Balancing to wait before changing the state of a deregistering target from draining to unused. The range is 0-3600 seconds. The default value is 300 seconds.- Returns:
- builder
-
healthCheck
public TargetGroupArgs.Builder healthCheck(@Nullable com.pulumi.core.Output<TargetGroupHealthCheckArgs> healthCheck)
- Parameters:
healthCheck
- Health Check configuration block. Detailed below.- Returns:
- builder
-
healthCheck
public TargetGroupArgs.Builder healthCheck(TargetGroupHealthCheckArgs healthCheck)
- Parameters:
healthCheck
- Health Check configuration block. Detailed below.- Returns:
- builder
-
ipAddressType
public TargetGroupArgs.Builder ipAddressType(@Nullable com.pulumi.core.Output<java.lang.String> ipAddressType)
- Parameters:
ipAddressType
- The type of IP addresses used by the target group, only supported when target type is set to `ip`. Possible values are `ipv4` or `ipv6`.- Returns:
- builder
-
ipAddressType
public TargetGroupArgs.Builder ipAddressType(java.lang.String ipAddressType)
- Parameters:
ipAddressType
- The type of IP addresses used by the target group, only supported when target type is set to `ip`. Possible values are `ipv4` or `ipv6`.- Returns:
- builder
-
lambdaMultiValueHeadersEnabled
public TargetGroupArgs.Builder lambdaMultiValueHeadersEnabled(@Nullable com.pulumi.core.Output<java.lang.Boolean> lambdaMultiValueHeadersEnabled)
- Parameters:
lambdaMultiValueHeadersEnabled
- Whether the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings. Only applies when `target_type` is `lambda`. Default is `false`.- Returns:
- builder
-
lambdaMultiValueHeadersEnabled
public TargetGroupArgs.Builder lambdaMultiValueHeadersEnabled(java.lang.Boolean lambdaMultiValueHeadersEnabled)
- Parameters:
lambdaMultiValueHeadersEnabled
- Whether the request and response headers exchanged between the load balancer and the Lambda function include arrays of values or strings. Only applies when `target_type` is `lambda`. Default is `false`.- Returns:
- builder
-
loadBalancingAlgorithmType
public TargetGroupArgs.Builder loadBalancingAlgorithmType(@Nullable com.pulumi.core.Output<java.lang.String> loadBalancingAlgorithmType)
- Parameters:
loadBalancingAlgorithmType
- Determines how the load balancer selects targets when routing requests. Only applicable for Application Load Balancer Target Groups. The value is `round_robin` or `least_outstanding_requests`. The default is `round_robin`.- Returns:
- builder
-
loadBalancingAlgorithmType
public TargetGroupArgs.Builder loadBalancingAlgorithmType(java.lang.String loadBalancingAlgorithmType)
- Parameters:
loadBalancingAlgorithmType
- Determines how the load balancer selects targets when routing requests. Only applicable for Application Load Balancer Target Groups. The value is `round_robin` or `least_outstanding_requests`. The default is `round_robin`.- Returns:
- builder
-
loadBalancingCrossZoneEnabled
public TargetGroupArgs.Builder loadBalancingCrossZoneEnabled(@Nullable com.pulumi.core.Output<java.lang.String> loadBalancingCrossZoneEnabled)
- Parameters:
loadBalancingCrossZoneEnabled
- Indicates whether cross zone load balancing is enabled. The value is `"true"`, `"false"` or `"use_load_balancer_configuration"`. The default is `"use_load_balancer_configuration"`.- Returns:
- builder
-
loadBalancingCrossZoneEnabled
public TargetGroupArgs.Builder loadBalancingCrossZoneEnabled(java.lang.String loadBalancingCrossZoneEnabled)
- Parameters:
loadBalancingCrossZoneEnabled
- Indicates whether cross zone load balancing is enabled. The value is `"true"`, `"false"` or `"use_load_balancer_configuration"`. The default is `"use_load_balancer_configuration"`.- Returns:
- builder
-
name
public TargetGroupArgs.Builder name(@Nullable com.pulumi.core.Output<java.lang.String> name)
- Parameters:
name
- Name of the target group. If omitted, this provider will assign a random, unique name. 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.- Returns:
- builder
-
name
public TargetGroupArgs.Builder name(java.lang.String name)
- Parameters:
name
- Name of the target group. If omitted, this provider will assign a random, unique name. 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.- Returns:
- builder
-
namePrefix
public TargetGroupArgs.Builder namePrefix(@Nullable com.pulumi.core.Output<java.lang.String> namePrefix)
- Parameters:
namePrefix
- Creates a unique name beginning with the specified prefix. Conflicts with `name`. Cannot be longer than 6 characters.- Returns:
- builder
-
namePrefix
public TargetGroupArgs.Builder namePrefix(java.lang.String namePrefix)
- Parameters:
namePrefix
- Creates a unique name beginning with the specified prefix. Conflicts with `name`. Cannot be longer than 6 characters.- Returns:
- builder
-
port
public TargetGroupArgs.Builder port(@Nullable com.pulumi.core.Output<java.lang.Integer> port)
- Parameters:
port
- Port on which targets receive traffic, unless overridden when registering a specific target. Required when `target_type` is `instance`, `ip` or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
port
public TargetGroupArgs.Builder port(java.lang.Integer port)
- Parameters:
port
- Port on which targets receive traffic, unless overridden when registering a specific target. Required when `target_type` is `instance`, `ip` or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
preserveClientIp
public TargetGroupArgs.Builder preserveClientIp(@Nullable com.pulumi.core.Output<java.lang.String> preserveClientIp)
- Parameters:
preserveClientIp
- Whether client IP preservation is enabled. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation) for more information.- Returns:
- builder
-
preserveClientIp
public TargetGroupArgs.Builder preserveClientIp(java.lang.String preserveClientIp)
- Parameters:
preserveClientIp
- Whether client IP preservation is enabled. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#client-ip-preservation) for more information.- Returns:
- builder
-
protocol
public TargetGroupArgs.Builder protocol(@Nullable com.pulumi.core.Output<java.lang.String> protocol)
- Parameters:
protocol
- Protocol to use for routing traffic to the targets. Should be one of `GENEVE`, `HTTP`, `HTTPS`, `TCP`, `TCP_UDP`, `TLS`, or `UDP`. Required when `target_type` is `instance`, `ip`, or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
protocol
public TargetGroupArgs.Builder protocol(java.lang.String protocol)
- Parameters:
protocol
- Protocol to use for routing traffic to the targets. Should be one of `GENEVE`, `HTTP`, `HTTPS`, `TCP`, `TCP_UDP`, `TLS`, or `UDP`. Required when `target_type` is `instance`, `ip`, or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
protocolVersion
public TargetGroupArgs.Builder protocolVersion(@Nullable com.pulumi.core.Output<java.lang.String> protocolVersion)
- Parameters:
protocolVersion
- Only applicable when `protocol` is `HTTP` or `HTTPS`. The protocol version. Specify `GRPC` to send requests to targets using gRPC. Specify `HTTP2` to send requests to targets using HTTP/2. The default is `HTTP1`, which sends requests to targets using HTTP/1.1- Returns:
- builder
-
protocolVersion
public TargetGroupArgs.Builder protocolVersion(java.lang.String protocolVersion)
- Parameters:
protocolVersion
- Only applicable when `protocol` is `HTTP` or `HTTPS`. The protocol version. Specify `GRPC` to send requests to targets using gRPC. Specify `HTTP2` to send requests to targets using HTTP/2. The default is `HTTP1`, which sends requests to targets using HTTP/1.1- Returns:
- builder
-
proxyProtocolV2
public TargetGroupArgs.Builder proxyProtocolV2(@Nullable com.pulumi.core.Output<java.lang.Boolean> proxyProtocolV2)
- Parameters:
proxyProtocolV2
- Whether to enable support for proxy protocol v2 on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol) for more information. Default is `false`.- Returns:
- builder
-
proxyProtocolV2
public TargetGroupArgs.Builder proxyProtocolV2(java.lang.Boolean proxyProtocolV2)
- Parameters:
proxyProtocolV2
- Whether to enable support for proxy protocol v2 on Network Load Balancers. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#proxy-protocol) for more information. Default is `false`.- Returns:
- builder
-
slowStart
public TargetGroupArgs.Builder slowStart(@Nullable com.pulumi.core.Output<java.lang.Integer> slowStart)
- Parameters:
slowStart
- Amount time for targets to warm up before the load balancer sends them a full share of requests. The range is 30-900 seconds or 0 to disable. The default value is 0 seconds.- Returns:
- builder
-
slowStart
public TargetGroupArgs.Builder slowStart(java.lang.Integer slowStart)
- Parameters:
slowStart
- Amount time for targets to warm up before the load balancer sends them a full share of requests. The range is 30-900 seconds or 0 to disable. The default value is 0 seconds.- Returns:
- builder
-
stickiness
public TargetGroupArgs.Builder stickiness(@Nullable com.pulumi.core.Output<TargetGroupStickinessArgs> stickiness)
- Parameters:
stickiness
- Stickiness configuration block. Detailed below.- Returns:
- builder
-
stickiness
public TargetGroupArgs.Builder stickiness(TargetGroupStickinessArgs stickiness)
- Parameters:
stickiness
- Stickiness configuration block. Detailed below.- Returns:
- builder
-
tags
public TargetGroupArgs.Builder tags(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
- Parameters:
tags
- Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Returns:
- builder
-
tags
public TargetGroupArgs.Builder tags(java.util.Map<java.lang.String,java.lang.String> tags)
- Parameters:
tags
- Map of tags to assign to the resource. If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.- Returns:
- builder
-
targetFailovers
public TargetGroupArgs.Builder targetFailovers(@Nullable com.pulumi.core.Output<java.util.List<TargetGroupTargetFailoverArgs>> targetFailovers)
- Parameters:
targetFailovers
- Target failover block. Only applicable for Gateway Load Balancer target groups. See target_failover for more information.- Returns:
- builder
-
targetFailovers
public TargetGroupArgs.Builder targetFailovers(java.util.List<TargetGroupTargetFailoverArgs> targetFailovers)
- Parameters:
targetFailovers
- Target failover block. Only applicable for Gateway Load Balancer target groups. See target_failover for more information.- Returns:
- builder
-
targetFailovers
public TargetGroupArgs.Builder targetFailovers(TargetGroupTargetFailoverArgs... targetFailovers)
- Parameters:
targetFailovers
- Target failover block. Only applicable for Gateway Load Balancer target groups. See target_failover for more information.- Returns:
- builder
-
targetHealthStates
public TargetGroupArgs.Builder targetHealthStates(@Nullable com.pulumi.core.Output<java.util.List<TargetGroupTargetHealthStateArgs>> targetHealthStates)
- Parameters:
targetHealthStates
- Target health state block. Only applicable for Network Load Balancer target groups when `protocol` is `TCP` or `TLS`. See target_health_state for more information.- Returns:
- builder
-
targetHealthStates
public TargetGroupArgs.Builder targetHealthStates(java.util.List<TargetGroupTargetHealthStateArgs> targetHealthStates)
- Parameters:
targetHealthStates
- Target health state block. Only applicable for Network Load Balancer target groups when `protocol` is `TCP` or `TLS`. See target_health_state for more information.- Returns:
- builder
-
targetHealthStates
public TargetGroupArgs.Builder targetHealthStates(TargetGroupTargetHealthStateArgs... targetHealthStates)
- Parameters:
targetHealthStates
- Target health state block. Only applicable for Network Load Balancer target groups when `protocol` is `TCP` or `TLS`. See target_health_state for more information.- Returns:
- builder
-
targetType
public TargetGroupArgs.Builder targetType(@Nullable com.pulumi.core.Output<java.lang.String> targetType)
- Parameters:
targetType
- Type of target that you must specify when registering targets with this target group. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html) for supported values. The default is `instance`. Note that you can't specify targets for a target group using both instance IDs and IP addresses. If the target type is `ip`, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses. Network Load Balancers do not support the `lambda` target type. Application Load Balancers do not support the `alb` target type.- Returns:
- builder
-
targetType
public TargetGroupArgs.Builder targetType(java.lang.String targetType)
- Parameters:
targetType
- Type of target that you must specify when registering targets with this target group. See [doc](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateTargetGroup.html) for supported values. The default is `instance`. Note that you can't specify targets for a target group using both instance IDs and IP addresses. If the target type is `ip`, specify IP addresses from the subnets of the virtual private cloud (VPC) for the target group, the RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP addresses. Network Load Balancers do not support the `lambda` target type. Application Load Balancers do not support the `alb` target type.- Returns:
- builder
-
vpcId
public TargetGroupArgs.Builder vpcId(@Nullable com.pulumi.core.Output<java.lang.String> vpcId)
- Parameters:
vpcId
- Identifier of the VPC in which to create the target group. Required when `target_type` is `instance`, `ip` or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
vpcId
public TargetGroupArgs.Builder vpcId(java.lang.String vpcId)
- Parameters:
vpcId
- Identifier of the VPC in which to create the target group. Required when `target_type` is `instance`, `ip` or `alb`. Does not apply when `target_type` is `lambda`.- Returns:
- builder
-
build
public TargetGroupArgs build()
-
-