Class LoadBalancer
- java.lang.Object
-
- software.amazon.awssdk.services.ecs.model.LoadBalancer
-
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<LoadBalancer.Builder,LoadBalancer>
@Generated("software.amazon.awssdk:codegen") public final class LoadBalancer extends Object implements SdkPojo, Serializable, ToCopyableBuilder<LoadBalancer.Builder,LoadBalancer>
The load balancer configuration to use with a service or task set.
When you add, update, or remove a load balancer configuration, Amazon ECS starts a new deployment with the updated Elastic Load Balancing configuration. This causes tasks to register to and deregister from load balancers.
We recommend that you verify this on a test environment before you update the Elastic Load Balancing configuration.
A service-linked role is required for services that use multiple target groups. For more information, see Using service-linked roles in the Amazon Elastic Container Service Developer Guide.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
LoadBalancer.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static LoadBalancer.Builder
builder()
String
containerName()
The name of the container (as it appears in a container definition) to associate with the load balancer.Integer
containerPort()
The port on the container to associate with the load balancer.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
int
hashCode()
String
loadBalancerName()
The name of the load balancer to associate with the Amazon ECS service or task set.List<SdkField<?>>
sdkFields()
static Class<? extends LoadBalancer.Builder>
serializableBuilderClass()
String
targetGroupArn()
The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set.LoadBalancer.Builder
toBuilder()
String
toString()
Returns a string representation of this object.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
targetGroupArn
public final String targetGroupArn()
The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set.
A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer.
For services using the
ECS
deployment controller, you can specify one or multiple target groups. For more information, see Registering multiple target groups with a service in the Amazon Elastic Container Service Developer Guide.For services using the
CODE_DEPLOY
deployment controller, you're required to define two target groups for the load balancer. For more information, see Blue/green deployment with CodeDeploy in the Amazon Elastic Container Service Developer Guide.If your service's task definition uses the
awsvpc
network mode, you must chooseip
as the target type, notinstance
. Do this when creating your target groups because tasks that use theawsvpc
network mode are associated with an elastic network interface, not an Amazon EC2 instance. This network mode is required for the Fargate launch type.- Returns:
- The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with
a service or task set.
A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer.
For services using the
ECS
deployment controller, you can specify one or multiple target groups. For more information, see Registering multiple target groups with a service in the Amazon Elastic Container Service Developer Guide.For services using the
CODE_DEPLOY
deployment controller, you're required to define two target groups for the load balancer. For more information, see Blue/green deployment with CodeDeploy in the Amazon Elastic Container Service Developer Guide.If your service's task definition uses the
awsvpc
network mode, you must chooseip
as the target type, notinstance
. Do this when creating your target groups because tasks that use theawsvpc
network mode are associated with an elastic network interface, not an Amazon EC2 instance. This network mode is required for the Fargate launch type.
-
loadBalancerName
public final String loadBalancerName()
The name of the load balancer to associate with the Amazon ECS service or task set.
If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.
- Returns:
- The name of the load balancer to associate with the Amazon ECS service or task set.
If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.
-
containerName
public final String containerName()
The name of the container (as it appears in a container definition) to associate with the load balancer.
- Returns:
- The name of the container (as it appears in a container definition) to associate with the load balancer.
-
containerPort
public final Integer containerPort()
The port on the container to associate with the load balancer. This port must correspond to a
containerPort
in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on thehostPort
of the port mapping.- Returns:
- The port on the container to associate with the load balancer. This port must correspond to a
containerPort
in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on thehostPort
of the port mapping.
-
toBuilder
public LoadBalancer.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<LoadBalancer.Builder,LoadBalancer>
-
builder
public static LoadBalancer.Builder builder()
-
serializableBuilderClass
public static Class<? extends LoadBalancer.Builder> serializableBuilderClass()
-
equalsBySdkFields
public final boolean equalsBySdkFields(Object obj)
- Specified by:
equalsBySdkFields
in interfaceSdkPojo
-
toString
public final String toString()
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
-
-