Class NetworkLoadBalancer.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<NetworkLoadBalancer>
- Enclosing class:
NetworkLoadBalancer
NetworkLoadBalancer.-
Method Summary
Modifier and TypeMethodDescriptionbuild()clientRoutingPolicy(ClientRoutingPolicy clientRoutingPolicy) The AZ affinity routing policy.static NetworkLoadBalancer.BuildercrossZoneEnabled(Boolean crossZoneEnabled) Indicates whether cross-zone load balancing is enabled.deletionProtection(Boolean deletionProtection) Indicates whether deletion protection is enabled.denyAllIgwTraffic(Boolean denyAllIgwTraffic) Indicates whether the load balancer blocks traffic through the Internet Gateway (IGW).disableSecurityGroups(Boolean disableSecurityGroups) Create a Network Load Balancer without security groups.enablePrefixForIpv6SourceNat(Boolean enablePrefixForIpv6SourceNat) Indicates whether to use an IPv6 prefix from each subnet for source NAT.enforceSecurityGroupInboundRulesOnPrivateLinkTraffic(Boolean enforceSecurityGroupInboundRulesOnPrivateLinkTraffic) Indicates whether to evaluate inbound security group rules for traffic sent to a Network Load Balancer through AWS PrivateLink.internetFacing(Boolean internetFacing) Whether the load balancer has an internet-routable address.ipAddressType(IpAddressType ipAddressType) The type of IP addresses to use.loadBalancerName(String loadBalancerName) Name of the load balancer.minimumCapacityUnit(Number minimumCapacityUnit) The minimum capacity (LCU) for a load balancer.securityGroups(List<? extends ISecurityGroup> securityGroups) Security groups to associate with this load balancer.subnetMappings(List<? extends SubnetMapping> subnetMappings) Subnet information for the load balancer.The VPC network to place the load balancer in.vpcSubnets(SubnetSelection vpcSubnets) Which subnets place the load balancer in.zonalShift(Boolean zonalShift) Indicates whether zonal shift is enabled.
-
Method Details
-
create
@Stability(Stable) public static NetworkLoadBalancer.Builder create(software.constructs.Construct scope, String id) - Parameters:
scope- This parameter is required.id- This parameter is required.- Returns:
- a new instance of
NetworkLoadBalancer.Builder.
-
vpc
The VPC network to place the load balancer in.- Parameters:
vpc- The VPC network to place the load balancer in. This parameter is required.- Returns:
this
-
crossZoneEnabled
Indicates whether cross-zone load balancing is enabled.Default: - false for Network Load Balancers and true for Application Load Balancers. This can not be `false` for Application Load Balancers.
- Parameters:
crossZoneEnabled- Indicates whether cross-zone load balancing is enabled. This parameter is required.- Returns:
this- See Also:
-
deletionProtection
@Stability(Stable) public NetworkLoadBalancer.Builder deletionProtection(Boolean deletionProtection) Indicates whether deletion protection is enabled.Default: false
- Parameters:
deletionProtection- Indicates whether deletion protection is enabled. This parameter is required.- Returns:
this
-
denyAllIgwTraffic
Indicates whether the load balancer blocks traffic through the Internet Gateway (IGW).Default: - false for internet-facing load balancers and true for internal load balancers
- Parameters:
denyAllIgwTraffic- Indicates whether the load balancer blocks traffic through the Internet Gateway (IGW). This parameter is required.- Returns:
this
-
internetFacing
Whether the load balancer has an internet-routable address.Default: false
- Parameters:
internetFacing- Whether the load balancer has an internet-routable address. This parameter is required.- Returns:
this
-
loadBalancerName
Name of the load balancer.Default: - Automatically generated name.
- Parameters:
loadBalancerName- Name of the load balancer. This parameter is required.- Returns:
this
-
minimumCapacityUnit
@Stability(Stable) public NetworkLoadBalancer.Builder minimumCapacityUnit(Number minimumCapacityUnit) The minimum capacity (LCU) for a load balancer.Default: undefined - ELB default is 0 LCU
- Parameters:
minimumCapacityUnit- The minimum capacity (LCU) for a load balancer. This parameter is required.- Returns:
this- See Also:
-
vpcSubnets
Which subnets place the load balancer in.Default: - the Vpc default strategy.
- Parameters:
vpcSubnets- Which subnets place the load balancer in. This parameter is required.- Returns:
this
-
clientRoutingPolicy
@Stability(Stable) public NetworkLoadBalancer.Builder clientRoutingPolicy(ClientRoutingPolicy clientRoutingPolicy) The AZ affinity routing policy.Default: - AZ affinity is disabled.
- Parameters:
clientRoutingPolicy- The AZ affinity routing policy. This parameter is required.- Returns:
this- See Also:
-
disableSecurityGroups
@Stability(Stable) public NetworkLoadBalancer.Builder disableSecurityGroups(Boolean disableSecurityGroups) Create a Network Load Balancer without security groups.When true, creates an NLB that cannot have security groups attached. This is useful when you need to create a traditional NLB without security group associations.
This property only takes effect when the feature flag
@aws-cdk/aws-elasticloadbalancingv2:networkLoadBalancerWithSecurityGroupByDefaultis enabled.Default: false
- Parameters:
disableSecurityGroups- Create a Network Load Balancer without security groups. This parameter is required.- Returns:
this
-
enablePrefixForIpv6SourceNat
@Stability(Stable) public NetworkLoadBalancer.Builder enablePrefixForIpv6SourceNat(Boolean enablePrefixForIpv6SourceNat) Indicates whether to use an IPv6 prefix from each subnet for source NAT.The IP address type must be IpAddressType.DUALSTACK.
Default: undefined - NLB default behavior is false
- Parameters:
enablePrefixForIpv6SourceNat- Indicates whether to use an IPv6 prefix from each subnet for source NAT. This parameter is required.- Returns:
this
-
enforceSecurityGroupInboundRulesOnPrivateLinkTraffic
@Stability(Stable) public NetworkLoadBalancer.Builder enforceSecurityGroupInboundRulesOnPrivateLinkTraffic(Boolean enforceSecurityGroupInboundRulesOnPrivateLinkTraffic) Indicates whether to evaluate inbound security group rules for traffic sent to a Network Load Balancer through AWS PrivateLink.Default: true
- Parameters:
enforceSecurityGroupInboundRulesOnPrivateLinkTraffic- Indicates whether to evaluate inbound security group rules for traffic sent to a Network Load Balancer through AWS PrivateLink. This parameter is required.- Returns:
this
-
ipAddressType
The type of IP addresses to use.If you want to add a UDP or TCP_UDP listener to the load balancer, you must choose IPv4.
Default: IpAddressType.IPV4
- Parameters:
ipAddressType- The type of IP addresses to use. This parameter is required.- Returns:
this
-
securityGroups
@Stability(Stable) public NetworkLoadBalancer.Builder securityGroups(List<? extends ISecurityGroup> securityGroups) Security groups to associate with this load balancer.Default: - No security groups associated with the load balancer.
- Parameters:
securityGroups- Security groups to associate with this load balancer. This parameter is required.- Returns:
this
-
subnetMappings
@Stability(Stable) public NetworkLoadBalancer.Builder subnetMappings(List<? extends SubnetMapping> subnetMappings) Subnet information for the load balancer.Default: undefined - The VPC default strategy for subnets is used
- Parameters:
subnetMappings- Subnet information for the load balancer. This parameter is required.- Returns:
this
-
zonalShift
Indicates whether zonal shift is enabled.Default: false
- Parameters:
zonalShift- Indicates whether zonal shift is enabled. This parameter is required.- Returns:
this- See Also:
-
build
- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<NetworkLoadBalancer>- Returns:
- a newly built instance of
NetworkLoadBalancer.
-