Class Cluster
- java.lang.Object
-
- software.amazon.awssdk.services.ecs.model.Cluster
-
- All Implemented Interfaces:
Serializable
,SdkPojo
,ToCopyableBuilder<Cluster.Builder,Cluster>
@Generated("software.amazon.awssdk:codegen") public final class Cluster extends Object implements SdkPojo, Serializable, ToCopyableBuilder<Cluster.Builder,Cluster>
A regional grouping of one or more container instances where you can run task requests. Each account receives a default cluster the first time you use the Amazon ECS service, but you may also create other clusters. Clusters may contain more than one instance type simultaneously.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Cluster.Builder
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Integer
activeServicesCount()
The number of services that are running on the cluster in anACTIVE
state.List<Attachment>
attachments()
The resources attached to a cluster.String
attachmentsStatus()
The status of the capacity providers associated with the cluster.static Cluster.Builder
builder()
List<String>
capacityProviders()
The capacity providers associated with the cluster.String
clusterArn()
The Amazon Resource Name (ARN) that identifies the cluster.String
clusterName()
A user-generated string that you use to identify your cluster.ClusterConfiguration
configuration()
The execute command configuration for the cluster.List<CapacityProviderStrategyItem>
defaultCapacityProviderStrategy()
The default capacity provider strategy for the cluster.boolean
equals(Object obj)
boolean
equalsBySdkFields(Object obj)
<T> Optional<T>
getValueForField(String fieldName, Class<T> clazz)
boolean
hasAttachments()
For responses, this returns true if the service returned a value for the Attachments property.boolean
hasCapacityProviders()
For responses, this returns true if the service returned a value for the CapacityProviders property.boolean
hasDefaultCapacityProviderStrategy()
For responses, this returns true if the service returned a value for the DefaultCapacityProviderStrategy property.int
hashCode()
boolean
hasSettings()
For responses, this returns true if the service returned a value for the Settings property.boolean
hasStatistics()
For responses, this returns true if the service returned a value for the Statistics property.boolean
hasTags()
For responses, this returns true if the service returned a value for the Tags property.Integer
pendingTasksCount()
The number of tasks in the cluster that are in thePENDING
state.Integer
registeredContainerInstancesCount()
The number of container instances registered into the cluster.Integer
runningTasksCount()
The number of tasks in the cluster that are in theRUNNING
state.List<SdkField<?>>
sdkFields()
static Class<? extends Cluster.Builder>
serializableBuilderClass()
ClusterServiceConnectDefaults
serviceConnectDefaults()
Use this parameter to set a default Service Connect namespace.List<ClusterSetting>
settings()
The settings for the cluster.List<KeyValuePair>
statistics()
Additional information about your clusters that are separated by launch type.String
status()
The status of the cluster.List<Tag>
tags()
The metadata that you apply to the cluster to help you categorize and organize them.Cluster.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
-
clusterArn
public final String clusterArn()
The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.
- Returns:
- The Amazon Resource Name (ARN) that identifies the cluster. For more information about the ARN format, see Amazon Resource Name (ARN) in the Amazon ECS Developer Guide.
-
clusterName
public final String clusterName()
A user-generated string that you use to identify your cluster.
- Returns:
- A user-generated string that you use to identify your cluster.
-
configuration
public final ClusterConfiguration configuration()
The execute command configuration for the cluster.
- Returns:
- The execute command configuration for the cluster.
-
status
public final String status()
The status of the cluster. The following are the possible states that are returned.
- ACTIVE
-
The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.
- PROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.
- DEPROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.
- FAILED
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.
- INACTIVE
-
The cluster has been deleted. Clusters with an
INACTIVE
status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely onINACTIVE
clusters persisting.
- Returns:
- The status of the cluster. The following are the possible states that are returned.
- ACTIVE
-
The cluster is ready to accept tasks and if applicable you can register container instances with the cluster.
- PROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being created.
- DEPROVISIONING
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider are being deleted.
- FAILED
-
The cluster has capacity providers that are associated with it and the resources needed for the capacity provider have failed to create.
- INACTIVE
-
The cluster has been deleted. Clusters with an
INACTIVE
status may remain discoverable in your account for a period of time. However, this behavior is subject to change in the future. We don't recommend that you rely onINACTIVE
clusters persisting.
-
registeredContainerInstancesCount
public final Integer registeredContainerInstancesCount()
The number of container instances registered into the cluster. This includes container instances in both
ACTIVE
andDRAINING
status.- Returns:
- The number of container instances registered into the cluster. This includes container instances in both
ACTIVE
andDRAINING
status.
-
runningTasksCount
public final Integer runningTasksCount()
The number of tasks in the cluster that are in the
RUNNING
state.- Returns:
- The number of tasks in the cluster that are in the
RUNNING
state.
-
pendingTasksCount
public final Integer pendingTasksCount()
The number of tasks in the cluster that are in the
PENDING
state.- Returns:
- The number of tasks in the cluster that are in the
PENDING
state.
-
activeServicesCount
public final Integer activeServicesCount()
The number of services that are running on the cluster in an
ACTIVE
state. You can view these services with PListServices.- Returns:
- The number of services that are running on the cluster in an
ACTIVE
state. You can view these services with PListServices.
-
hasStatistics
public final boolean hasStatistics()
For responses, this returns true if the service returned a value for the Statistics property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
statistics
public final List<KeyValuePair> statistics()
Additional information about your clusters that are separated by launch type. They include the following:
-
runningEC2TasksCount
-
RunningFargateTasksCount
-
pendingEC2TasksCount
-
pendingFargateTasksCount
-
activeEC2ServiceCount
-
activeFargateServiceCount
-
drainingEC2ServiceCount
-
drainingFargateServiceCount
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
hasStatistics()
method.- Returns:
- Additional information about your clusters that are separated by launch type. They include the
following:
-
runningEC2TasksCount
-
RunningFargateTasksCount
-
pendingEC2TasksCount
-
pendingFargateTasksCount
-
activeEC2ServiceCount
-
activeFargateServiceCount
-
drainingEC2ServiceCount
-
drainingFargateServiceCount
-
-
-
hasTags
public final boolean hasTags()
For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
tags
public final List<Tag> tags()
The metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of a key and an optional value. You define both.
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.- Returns:
- The metadata that you apply to the cluster to help you categorize and organize them. Each tag consists of
a key and an optional value. You define both.
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.
-
-
-
hasSettings
public final boolean hasSettings()
For responses, this returns true if the service returned a value for the Settings property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
settings
public final List<ClusterSetting> settings()
The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a cluster.
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
hasSettings()
method.- Returns:
- The settings for the cluster. This parameter indicates whether CloudWatch Container Insights is on or off for a cluster.
-
hasCapacityProviders
public final boolean hasCapacityProviders()
For responses, this returns true if the service returned a value for the CapacityProviders property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
capacityProviders
public final List<String> capacityProviders()
The capacity providers associated with the cluster.
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
hasCapacityProviders()
method.- Returns:
- The capacity providers associated with the cluster.
-
hasDefaultCapacityProviderStrategy
public final boolean hasDefaultCapacityProviderStrategy()
For responses, this returns true if the service returned a value for the DefaultCapacityProviderStrategy property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
defaultCapacityProviderStrategy
public final List<CapacityProviderStrategyItem> defaultCapacityProviderStrategy()
The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
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
hasDefaultCapacityProviderStrategy()
method.- Returns:
- The default capacity provider strategy for the cluster. When services or tasks are run in the cluster with no launch type or capacity provider strategy specified, the default capacity provider strategy is used.
-
hasAttachments
public final boolean hasAttachments()
For responses, this returns true if the service returned a value for the Attachments property. This DOES NOT check that the value is non-empty (for which, you should check theisEmpty()
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.
-
attachments
public final List<Attachment> attachments()
The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.
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
hasAttachments()
method.- Returns:
- The resources attached to a cluster. When using a capacity provider with a cluster, the capacity provider and associated resources are returned as cluster attachments.
-
attachmentsStatus
public final String attachmentsStatus()
The status of the capacity providers associated with the cluster. The following are the states that are returned.
- UPDATE_IN_PROGRESS
-
The available capacity providers for the cluster are updating.
- UPDATE_COMPLETE
-
The capacity providers have successfully updated.
- UPDATE_FAILED
-
The capacity provider updates failed.
- Returns:
- The status of the capacity providers associated with the cluster. The following are the states that are
returned.
- UPDATE_IN_PROGRESS
-
The available capacity providers for the cluster are updating.
- UPDATE_COMPLETE
-
The capacity providers have successfully updated.
- UPDATE_FAILED
-
The capacity provider updates failed.
-
serviceConnectDefaults
public final ClusterServiceConnectDefaults serviceConnectDefaults()
Use this parameter to set a default Service Connect namespace. After you set a default Service Connect namespace, any new services with Service Connect turned on that are created in the cluster are added as client services in the namespace. This setting only applies to new services that set the
enabled
parameter totrue
in theServiceConnectConfiguration
. You can set the namespace of each service individually in theServiceConnectConfiguration
to override this default parameter.Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.
- Returns:
- Use this parameter to set a default Service Connect namespace. After you set a default Service Connect
namespace, any new services with Service Connect turned on that are created in the cluster are added as
client services in the namespace. This setting only applies to new services that set the
enabled
parameter totrue
in theServiceConnectConfiguration
. You can set the namespace of each service individually in theServiceConnectConfiguration
to override this default parameter.Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide.
-
toBuilder
public Cluster.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<Cluster.Builder,Cluster>
-
builder
public static Cluster.Builder builder()
-
serializableBuilderClass
public static Class<? extends Cluster.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.
-
-