@Generated(value="software.amazon.awssdk:codegen") public final class Service extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Service.Builder,Service>
Details on a service within a cluster
| Modifier and Type | Class and Description |
|---|---|
static interface |
Service.Builder |
| Modifier and Type | Method and Description |
|---|---|
static Service.Builder |
builder() |
List<CapacityProviderStrategyItem> |
capacityProviderStrategy()
The capacity provider strategy the service uses.
|
String |
clusterArn()
The Amazon Resource Name (ARN) of the cluster that hosts the service.
|
Instant |
createdAt()
The Unix timestamp for the time when the service was created.
|
String |
createdBy()
The principal that created the service.
|
DeploymentConfiguration |
deploymentConfiguration()
Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping
and starting tasks.
|
DeploymentController |
deploymentController()
The deployment controller type the service is using.
|
List<Deployment> |
deployments()
The current state of deployments for the service.
|
Integer |
desiredCount()
The desired number of instantiations of the task definition to keep running on the service.
|
Boolean |
enableECSManagedTags()
Determines whether to enable Amazon ECS managed tags for the tasks in the service.
|
Boolean |
enableExecuteCommand()
Determines whether the execute command functionality is enabled for the service.
|
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
List<ServiceEvent> |
events()
The event stream for your service.
|
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
boolean |
hasCapacityProviderStrategy()
For responses, this returns true if the service returned a value for the CapacityProviderStrategy property.
|
boolean |
hasDeployments()
For responses, this returns true if the service returned a value for the Deployments property.
|
boolean |
hasEvents()
For responses, this returns true if the service returned a value for the Events property.
|
int |
hashCode() |
boolean |
hasLoadBalancers()
For responses, this returns true if the service returned a value for the LoadBalancers property.
|
boolean |
hasPlacementConstraints()
For responses, this returns true if the service returned a value for the PlacementConstraints property.
|
boolean |
hasPlacementStrategy()
For responses, this returns true if the service returned a value for the PlacementStrategy property.
|
boolean |
hasServiceRegistries()
For responses, this returns true if the service returned a value for the ServiceRegistries property.
|
boolean |
hasTags()
For responses, this returns true if the service returned a value for the Tags property.
|
boolean |
hasTaskSets()
For responses, this returns true if the service returned a value for the TaskSets property.
|
Integer |
healthCheckGracePeriodSeconds()
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing
target health checks after a task has first started.
|
LaunchType |
launchType()
The launch type the service is using.
|
String |
launchTypeAsString()
The launch type the service is using.
|
List<LoadBalancer> |
loadBalancers()
A list of Elastic Load Balancing load balancer objects.
|
NetworkConfiguration |
networkConfiguration()
The VPC subnet and security group configuration for tasks that receive their own elastic network interface by
using the
awsvpc networking mode. |
Integer |
pendingCount()
The number of tasks in the cluster that are in the
PENDING state. |
List<PlacementConstraint> |
placementConstraints()
The placement constraints for the tasks in the service.
|
List<PlacementStrategy> |
placementStrategy()
The placement strategy that determines how tasks for the service are placed.
|
String |
platformFamily()
The operating system that your tasks in the service run on.
|
String |
platformVersion()
The platform version to run your service on.
|
PropagateTags |
propagateTags()
Determines whether to propagate the tags from the task definition or the service to the task.
|
String |
propagateTagsAsString()
Determines whether to propagate the tags from the task definition or the service to the task.
|
String |
roleArn()
The ARN of the IAM role that's associated with the service.
|
Integer |
runningCount()
The number of tasks in the cluster that are in the
RUNNING state. |
SchedulingStrategy |
schedulingStrategy()
The scheduling strategy to use for the service.
|
String |
schedulingStrategyAsString()
The scheduling strategy to use for the service.
|
List<SdkField<?>> |
sdkFields() |
static Class<? extends Service.Builder> |
serializableBuilderClass() |
String |
serviceArn()
The ARN that identifies the service.
|
String |
serviceName()
The name of your service.
|
List<ServiceRegistry> |
serviceRegistries()
The details for the service discovery registries to assign to this service.
|
String |
status()
The status of the service.
|
List<Tag> |
tags()
The metadata that you apply to the service to help you categorize and organize them.
|
String |
taskDefinition()
The task definition to use for tasks in the service.
|
List<TaskSet> |
taskSets()
Information about a set of Amazon ECS tasks in either an CodeDeploy or an
EXTERNAL deployment. |
Service.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcopypublic final String serviceArn()
The ARN that identifies the service. The ARN contains the arn:aws:ecs namespace, followed by the
Region of the service, the Amazon Web Services account ID of the service owner, the service
namespace, and then the service name. For example,
arn:aws:ecs:region:012345678910:service/my-service.
arn:aws:ecs namespace, followed by
the Region of the service, the Amazon Web Services account ID of the service owner, the
service namespace, and then the service name. For example,
arn:aws:ecs:region:012345678910:service/my-service.public final String serviceName()
The name of your service. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. Service names must be unique within a cluster. However, you can have similarly named services in multiple clusters within a Region or across multiple Regions.
public final String clusterArn()
The Amazon Resource Name (ARN) of the cluster that hosts the service.
public final boolean hasLoadBalancers()
isEmpty() method on the property).
This is useful because the SDK will never return a null collection or map, but you may need to differentiate
between the service returning nothing (or null) and the service returning an empty collection or map. For
requests, this returns true if a value for the property was specified in the request builder, and false if a
value was not specified.public final List<LoadBalancer> loadBalancers()
A list of Elastic Load Balancing load balancer objects. It contains the load balancer name, the container name, and the container port to access from the load balancer. The container name is as it appears in a container definition.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasLoadBalancers() method.
public final boolean hasServiceRegistries()
isEmpty() method on the property).
This is useful because the SDK will never return a null collection or map, but you may need to differentiate
between the service returning nothing (or null) and the service returning an empty collection or map. For
requests, this returns true if a value for the property was specified in the request builder, and false if a
value was not specified.public final List<ServiceRegistry> serviceRegistries()
The details for the service discovery registries to assign to this service. For more information, see Service Discovery.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasServiceRegistries() method.
public final String status()
The status of the service. The valid values are ACTIVE, DRAINING, or
INACTIVE.
ACTIVE, DRAINING, or
INACTIVE.public final Integer desiredCount()
The desired number of instantiations of the task definition to keep running on the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.
public final Integer runningCount()
The number of tasks in the cluster that are in the RUNNING state.
RUNNING state.public final Integer pendingCount()
The number of tasks in the cluster that are in the PENDING state.
PENDING state.public final LaunchType launchType()
The launch type the service is using. When using the DescribeServices API, this field is omitted if the service was created using a capacity provider strategy.
If the service returns an enum value that is not available in the current SDK version, launchType will
return LaunchType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
launchTypeAsString().
LaunchTypepublic final String launchTypeAsString()
The launch type the service is using. When using the DescribeServices API, this field is omitted if the service was created using a capacity provider strategy.
If the service returns an enum value that is not available in the current SDK version, launchType will
return LaunchType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
launchTypeAsString().
LaunchTypepublic final boolean hasCapacityProviderStrategy()
isEmpty() method on the
property). This is useful because the SDK will never return a null collection or map, but you may need to
differentiate between the service returning nothing (or null) and the service returning an empty collection or
map. For requests, this returns true if a value for the property was specified in the request builder, and false
if a value was not specified.public final List<CapacityProviderStrategyItem> capacityProviderStrategy()
The capacity provider strategy the service uses. When using the DescribeServices API, this field is omitted if the service was created using a launch type.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasCapacityProviderStrategy() method.
public final String platformVersion()
The platform version to run your service on. A platform version is only specified for tasks that are hosted on
Fargate. If one isn't specified, the LATEST platform version is used. For more information, see Fargate Platform
Versions in the Amazon Elastic Container Service Developer Guide.
LATEST platform version is used. For more
information, see Fargate
Platform Versions in the Amazon Elastic Container Service Developer Guide.public final String platformFamily()
The operating system that your tasks in the service run on. A platform family is specified only for tasks using the Fargate launch type.
All tasks that run as part of this service must use the same platformFamily value as the service
(for example, LINUX).
All tasks that run as part of this service must use the same platformFamily value as the
service (for example, LINUX).
public final String taskDefinition()
The task definition to use for tasks in the service. This value is specified when the service is created with CreateService, and it can be modified with UpdateService.
public final DeploymentConfiguration deploymentConfiguration()
Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.
public final boolean hasTaskSets()
isEmpty() method on the property). This is
useful because the SDK will never return a null collection or map, but you may need to differentiate between the
service returning nothing (or null) and the service returning an empty collection or map. For requests, this
returns true if a value for the property was specified in the request builder, and false if a value was not
specified.public final List<TaskSet> taskSets()
Information about a set of Amazon ECS tasks in either an CodeDeploy or an EXTERNAL deployment. An
Amazon ECS task set includes details such as the desired number of tasks, how many tasks are running, and whether
the task set serves production traffic.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasTaskSets() method.
EXTERNAL
deployment. An Amazon ECS task set includes details such as the desired number of tasks, how many tasks
are running, and whether the task set serves production traffic.public final boolean hasDeployments()
isEmpty() method on the property).
This is useful because the SDK will never return a null collection or map, but you may need to differentiate
between the service returning nothing (or null) and the service returning an empty collection or map. For
requests, this returns true if a value for the property was specified in the request builder, and false if a
value was not specified.public final List<Deployment> deployments()
The current state of deployments for the service.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasDeployments() method.
public final String roleArn()
The ARN of the IAM role that's associated with the service. It allows the Amazon ECS container agent to register container instances with an Elastic Load Balancing load balancer.
public final boolean hasEvents()
isEmpty() method on the property). This is
useful because the SDK will never return a null collection or map, but you may need to differentiate between the
service returning nothing (or null) and the service returning an empty collection or map. For requests, this
returns true if a value for the property was specified in the request builder, and false if a value was not
specified.public final List<ServiceEvent> events()
The event stream for your service. A maximum of 100 of the latest events are displayed.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasEvents() method.
public final Instant createdAt()
The Unix timestamp for the time when the service was created.
public final boolean hasPlacementConstraints()
isEmpty() method on the property).
This is useful because the SDK will never return a null collection or map, but you may need to differentiate
between the service returning nothing (or null) and the service returning an empty collection or map. For
requests, this returns true if a value for the property was specified in the request builder, and false if a
value was not specified.public final List<PlacementConstraint> placementConstraints()
The placement constraints for the tasks in the service.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasPlacementConstraints() method.
public final boolean hasPlacementStrategy()
isEmpty() method on the property).
This is useful because the SDK will never return a null collection or map, but you may need to differentiate
between the service returning nothing (or null) and the service returning an empty collection or map. For
requests, this returns true if a value for the property was specified in the request builder, and false if a
value was not specified.public final List<PlacementStrategy> placementStrategy()
The placement strategy that determines how tasks for the service are placed.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasPlacementStrategy() method.
public final NetworkConfiguration networkConfiguration()
The VPC subnet and security group configuration for tasks that receive their own elastic network interface by
using the awsvpc networking mode.
awsvpc networking mode.public final Integer healthCheckGracePeriodSeconds()
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.
public final SchedulingStrategy schedulingStrategy()
The scheduling strategy to use for the service. For more information, see Services.
There are two service scheduler strategies available.
REPLICA-The replica scheduling strategy places and maintains the desired number of tasks across your
cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement
strategies and constraints to customize task placement decisions.
DAEMON-The daemon scheduling strategy deploys exactly one task on each active container instance.
This taskmeets all of the task placement constraints that you specify in your cluster. The service scheduler also
evaluates the task placement constraints for running tasks. It stop tasks that don't meet the placement
constraints.
Fargate tasks don't support the DAEMON scheduling strategy.
If the service returns an enum value that is not available in the current SDK version,
schedulingStrategy will return SchedulingStrategy.UNKNOWN_TO_SDK_VERSION. The raw value returned
by the service is available from schedulingStrategyAsString().
There are two service scheduler strategies available.
REPLICA-The replica scheduling strategy places and maintains the desired number of tasks
across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can
use task placement strategies and constraints to customize task placement decisions.
DAEMON-The daemon scheduling strategy deploys exactly one task on each active container
instance. This taskmeets all of the task placement constraints that you specify in your cluster. The
service scheduler also evaluates the task placement constraints for running tasks. It stop tasks that
don't meet the placement constraints.
Fargate tasks don't support the DAEMON scheduling strategy.
SchedulingStrategypublic final String schedulingStrategyAsString()
The scheduling strategy to use for the service. For more information, see Services.
There are two service scheduler strategies available.
REPLICA-The replica scheduling strategy places and maintains the desired number of tasks across your
cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement
strategies and constraints to customize task placement decisions.
DAEMON-The daemon scheduling strategy deploys exactly one task on each active container instance.
This taskmeets all of the task placement constraints that you specify in your cluster. The service scheduler also
evaluates the task placement constraints for running tasks. It stop tasks that don't meet the placement
constraints.
Fargate tasks don't support the DAEMON scheduling strategy.
If the service returns an enum value that is not available in the current SDK version,
schedulingStrategy will return SchedulingStrategy.UNKNOWN_TO_SDK_VERSION. The raw value returned
by the service is available from schedulingStrategyAsString().
There are two service scheduler strategies available.
REPLICA-The replica scheduling strategy places and maintains the desired number of tasks
across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can
use task placement strategies and constraints to customize task placement decisions.
DAEMON-The daemon scheduling strategy deploys exactly one task on each active container
instance. This taskmeets all of the task placement constraints that you specify in your cluster. The
service scheduler also evaluates the task placement constraints for running tasks. It stop tasks that
don't meet the placement constraints.
Fargate tasks don't support the DAEMON scheduling strategy.
SchedulingStrategypublic final DeploymentController deploymentController()
The deployment controller type the service is using. When using the DescribeServices API, this field is omitted
if the service uses the ECS deployment controller type.
ECS deployment controller type.public final boolean hasTags()
isEmpty() method on the property). This is useful
because the SDK will never return a null collection or map, but you may need to differentiate between the service
returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true
if a value for the property was specified in the request builder, and false if a value was not specified.public final List<Tag> tags()
The metadata that you apply to the service to help you categorize and organize them. Each tag consists of a key and an optional value. You define bot the key and value.
The following basic restrictions apply to tags:
Maximum number of tags per resource - 50
For each resource, each tag key must be unique, and each tag key can have only one value.
Maximum key length - 128 Unicode characters in UTF-8
Maximum value length - 256 Unicode characters in UTF-8
If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.
Tag keys and values are case-sensitive.
Do not use aws:, AWS:, or any upper or lowercase combination of such as a prefix for
either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete tag keys or values
with this prefix. Tags with this prefix do not count against your tags per resource limit.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
This method will never return null. If you would like to know whether the service returned this field (so that
you can differentiate between null and empty), you can use the hasTags() method.
The following basic restrictions apply to tags:
Maximum number of tags per resource - 50
For each resource, each tag key must be unique, and each tag key can have only one value.
Maximum key length - 128 Unicode characters in UTF-8
Maximum value length - 256 Unicode characters in UTF-8
If your tagging schema is used across multiple services and resources, remember that other services may have restrictions on allowed characters. Generally allowed characters are: letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @.
Tag keys and values are case-sensitive.
Do not use aws:, AWS:, or any upper or lowercase combination of such as a
prefix for either keys or values as it is reserved for Amazon Web Services use. You cannot edit or delete
tag keys or values with this prefix. Tags with this prefix do not count against your tags per resource
limit.
public final String createdBy()
The principal that created the service.
public final Boolean enableECSManagedTags()
Determines whether to enable Amazon ECS managed tags for the tasks in the service. For more information, see Tagging Your Amazon ECS Resources in the Amazon Elastic Container Service Developer Guide.
public final PropagateTags propagateTags()
Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.
If the service returns an enum value that is not available in the current SDK version, propagateTags
will return PropagateTags.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
propagateTagsAsString().
PropagateTagspublic final String propagateTagsAsString()
Determines whether to propagate the tags from the task definition or the service to the task. If no value is specified, the tags aren't propagated.
If the service returns an enum value that is not available in the current SDK version, propagateTags
will return PropagateTags.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
propagateTagsAsString().
PropagateTagspublic final Boolean enableExecuteCommand()
Determines whether the execute command functionality is enabled for the service. If true, the
execute command functionality is enabled for all containers in tasks as part of the service.
true,
the execute command functionality is enabled for all containers in tasks as part of the service.public Service.Builder toBuilder()
toBuilder in interface ToCopyableBuilder<Service.Builder,Service>public static Service.Builder builder()
public static Class<? extends Service.Builder> serializableBuilderClass()
public final boolean equalsBySdkFields(Object obj)
equalsBySdkFields in interface SdkPojopublic final String toString()
Copyright © 2021. All rights reserved.