@Generated(value="software.amazon.awssdk:codegen") public final class CacheCluster extends Object implements SdkPojo, Serializable, ToCopyableBuilder<CacheCluster.Builder,CacheCluster>
Contains all of the attributes of a specific cluster.
| Modifier and Type | Class and Description |
|---|---|
static interface |
CacheCluster.Builder |
| Modifier and Type | Method and Description |
|---|---|
String |
arn()
The ARN (Amazon Resource Name) of the cache cluster.
|
Boolean |
atRestEncryptionEnabled()
A flag that enables encryption at-rest when set to
true. |
Boolean |
authTokenEnabled()
A flag that enables using an
AuthToken (password) when issuing Redis commands. |
Instant |
authTokenLastModifiedDate()
The date the auth token was last modified
|
Boolean |
autoMinorVersionUpgrade()
If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the
next auto minor version upgrade campaign.
|
static CacheCluster.Builder |
builder() |
Instant |
cacheClusterCreateTime()
The date and time when the cluster was created.
|
String |
cacheClusterId()
The user-supplied identifier of the cluster.
|
String |
cacheClusterStatus()
The current state of this cluster, one of the following values:
available, creating,
deleted, deleting, incompatible-network, modifying,
rebooting cluster nodes, restore-failed, or snapshotting. |
List<CacheNode> |
cacheNodes()
A list of cache nodes that are members of the cluster.
|
String |
cacheNodeType()
The name of the compute and memory capacity node type for the cluster.
|
CacheParameterGroupStatus |
cacheParameterGroup()
Status of the cache parameter group.
|
List<CacheSecurityGroupMembership> |
cacheSecurityGroups()
A list of cache security group elements, composed of name and status sub-elements.
|
String |
cacheSubnetGroupName()
The name of the cache subnet group associated with the cluster.
|
String |
clientDownloadLandingPage()
The URL of the web page where you can download the latest ElastiCache client library.
|
Endpoint |
configurationEndpoint()
Represents a Memcached cluster endpoint which can be used by an application to connect to any node in the
cluster.
|
String |
engine()
The name of the cache engine (
memcached or redis) to be used for this cluster. |
String |
engineVersion()
The version of the cache engine that is used in this cluster.
|
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
boolean |
hasCacheNodes()
For responses, this returns true if the service returned a value for the CacheNodes property.
|
boolean |
hasCacheSecurityGroups()
For responses, this returns true if the service returned a value for the CacheSecurityGroups property.
|
int |
hashCode() |
boolean |
hasLogDeliveryConfigurations()
For responses, this returns true if the service returned a value for the LogDeliveryConfigurations property.
|
boolean |
hasSecurityGroups()
For responses, this returns true if the service returned a value for the SecurityGroups property.
|
IpDiscovery |
ipDiscovery()
The network type associated with the cluster, either
ipv4 | ipv6. |
String |
ipDiscoveryAsString()
The network type associated with the cluster, either
ipv4 | ipv6. |
List<LogDeliveryConfiguration> |
logDeliveryConfigurations()
Returns the destination, format and type of the logs.
|
NetworkType |
networkType()
Must be either
ipv4 | ipv6 | dual_stack. |
String |
networkTypeAsString()
Must be either
ipv4 | ipv6 | dual_stack. |
NotificationConfiguration |
notificationConfiguration()
Describes a notification topic and its status.
|
Integer |
numCacheNodes()
The number of cache nodes in the cluster.
|
PendingModifiedValues |
pendingModifiedValues()
Returns the value of the PendingModifiedValues property for this object.
|
String |
preferredAvailabilityZone()
The name of the Availability Zone in which the cluster is located or "Multiple" if the cache nodes are located in
different Availability Zones.
|
String |
preferredMaintenanceWindow()
Specifies the weekly time range during which maintenance on the cluster is performed.
|
String |
preferredOutpostArn()
The outpost ARN in which the cache cluster is created.
|
String |
replicationGroupId()
The replication group to which this cluster belongs.
|
Boolean |
replicationGroupLogDeliveryEnabled()
A boolean value indicating whether log delivery is enabled for the replication group.
|
List<SdkField<?>> |
sdkFields() |
List<SecurityGroupMembership> |
securityGroups()
A list of VPC Security Groups associated with the cluster.
|
static Class<? extends CacheCluster.Builder> |
serializableBuilderClass() |
Integer |
snapshotRetentionLimit()
The number of days for which ElastiCache retains automatic cluster snapshots before deleting them.
|
String |
snapshotWindow()
The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your cluster.
|
CacheCluster.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
Boolean |
transitEncryptionEnabled()
A flag that enables in-transit encryption when set to
true. |
TransitEncryptionMode |
transitEncryptionMode()
A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.
|
String |
transitEncryptionModeAsString()
A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcopypublic final String cacheClusterId()
The user-supplied identifier of the cluster. This identifier is a unique key that identifies a cluster.
public final Endpoint configurationEndpoint()
Represents a Memcached cluster endpoint which can be used by an application to connect to any node in the
cluster. The configuration endpoint will always have .cfg in it.
Example: mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211
.cfg in it.
Example: mem-3.9dvc4r.cfg.usw2.cache.amazonaws.com:11211
public final String clientDownloadLandingPage()
The URL of the web page where you can download the latest ElastiCache client library.
public final String cacheNodeType()
The name of the compute and memory capacity node type for the cluster.
The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.
General purpose:
Current generation:
M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version
1.5.16 onward): cache.m6g.large, cache.m6g.xlarge, cache.m6g.2xlarge,
cache.m6g.4xlarge, cache.m6g.8xlarge, cache.m6g.12xlarge,
cache.m6g.16xlarge
For region availability, see Supported Node Types
M5 node types: cache.m5.large, cache.m5.xlarge, cache.m5.2xlarge,
cache.m5.4xlarge, cache.m5.12xlarge, cache.m5.24xlarge
M4 node types: cache.m4.large, cache.m4.xlarge, cache.m4.2xlarge,
cache.m4.4xlarge, cache.m4.10xlarge
T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version 1.5.16
onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium
T3 node types: cache.t3.micro, cache.t3.small, cache.t3.medium
T2 node types: cache.t2.micro, cache.t2.small, cache.t2.medium
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
T1 node types: cache.t1.micro
M1 node types: cache.m1.small, cache.m1.medium, cache.m1.large,
cache.m1.xlarge
M3 node types: cache.m3.medium, cache.m3.large, cache.m3.xlarge,
cache.m3.2xlarge
Compute optimized:
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
C1 node types: cache.c1.xlarge
Memory optimized:
Current generation:
R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).
cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge,
cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge,
cache.r6g.16xlarge
For region availability, see Supported Node Types
R5 node types: cache.r5.large, cache.r5.xlarge, cache.r5.2xlarge,
cache.r5.4xlarge, cache.r5.12xlarge, cache.r5.24xlarge
R4 node types: cache.r4.large, cache.r4.xlarge, cache.r4.2xlarge,
cache.r4.4xlarge, cache.r4.8xlarge, cache.r4.16xlarge
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
M2 node types: cache.m2.xlarge, cache.m2.2xlarge, cache.m2.4xlarge
R3 node types: cache.r3.large, cache.r3.xlarge, cache.r3.2xlarge,
cache.r3.4xlarge, cache.r3.8xlarge
Additional node type info
All current generation instance types are created in Amazon VPC by default.
Redis append-only files (AOF) are not supported for T1 or T2 instances.
Redis Multi-AZ with automatic failover is not supported on T1 instances.
Redis configuration variables appendonly and appendfsync are not supported on Redis
version 2.8.22 and later.
The following node types are supported by ElastiCache. Generally speaking, the current generation types provide more memory and computational power at lower cost when compared to their equivalent previous generation counterparts.
General purpose:
Current generation:
M6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine
version 1.5.16 onward): cache.m6g.large, cache.m6g.xlarge,
cache.m6g.2xlarge, cache.m6g.4xlarge, cache.m6g.8xlarge,
cache.m6g.12xlarge, cache.m6g.16xlarge
For region availability, see Supported Node Types
M5 node types: cache.m5.large, cache.m5.xlarge,
cache.m5.2xlarge, cache.m5.4xlarge, cache.m5.12xlarge,
cache.m5.24xlarge
M4 node types: cache.m4.large, cache.m4.xlarge,
cache.m4.2xlarge, cache.m4.4xlarge, cache.m4.10xlarge
T4g node types (available only for Redis engine version 5.0.6 onward and Memcached engine version
1.5.16 onward): cache.t4g.micro, cache.t4g.small, cache.t4g.medium
T3 node types: cache.t3.micro, cache.t3.small,
cache.t3.medium
T2 node types: cache.t2.micro, cache.t2.small,
cache.t2.medium
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
T1 node types: cache.t1.micro
M1 node types: cache.m1.small, cache.m1.medium,
cache.m1.large, cache.m1.xlarge
M3 node types: cache.m3.medium, cache.m3.large,
cache.m3.xlarge, cache.m3.2xlarge
Compute optimized:
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
C1 node types: cache.c1.xlarge
Memory optimized:
Current generation:
R6g node types (available only for Redis engine version 5.0.6 onward and for Memcached engine version 1.5.16 onward).
cache.r6g.large, cache.r6g.xlarge, cache.r6g.2xlarge,
cache.r6g.4xlarge, cache.r6g.8xlarge, cache.r6g.12xlarge,
cache.r6g.16xlarge
For region availability, see Supported Node Types
R5 node types: cache.r5.large, cache.r5.xlarge,
cache.r5.2xlarge, cache.r5.4xlarge, cache.r5.12xlarge,
cache.r5.24xlarge
R4 node types: cache.r4.large, cache.r4.xlarge,
cache.r4.2xlarge, cache.r4.4xlarge, cache.r4.8xlarge,
cache.r4.16xlarge
Previous generation: (not recommended. Existing clusters are still supported but creation of new clusters is not supported for these types.)
M2 node types: cache.m2.xlarge, cache.m2.2xlarge,
cache.m2.4xlarge
R3 node types: cache.r3.large, cache.r3.xlarge,
cache.r3.2xlarge, cache.r3.4xlarge, cache.r3.8xlarge
Additional node type info
All current generation instance types are created in Amazon VPC by default.
Redis append-only files (AOF) are not supported for T1 or T2 instances.
Redis Multi-AZ with automatic failover is not supported on T1 instances.
Redis configuration variables appendonly and appendfsync are not supported on
Redis version 2.8.22 and later.
public final String engine()
The name of the cache engine (memcached or redis) to be used for this cluster.
memcached or redis) to be used for this cluster.public final String engineVersion()
The version of the cache engine that is used in this cluster.
public final String cacheClusterStatus()
The current state of this cluster, one of the following values: available, creating,
deleted, deleting, incompatible-network, modifying,
rebooting cluster nodes, restore-failed, or snapshotting.
available,
creating, deleted, deleting, incompatible-network,
modifying, rebooting cluster nodes, restore-failed, or
snapshotting.public final Integer numCacheNodes()
The number of cache nodes in the cluster.
For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.
For clusters running Redis, this value must be 1. For clusters running Memcached, this value must be between 1 and 40.
public final String preferredAvailabilityZone()
The name of the Availability Zone in which the cluster is located or "Multiple" if the cache nodes are located in different Availability Zones.
public final String preferredOutpostArn()
The outpost ARN in which the cache cluster is created.
public final Instant cacheClusterCreateTime()
The date and time when the cluster was created.
public final String preferredMaintenanceWindow()
Specifies the weekly time range during which maintenance on the cluster is performed. It is specified as a range in the format ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). The minimum maintenance window is a 60 minute period.
Valid values for ddd are:
sun
mon
tue
wed
thu
fri
sat
Example: sun:23:00-mon:01:30
Valid values for ddd are:
sun
mon
tue
wed
thu
fri
sat
Example: sun:23:00-mon:01:30
public final PendingModifiedValues pendingModifiedValues()
public final NotificationConfiguration notificationConfiguration()
Describes a notification topic and its status. Notification topics are used for publishing ElastiCache events to subscribers using Amazon Simple Notification Service (SNS).
public final boolean hasCacheSecurityGroups()
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<CacheSecurityGroupMembership> cacheSecurityGroups()
A list of cache security group elements, composed of name and status sub-elements.
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 hasCacheSecurityGroups() method.
public final CacheParameterGroupStatus cacheParameterGroup()
Status of the cache parameter group.
public final String cacheSubnetGroupName()
The name of the cache subnet group associated with the cluster.
public final boolean hasCacheNodes()
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<CacheNode> cacheNodes()
A list of cache nodes that are members of 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 hasCacheNodes() method.
public final Boolean autoMinorVersionUpgrade()
If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next auto minor version upgrade campaign. This parameter is disabled for previous versions.
public final boolean hasSecurityGroups()
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<SecurityGroupMembership> securityGroups()
A list of VPC Security Groups 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 hasSecurityGroups() method.
public final String replicationGroupId()
The replication group to which this cluster belongs. If this field is empty, the cluster is not associated with any replication group.
public final Integer snapshotRetentionLimit()
The number of days for which ElastiCache retains automatic cluster snapshots before deleting them. For example,
if you set SnapshotRetentionLimit to 5, a snapshot that was taken today is retained for 5 days
before being deleted.
If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.
SnapshotRetentionLimit to 5, a snapshot that was taken today is retained
for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off.
public final String snapshotWindow()
The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your cluster.
Example: 05:00-09:00
Example: 05:00-09:00
public final Boolean authTokenEnabled()
A flag that enables using an AuthToken (password) when issuing Redis commands.
Default: false
AuthToken (password) when issuing Redis commands.
Default: false
public final Instant authTokenLastModifiedDate()
The date the auth token was last modified
public final Boolean transitEncryptionEnabled()
A flag that enables in-transit encryption when set to true.
Required: Only available when creating a replication group in an Amazon VPC using redis version
3.2.6, 4.x or later.
Default: false
true.
Required: Only available when creating a replication group in an Amazon VPC using redis version
3.2.6, 4.x or later.
Default: false
public final Boolean atRestEncryptionEnabled()
A flag that enables encryption at-rest when set to true.
You cannot modify the value of AtRestEncryptionEnabled after the cluster is created. To enable
at-rest encryption on a cluster you must set AtRestEncryptionEnabled to true when you
create a cluster.
Required: Only available when creating a replication group in an Amazon VPC using redis version
3.2.6, 4.x or later.
Default: false
true.
You cannot modify the value of AtRestEncryptionEnabled after the cluster is created. To
enable at-rest encryption on a cluster you must set AtRestEncryptionEnabled to
true when you create a cluster.
Required: Only available when creating a replication group in an Amazon VPC using redis version
3.2.6, 4.x or later.
Default: false
public final String arn()
The ARN (Amazon Resource Name) of the cache cluster.
public final Boolean replicationGroupLogDeliveryEnabled()
A boolean value indicating whether log delivery is enabled for the replication group.
public final boolean hasLogDeliveryConfigurations()
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<LogDeliveryConfiguration> logDeliveryConfigurations()
Returns the destination, format and type of the logs.
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 hasLogDeliveryConfigurations() method.
public final NetworkType networkType()
Must be either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads
using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.
If the service returns an enum value that is not available in the current SDK version, networkType will
return NetworkType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
networkTypeAsString().
ipv4 | ipv6 | dual_stack. IPv6 is supported for
workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built
on the Nitro system.NetworkTypepublic final String networkTypeAsString()
Must be either ipv4 | ipv6 | dual_stack. IPv6 is supported for workloads
using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the Nitro system.
If the service returns an enum value that is not available in the current SDK version, networkType will
return NetworkType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
networkTypeAsString().
ipv4 | ipv6 | dual_stack. IPv6 is supported for
workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built
on the Nitro system.NetworkTypepublic final IpDiscovery ipDiscovery()
The network type associated with the cluster, either ipv4 | ipv6. IPv6 is supported for
workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the
Nitro system.
If the service returns an enum value that is not available in the current SDK version, ipDiscovery will
return IpDiscovery.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
ipDiscoveryAsString().
ipv4 | ipv6. IPv6 is
supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all
instances built on the Nitro system.IpDiscoverypublic final String ipDiscoveryAsString()
The network type associated with the cluster, either ipv4 | ipv6. IPv6 is supported for
workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the
Nitro system.
If the service returns an enum value that is not available in the current SDK version, ipDiscovery will
return IpDiscovery.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from
ipDiscoveryAsString().
ipv4 | ipv6. IPv6 is
supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all
instances built on the Nitro system.IpDiscoverypublic final TransitEncryptionMode transitEncryptionMode()
A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.
If the service returns an enum value that is not available in the current SDK version,
transitEncryptionMode will return TransitEncryptionMode.UNKNOWN_TO_SDK_VERSION. The raw value
returned by the service is available from transitEncryptionModeAsString().
TransitEncryptionModepublic final String transitEncryptionModeAsString()
A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.
If the service returns an enum value that is not available in the current SDK version,
transitEncryptionMode will return TransitEncryptionMode.UNKNOWN_TO_SDK_VERSION. The raw value
returned by the service is available from transitEncryptionModeAsString().
TransitEncryptionModepublic CacheCluster.Builder toBuilder()
toBuilder in interface ToCopyableBuilder<CacheCluster.Builder,CacheCluster>public static CacheCluster.Builder builder()
public static Class<? extends CacheCluster.Builder> serializableBuilderClass()
public final boolean equalsBySdkFields(Object obj)
equalsBySdkFields in interface SdkPojopublic final String toString()
Copyright © 2023. All rights reserved.