@Generated(value="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.
For specific notes and restrictions regarding the use of load balancers with services and task sets, see the CreateService and CreateTaskSet actions.
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.
| Modifier and Type | Class and Description |
|---|---|
static interface |
LoadBalancer.Builder |
| Modifier and Type | Method and 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.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcopypublic 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. If you're using a Classic Load Balancer, omit the target group ARN.
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 choose ip as
the target type, not instance. Do this when creating your target groups because tasks that use the
awsvpc network mode are associated with an elastic network interface, not an Amazon EC2 instance.
This network mode is required for the Fargate launch type.
A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer. If you're using a Classic Load Balancer, omit the target group ARN.
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 choose
ip as the target type, not instance. Do this when creating your target groups
because tasks that use the awsvpc network mode are associated with an elastic network
interface, not an Amazon EC2 instance. This network mode is required for the Fargate launch type.
public final String loadBalancerName()
The name of the load balancer to associate with the Amazon ECS service or task set.
A load balancer name is only specified when using a Classic Load Balancer. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.
A load balancer name is only specified when using a Classic Load Balancer. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.
public final String containerName()
The name of the container (as it appears in a container definition) to associate with the load balancer.
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 the hostPort
of the port mapping.
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 the
hostPort of the port mapping.public LoadBalancer.Builder toBuilder()
toBuilder in interface ToCopyableBuilder<LoadBalancer.Builder,LoadBalancer>public static LoadBalancer.Builder builder()
public static Class<? extends LoadBalancer.Builder> serializableBuilderClass()
public final boolean equalsBySdkFields(Object obj)
equalsBySdkFields in interface SdkPojopublic final String toString()
Copyright © 2023. All rights reserved.