class CfnReplicationGroupPropsMixin
| Language | Type name |
|---|---|
.NET | Amazon.CDK.Mixins.Preview.AWS.ElastiCache.Mixins.CfnReplicationGroupPropsMixin |
Go | github.com/aws/aws-cdk-go/awscdkmixinspreview/v2/awselasticache/mixins#CfnReplicationGroupPropsMixin |
Java | software.amazon.awscdk.mixins.preview.services.elasticache.mixins.CfnReplicationGroupPropsMixin |
Python | aws_cdk.mixins_preview.aws_elasticache.mixins.CfnReplicationGroupPropsMixin |
TypeScript | @aws-cdk/mixins-preview » aws_elasticache » mixins » CfnReplicationGroupPropsMixin |
Implements
IMixin
Extends
Mixin
The AWS::ElastiCache::ReplicationGroup resource creates an Amazon ElastiCache (Valkey or Redis OSS) replication group.
A Valkey or Redis OSS (cluster mode disabled) replication group is a collection of cache clusters, where one of the clusters is a primary read-write cluster and the others are read-only replicas.
A Valkey or Redis OSS (cluster mode enabled) cluster is comprised of from 1 to 90 shards (API/CLI: node groups). Each shard has a primary node and up to 5 read-only replica nodes. The configuration can range from 90 shards and 0 replicas to 15 shards and 5 replicas, which is the maximum number or replicas allowed.
The node or shard limit can be increased to a maximum of 500 per cluster if the engine version is Valkey 7.2 or higher, or Redis OSS 5.0.6 or higher. For example, you can choose to configure a 500 node cluster that ranges between 83 shards (one primary and 5 replicas per shard) and 500 shards (single primary and no replicas). Make sure there are enough available IP addresses to accommodate the increase. Common pitfalls include the subnets in the subnet group have too small a CIDR range or the subnets are shared and heavily used by other clusters. For more information, see Creating a Subnet Group . For versions below 5.0.6, the limit is 250 per cluster.
To request a limit increase, see Amazon Service Limits and choose the limit type Nodes per cluster per instance type .
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { mixins } from '@aws-cdk/mixins-preview';
import { mixins as elasticache_mixins } from '@aws-cdk/mixins-preview/aws-elasticache';
const cfnReplicationGroupPropsMixin = new elasticache_mixins.CfnReplicationGroupPropsMixin({
atRestEncryptionEnabled: false,
authToken: 'authToken',
automaticFailoverEnabled: false,
autoMinorVersionUpgrade: false,
cacheNodeType: 'cacheNodeType',
cacheParameterGroupName: 'cacheParameterGroupName',
cacheSecurityGroupNames: ['cacheSecurityGroupNames'],
cacheSubnetGroupName: 'cacheSubnetGroupName',
clusterMode: 'clusterMode',
dataTieringEnabled: false,
engine: 'engine',
engineVersion: 'engineVersion',
globalReplicationGroupId: 'globalReplicationGroupId',
ipDiscovery: 'ipDiscovery',
kmsKeyId: 'kmsKeyId',
logDeliveryConfigurations: [{
destinationDetails: {
cloudWatchLogsDetails: {
logGroup: 'logGroup',
},
kinesisFirehoseDetails: {
deliveryStream: 'deliveryStream',
},
},
destinationType: 'destinationType',
logFormat: 'logFormat',
logType: 'logType',
}],
multiAzEnabled: false,
networkType: 'networkType',
nodeGroupConfiguration: [{
nodeGroupId: 'nodeGroupId',
primaryAvailabilityZone: 'primaryAvailabilityZone',
replicaAvailabilityZones: ['replicaAvailabilityZones'],
replicaCount: 123,
slots: 'slots',
}],
notificationTopicArn: 'notificationTopicArn',
numCacheClusters: 123,
numNodeGroups: 123,
port: 123,
preferredCacheClusterAZs: ['preferredCacheClusterAZs'],
preferredMaintenanceWindow: 'preferredMaintenanceWindow',
primaryClusterId: 'primaryClusterId',
replicasPerNodeGroup: 123,
replicationGroupDescription: 'replicationGroupDescription',
replicationGroupId: 'replicationGroupId',
securityGroupIds: ['securityGroupIds'],
snapshotArns: ['snapshotArns'],
snapshotName: 'snapshotName',
snapshotRetentionLimit: 123,
snapshottingClusterId: 'snapshottingClusterId',
snapshotWindow: 'snapshotWindow',
tags: [{
key: 'key',
value: 'value',
}],
transitEncryptionEnabled: false,
transitEncryptionMode: 'transitEncryptionMode',
userGroupIds: ['userGroupIds'],
}, /* all optional props */ {
strategy: mixins.PropertyMergeStrategy.OVERRIDE,
});
Initializer
new CfnReplicationGroupPropsMixin(props: CfnReplicationGroupMixinProps, options?: CfnPropertyMixinOptions)
Parameters
- props
Cfn— L1 properties to apply.Replication Group Mixin Props - options
Cfn— Mixin options.Property Mixin Options
Create a mixin to apply properties to AWS::ElastiCache::ReplicationGroup.
Properties
| Name | Type | Description |
|---|---|---|
| props | Cfn | |
| strategy | Property | |
| static CFN_PROPERTY_KEYS | string[] |
props
Type:
Cfn
strategy
Type:
Property
static CFN_PROPERTY_KEYS
Type:
string[]
Methods
| Name | Description |
|---|---|
| apply | Apply the mixin properties to the construct. |
| supports(construct) | Check if this mixin supports the given construct. |
applyTo(construct)
public applyTo(construct: IConstruct): IConstruct
Parameters
- construct
IConstruct
Returns
Apply the mixin properties to the construct.
supports(construct)
public supports(construct: IConstruct): boolean
Parameters
- construct
IConstruct
Returns
boolean
Check if this mixin supports the given construct.

.NET
Go
Java
Python
TypeScript