Class CfnCacheCluster

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2024-11-15T10:24:59.203Z") @Stability(Stable) public class CfnCacheCluster extends CfnResource implements IInspectable, ITaggable
The AWS::ElastiCache::CacheCluster type creates an Amazon ElastiCache cache cluster.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.elasticache.*;
 CfnCacheCluster cfnCacheCluster = CfnCacheCluster.Builder.create(this, "MyCfnCacheCluster")
         .cacheNodeType("cacheNodeType")
         .engine("engine")
         .numCacheNodes(123)
         // the properties below are optional
         .autoMinorVersionUpgrade(false)
         .azMode("azMode")
         .cacheParameterGroupName("cacheParameterGroupName")
         .cacheSecurityGroupNames(List.of("cacheSecurityGroupNames"))
         .cacheSubnetGroupName("cacheSubnetGroupName")
         .clusterName("clusterName")
         .engineVersion("engineVersion")
         .ipDiscovery("ipDiscovery")
         .logDeliveryConfigurations(List.of(LogDeliveryConfigurationRequestProperty.builder()
                 .destinationDetails(DestinationDetailsProperty.builder()
                         .cloudWatchLogsDetails(CloudWatchLogsDestinationDetailsProperty.builder()
                                 .logGroup("logGroup")
                                 .build())
                         .kinesisFirehoseDetails(KinesisFirehoseDestinationDetailsProperty.builder()
                                 .deliveryStream("deliveryStream")
                                 .build())
                         .build())
                 .destinationType("destinationType")
                 .logFormat("logFormat")
                 .logType("logType")
                 .build()))
         .networkType("networkType")
         .notificationTopicArn("notificationTopicArn")
         .port(123)
         .preferredAvailabilityZone("preferredAvailabilityZone")
         .preferredAvailabilityZones(List.of("preferredAvailabilityZones"))
         .preferredMaintenanceWindow("preferredMaintenanceWindow")
         .snapshotArns(List.of("snapshotArns"))
         .snapshotName("snapshotName")
         .snapshotRetentionLimit(123)
         .snapshotWindow("snapshotWindow")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .transitEncryptionEnabled(false)
         .vpcSecurityGroupIds(List.of("vpcSecurityGroupIds"))
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnCacheCluster

      protected CfnCacheCluster(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnCacheCluster

      protected CfnCacheCluster(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnCacheCluster

      @Stability(Stable) public CfnCacheCluster(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnCacheClusterProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrConfigurationEndpointAddress

      @Stability(Stable) @NotNull public String getAttrConfigurationEndpointAddress()
      The DNS hostname of the cache node.

      Valkey and Redis OSS (cluster mode disabled) replication groups don't have this attribute. Therefore, Fn::GetAtt returns a value for this attribute only if the replication group is clustered. Otherwise, Fn::GetAtt fails.

    • getAttrConfigurationEndpointPort

      @Stability(Stable) @NotNull public String getAttrConfigurationEndpointPort()
      The port number of the configuration endpoint for the Memcached cache cluster.

      Valkey and Redis OSS (cluster mode disabled) replication groups don't have this attribute. Therefore, Fn::GetAtt returns a value for this attribute only if the replication group is clustered. Otherwise, Fn::GetAtt fails.

    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The resource name.
    • getAttrRedisEndpointAddress

      @Stability(Stable) @NotNull public String getAttrRedisEndpointAddress()
      The DNS address of the configuration endpoint for the Valkey or Redis OSS cache cluster.
    • getAttrRedisEndpointPort

      @Stability(Stable) @NotNull public String getAttrRedisEndpointPort()
      The port number of the configuration endpoint for the Valkey or Redis OSS cache cluster.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getCacheNodeType

      @Stability(Stable) @NotNull public String getCacheNodeType()
      The compute and memory capacity of the nodes in the node group (shard).
    • setCacheNodeType

      @Stability(Stable) public void setCacheNodeType(@NotNull String value)
      The compute and memory capacity of the nodes in the node group (shard).
    • getEngine

      @Stability(Stable) @NotNull public String getEngine()
      The name of the cache engine to be used for this cluster.
    • setEngine

      @Stability(Stable) public void setEngine(@NotNull String value)
      The name of the cache engine to be used for this cluster.
    • getNumCacheNodes

      @Stability(Stable) @NotNull public Number getNumCacheNodes()
      The number of cache nodes that the cache cluster should have.
    • setNumCacheNodes

      @Stability(Stable) public void setNumCacheNodes(@NotNull Number value)
      The number of cache nodes that the cache cluster should have.
    • getAutoMinorVersionUpgrade

      @Stability(Stable) @Nullable public Object getAutoMinorVersionUpgrade()
      If you are running Valkey 7.2 or later, or Redis OSS engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next minor version upgrade campaign. This parameter is disabled for previous versions.
    • setAutoMinorVersionUpgrade

      @Stability(Stable) public void setAutoMinorVersionUpgrade(@Nullable Boolean value)
      If you are running Valkey 7.2 or later, or Redis OSS engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next minor version upgrade campaign. This parameter is disabled for previous versions.
    • setAutoMinorVersionUpgrade

      @Stability(Stable) public void setAutoMinorVersionUpgrade(@Nullable IResolvable value)
      If you are running Valkey 7.2 or later, or Redis OSS engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next minor version upgrade campaign. This parameter is disabled for previous versions.
    • getAzMode

      @Stability(Stable) @Nullable public String getAzMode()
      Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.
    • setAzMode

      @Stability(Stable) public void setAzMode(@Nullable String value)
      Specifies whether the nodes in this Memcached cluster are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region.
    • getCacheParameterGroupName

      @Stability(Stable) @Nullable public String getCacheParameterGroupName()
      The name of the parameter group to associate with this cluster.
    • setCacheParameterGroupName

      @Stability(Stable) public void setCacheParameterGroupName(@Nullable String value)
      The name of the parameter group to associate with this cluster.
    • getCacheSecurityGroupNames

      @Stability(Stable) @Nullable public List<String> getCacheSecurityGroupNames()
      A list of security group names to associate with this cluster.
    • setCacheSecurityGroupNames

      @Stability(Stable) public void setCacheSecurityGroupNames(@Nullable List<String> value)
      A list of security group names to associate with this cluster.
    • getCacheSubnetGroupName

      @Stability(Stable) @Nullable public String getCacheSubnetGroupName()
      The name of the subnet group to be used for the cluster.
    • setCacheSubnetGroupName

      @Stability(Stable) public void setCacheSubnetGroupName(@Nullable String value)
      The name of the subnet group to be used for the cluster.
    • getClusterName

      @Stability(Stable) @Nullable public String getClusterName()
      A name for the cache cluster.
    • setClusterName

      @Stability(Stable) public void setClusterName(@Nullable String value)
      A name for the cache cluster.
    • getEngineVersion

      @Stability(Stable) @Nullable public String getEngineVersion()
      The version number of the cache engine to be used for this cluster.
    • setEngineVersion

      @Stability(Stable) public void setEngineVersion(@Nullable String value)
      The version number of the cache engine to be used for this cluster.
    • getIpDiscovery

      @Stability(Stable) @Nullable public String getIpDiscovery()
      The network type you choose when modifying a cluster, either ipv4 | ipv6 .
    • setIpDiscovery

      @Stability(Stable) public void setIpDiscovery(@Nullable String value)
      The network type you choose when modifying a cluster, either ipv4 | ipv6 .
    • getLogDeliveryConfigurations

      @Stability(Stable) @Nullable public Object getLogDeliveryConfigurations()
      Specifies the destination, format and type of the logs.
    • setLogDeliveryConfigurations

      @Stability(Stable) public void setLogDeliveryConfigurations(@Nullable IResolvable value)
      Specifies the destination, format and type of the logs.
    • setLogDeliveryConfigurations

      @Stability(Stable) public void setLogDeliveryConfigurations(@Nullable List<Object> value)
      Specifies the destination, format and type of the logs.
    • getNetworkType

      @Stability(Stable) @Nullable public String getNetworkType()
      Must be either ipv4 | ipv6 | dual_stack .
    • setNetworkType

      @Stability(Stable) public void setNetworkType(@Nullable String value)
      Must be either ipv4 | ipv6 | dual_stack .
    • getNotificationTopicArn

      @Stability(Stable) @Nullable public String getNotificationTopicArn()
      The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.
    • setNotificationTopicArn

      @Stability(Stable) public void setNotificationTopicArn(@Nullable String value)
      The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.
    • getPort

      @Stability(Stable) @Nullable public Number getPort()
      The port number on which each of the cache nodes accepts connections.
    • setPort

      @Stability(Stable) public void setPort(@Nullable Number value)
      The port number on which each of the cache nodes accepts connections.
    • getPreferredAvailabilityZone

      @Stability(Stable) @Nullable public String getPreferredAvailabilityZone()
      The EC2 Availability Zone in which the cluster is created.
    • setPreferredAvailabilityZone

      @Stability(Stable) public void setPreferredAvailabilityZone(@Nullable String value)
      The EC2 Availability Zone in which the cluster is created.
    • getPreferredAvailabilityZones

      @Stability(Stable) @Nullable public List<String> getPreferredAvailabilityZones()
      A list of the Availability Zones in which cache nodes are created.
    • setPreferredAvailabilityZones

      @Stability(Stable) public void setPreferredAvailabilityZones(@Nullable List<String> value)
      A list of the Availability Zones in which cache nodes are created.
    • getPreferredMaintenanceWindow

      @Stability(Stable) @Nullable public String getPreferredMaintenanceWindow()
      Specifies the weekly time range during which maintenance on the cluster is performed.
    • setPreferredMaintenanceWindow

      @Stability(Stable) public void setPreferredMaintenanceWindow(@Nullable String value)
      Specifies the weekly time range during which maintenance on the cluster is performed.
    • getSnapshotArns

      @Stability(Stable) @Nullable public List<String> getSnapshotArns()
      A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Valkey or Redis OSS RDB snapshot file stored in Amazon S3.
    • setSnapshotArns

      @Stability(Stable) public void setSnapshotArns(@Nullable List<String> value)
      A single-element string list containing an Amazon Resource Name (ARN) that uniquely identifies a Valkey or Redis OSS RDB snapshot file stored in Amazon S3.
    • getSnapshotName

      @Stability(Stable) @Nullable public String getSnapshotName()
      The name of a Valkey or Redis OSS snapshot from which to restore data into the new node group (shard).
    • setSnapshotName

      @Stability(Stable) public void setSnapshotName(@Nullable String value)
      The name of a Valkey or Redis OSS snapshot from which to restore data into the new node group (shard).
    • getSnapshotRetentionLimit

      @Stability(Stable) @Nullable public Number getSnapshotRetentionLimit()
      The number of days for which ElastiCache retains automatic snapshots before deleting them.
    • setSnapshotRetentionLimit

      @Stability(Stable) public void setSnapshotRetentionLimit(@Nullable Number value)
      The number of days for which ElastiCache retains automatic snapshots before deleting them.
    • getSnapshotWindow

      @Stability(Stable) @Nullable public String getSnapshotWindow()
      The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).
    • setSnapshotWindow

      @Stability(Stable) public void setSnapshotWindow(@Nullable String value)
      The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).
    • getTagsRaw

      @Stability(Stable) @Nullable public List<CfnTag> getTagsRaw()
      A list of tags to be added to this resource.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable List<CfnTag> value)
      A list of tags to be added to this resource.
    • getTransitEncryptionEnabled

      @Stability(Stable) @Nullable public Object getTransitEncryptionEnabled()
      A flag that enables in-transit encryption when set to true.
    • setTransitEncryptionEnabled

      @Stability(Stable) public void setTransitEncryptionEnabled(@Nullable Boolean value)
      A flag that enables in-transit encryption when set to true.
    • setTransitEncryptionEnabled

      @Stability(Stable) public void setTransitEncryptionEnabled(@Nullable IResolvable value)
      A flag that enables in-transit encryption when set to true.
    • getVpcSecurityGroupIds

      @Stability(Stable) @Nullable public List<String> getVpcSecurityGroupIds()
      One or more VPC security groups associated with the cluster.
    • setVpcSecurityGroupIds

      @Stability(Stable) public void setVpcSecurityGroupIds(@Nullable List<String> value)
      One or more VPC security groups associated with the cluster.