published on Tuesday, Mar 10, 2026 by Pulumi
published on Tuesday, Mar 10, 2026 by Pulumi
Provides an ElastiCache Replication Group resource.
For working with a Memcached cluster or a
single-node Redis instance (Cluster Mode Disabled),
see the aws.elasticache.Cluster resource.
Note: When you change an attribute, such as
engine_version, by default the ElastiCache API applies it in the next maintenance window. Because of this, this provider may report a difference in its planning phase because the actual modification has not yet taken place. You can use theapply_immediatelyflag to instruct the service to apply the change immediately. Usingapply_immediatelycan result in a brief downtime as servers reboots. See the AWS Documentation on Modifying an ElastiCache Cache Cluster for more information.
Note: Any attribute changes that re-create the resource will be applied immediately, regardless of the value of
apply_immediately.
Note: Be aware of the terminology collision around “cluster” for
aws.elasticache.ReplicationGroup. For example, it is possible to create a “Cluster Mode Disabled [Redis] Cluster”. With “Cluster Mode Enabled”, the data will be stored in shards (called “node groups”). See Redis Cluster Configuration for a diagram of the differences. To enable cluster mode, use a parameter group that has cluster mode enabled. The default parameter groups provided by AWS end with “.cluster.on”, for exampledefault.redis6.x.cluster.on.
Example Usage
Redis Cluster Mode Disabled
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ElastiCache.ReplicationGroup("example", new()
{
AutomaticFailoverEnabled = true,
Description = "example description",
NodeType = "cache.m4.large",
NumCacheClusters = 2,
ParameterGroupName = "default.redis3.2",
Port = 6379,
PreferredCacheClusterAzs = new[]
{
"us-west-2a",
"us-west-2b",
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/elasticache"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := elasticache.NewReplicationGroup(ctx, "example", &elasticache.ReplicationGroupArgs{
AutomaticFailoverEnabled: pulumi.Bool(true),
Description: pulumi.String("example description"),
NodeType: pulumi.String("cache.m4.large"),
NumCacheClusters: pulumi.Int(2),
ParameterGroupName: pulumi.String("default.redis3.2"),
Port: pulumi.Int(6379),
PreferredCacheClusterAzs: pulumi.StringArray{
pulumi.String("us-west-2a"),
pulumi.String("us-west-2b"),
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.ReplicationGroup;
import com.pulumi.aws.elasticache.ReplicationGroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ReplicationGroup("example", ReplicationGroupArgs.builder()
.automaticFailoverEnabled(true)
.description("example description")
.nodeType("cache.m4.large")
.numCacheClusters(2)
.parameterGroupName("default.redis3.2")
.port(6379)
.preferredCacheClusterAzs(
"us-west-2a",
"us-west-2b")
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.elasticache.ReplicationGroup("example", {
automaticFailoverEnabled: true,
description: "example description",
nodeType: "cache.m4.large",
numCacheClusters: 2,
parameterGroupName: "default.redis3.2",
port: 6379,
preferredCacheClusterAzs: [
"us-west-2a",
"us-west-2b",
],
});
import pulumi
import pulumi_aws as aws
example = aws.elasticache.ReplicationGroup("example",
automatic_failover_enabled=True,
description="example description",
node_type="cache.m4.large",
num_cache_clusters=2,
parameter_group_name="default.redis3.2",
port=6379,
preferred_cache_cluster_azs=[
"us-west-2a",
"us-west-2b",
])
resources:
example:
type: aws:elasticache:ReplicationGroup
properties:
automaticFailoverEnabled: true
description: example description
nodeType: cache.m4.large
numCacheClusters: 2
parameterGroupName: default.redis3.2
port: 6379
preferredCacheClusterAzs:
- us-west-2a
- us-west-2b
attribute.
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ElastiCache.ReplicationGroup("example", new()
{
AutomaticFailoverEnabled = true,
PreferredCacheClusterAzs = new[]
{
"us-west-2a",
"us-west-2b",
},
Description = "example description",
NodeType = "cache.m4.large",
NumCacheClusters = 2,
ParameterGroupName = "default.redis3.2",
Port = 6379,
});
var replica = new List<Aws.ElastiCache.Cluster>();
for (var rangeIndex = 0; rangeIndex < (1 == true); rangeIndex++)
{
var range = new { Value = rangeIndex };
replica.Add(new Aws.ElastiCache.Cluster($"replica-{range.Value}", new()
{
ReplicationGroupId = example.Id,
}));
}
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/elasticache"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := elasticache.NewReplicationGroup(ctx, "example", &elasticache.ReplicationGroupArgs{
AutomaticFailoverEnabled: pulumi.Bool(true),
PreferredCacheClusterAzs: pulumi.StringArray{
pulumi.String("us-west-2a"),
pulumi.String("us-west-2b"),
},
Description: pulumi.String("example description"),
NodeType: pulumi.String("cache.m4.large"),
NumCacheClusters: pulumi.Int(2),
ParameterGroupName: pulumi.String("default.redis3.2"),
Port: pulumi.Int(6379),
})
if err != nil {
return err
}
var replica []*elasticache.Cluster
for index := 0; index < 1 == true; index++ {
key0 := index
_ := index
__res, err := elasticache.NewCluster(ctx, fmt.Sprintf("replica-%v", key0), &elasticache.ClusterArgs{
ReplicationGroupId: example.ID(),
})
if err != nil {
return err
}
replica = append(replica, __res)
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.ReplicationGroup;
import com.pulumi.aws.elasticache.ReplicationGroupArgs;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import com.pulumi.codegen.internal.KeyedValue;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ReplicationGroup("example", ReplicationGroupArgs.builder()
.automaticFailoverEnabled(true)
.preferredCacheClusterAzs(
"us-west-2a",
"us-west-2b")
.description("example description")
.nodeType("cache.m4.large")
.numCacheClusters(2)
.parameterGroupName("default.redis3.2")
.port(6379)
.build());
for (var i = 0; i < (1 == true); i++) {
new Cluster("replica-" + i, ClusterArgs.builder()
.replicationGroupId(example.id())
.build());
}
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.elasticache.ReplicationGroup("example", {
automaticFailoverEnabled: true,
preferredCacheClusterAzs: [
"us-west-2a",
"us-west-2b",
],
description: "example description",
nodeType: "cache.m4.large",
numCacheClusters: 2,
parameterGroupName: "default.redis3.2",
port: 6379,
});
let replica: aws.elasticache.Cluster | undefined;
if (1 == true) {
replica = new aws.elasticache.Cluster("replica", {replicationGroupId: example.id});
}
import pulumi
import pulumi_aws as aws
example = aws.elasticache.ReplicationGroup("example",
automatic_failover_enabled=True,
preferred_cache_cluster_azs=[
"us-west-2a",
"us-west-2b",
],
description="example description",
node_type="cache.m4.large",
num_cache_clusters=2,
parameter_group_name="default.redis3.2",
port=6379)
replica = None
if 1 == True:
replica = aws.elasticache.Cluster("replica", replication_group_id=example.id)
resources:
example:
type: aws:elasticache:ReplicationGroup
properties:
automaticFailoverEnabled: true
preferredCacheClusterAzs:
- us-west-2a
- us-west-2b
description: example description
nodeType: cache.m4.large
numCacheClusters: 2
parameterGroupName: default.redis3.2
port: 6379
replica:
type: aws:elasticache:Cluster
properties:
replicationGroupId: ${example.id}
options: {}
Redis Cluster Mode Enabled
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var baz = new Aws.ElastiCache.ReplicationGroup("baz", new()
{
AutomaticFailoverEnabled = true,
Description = "example description",
NodeType = "cache.t2.small",
NumNodeGroups = 2,
ParameterGroupName = "default.redis3.2.cluster.on",
Port = 6379,
ReplicasPerNodeGroup = 1,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/elasticache"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := elasticache.NewReplicationGroup(ctx, "baz", &elasticache.ReplicationGroupArgs{
AutomaticFailoverEnabled: pulumi.Bool(true),
Description: pulumi.String("example description"),
NodeType: pulumi.String("cache.t2.small"),
NumNodeGroups: pulumi.Int(2),
ParameterGroupName: pulumi.String("default.redis3.2.cluster.on"),
Port: pulumi.Int(6379),
ReplicasPerNodeGroup: pulumi.Int(1),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.ReplicationGroup;
import com.pulumi.aws.elasticache.ReplicationGroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var baz = new ReplicationGroup("baz", ReplicationGroupArgs.builder()
.automaticFailoverEnabled(true)
.description("example description")
.nodeType("cache.t2.small")
.numNodeGroups(2)
.parameterGroupName("default.redis3.2.cluster.on")
.port(6379)
.replicasPerNodeGroup(1)
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const baz = new aws.elasticache.ReplicationGroup("baz", {
automaticFailoverEnabled: true,
description: "example description",
nodeType: "cache.t2.small",
numNodeGroups: 2,
parameterGroupName: "default.redis3.2.cluster.on",
port: 6379,
replicasPerNodeGroup: 1,
});
import pulumi
import pulumi_aws as aws
baz = aws.elasticache.ReplicationGroup("baz",
automatic_failover_enabled=True,
description="example description",
node_type="cache.t2.small",
num_node_groups=2,
parameter_group_name="default.redis3.2.cluster.on",
port=6379,
replicas_per_node_group=1)
resources:
baz:
type: aws:elasticache:ReplicationGroup
properties:
automaticFailoverEnabled: true
description: example description
nodeType: cache.t2.small
numNodeGroups: 2
parameterGroupName: default.redis3.2.cluster.on
port: 6379
replicasPerNodeGroup: 1
Redis Log Delivery configuration
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var test = new Aws.ElastiCache.ReplicationGroup("test", new()
{
Description = "test description",
NodeType = "cache.t3.small",
Port = 6379,
ApplyImmediately = true,
AutoMinorVersionUpgrade = false,
MaintenanceWindow = "tue:06:30-tue:07:30",
SnapshotWindow = "01:00-02:00",
LogDeliveryConfigurations = new[]
{
new Aws.ElastiCache.Inputs.ReplicationGroupLogDeliveryConfigurationArgs
{
Destination = aws_cloudwatch_log_group.Example.Name,
DestinationType = "cloudwatch-logs",
LogFormat = "text",
LogType = "slow-log",
},
new Aws.ElastiCache.Inputs.ReplicationGroupLogDeliveryConfigurationArgs
{
Destination = aws_kinesis_firehose_delivery_stream.Example.Name,
DestinationType = "kinesis-firehose",
LogFormat = "json",
LogType = "engine-log",
},
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/elasticache"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := elasticache.NewReplicationGroup(ctx, "test", &elasticache.ReplicationGroupArgs{
Description: pulumi.String("test description"),
NodeType: pulumi.String("cache.t3.small"),
Port: pulumi.Int(6379),
ApplyImmediately: pulumi.Bool(true),
AutoMinorVersionUpgrade: pulumi.Bool(false),
MaintenanceWindow: pulumi.String("tue:06:30-tue:07:30"),
SnapshotWindow: pulumi.String("01:00-02:00"),
LogDeliveryConfigurations: elasticache.ReplicationGroupLogDeliveryConfigurationArray{
&elasticache.ReplicationGroupLogDeliveryConfigurationArgs{
Destination: pulumi.Any(aws_cloudwatch_log_group.Example.Name),
DestinationType: pulumi.String("cloudwatch-logs"),
LogFormat: pulumi.String("text"),
LogType: pulumi.String("slow-log"),
},
&elasticache.ReplicationGroupLogDeliveryConfigurationArgs{
Destination: pulumi.Any(aws_kinesis_firehose_delivery_stream.Example.Name),
DestinationType: pulumi.String("kinesis-firehose"),
LogFormat: pulumi.String("json"),
LogType: pulumi.String("engine-log"),
},
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.ReplicationGroup;
import com.pulumi.aws.elasticache.ReplicationGroupArgs;
import com.pulumi.aws.elasticache.inputs.ReplicationGroupLogDeliveryConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var test = new ReplicationGroup("test", ReplicationGroupArgs.builder()
.description("test description")
.nodeType("cache.t3.small")
.port(6379)
.applyImmediately(true)
.autoMinorVersionUpgrade(false)
.maintenanceWindow("tue:06:30-tue:07:30")
.snapshotWindow("01:00-02:00")
.logDeliveryConfigurations(
ReplicationGroupLogDeliveryConfigurationArgs.builder()
.destination(aws_cloudwatch_log_group.example().name())
.destinationType("cloudwatch-logs")
.logFormat("text")
.logType("slow-log")
.build(),
ReplicationGroupLogDeliveryConfigurationArgs.builder()
.destination(aws_kinesis_firehose_delivery_stream.example().name())
.destinationType("kinesis-firehose")
.logFormat("json")
.logType("engine-log")
.build())
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.elasticache.ReplicationGroup("test", {
description: "test description",
nodeType: "cache.t3.small",
port: 6379,
applyImmediately: true,
autoMinorVersionUpgrade: false,
maintenanceWindow: "tue:06:30-tue:07:30",
snapshotWindow: "01:00-02:00",
logDeliveryConfigurations: [
{
destination: aws_cloudwatch_log_group.example.name,
destinationType: "cloudwatch-logs",
logFormat: "text",
logType: "slow-log",
},
{
destination: aws_kinesis_firehose_delivery_stream.example.name,
destinationType: "kinesis-firehose",
logFormat: "json",
logType: "engine-log",
},
],
});
import pulumi
import pulumi_aws as aws
test = aws.elasticache.ReplicationGroup("test",
description="test description",
node_type="cache.t3.small",
port=6379,
apply_immediately=True,
auto_minor_version_upgrade=False,
maintenance_window="tue:06:30-tue:07:30",
snapshot_window="01:00-02:00",
log_delivery_configurations=[
aws.elasticache.ReplicationGroupLogDeliveryConfigurationArgs(
destination=aws_cloudwatch_log_group["example"]["name"],
destination_type="cloudwatch-logs",
log_format="text",
log_type="slow-log",
),
aws.elasticache.ReplicationGroupLogDeliveryConfigurationArgs(
destination=aws_kinesis_firehose_delivery_stream["example"]["name"],
destination_type="kinesis-firehose",
log_format="json",
log_type="engine-log",
),
])
resources:
test:
type: aws:elasticache:ReplicationGroup
properties:
description: test description
nodeType: cache.t3.small
port: 6379
applyImmediately: true
autoMinorVersionUpgrade: false
maintenanceWindow: tue:06:30-tue:07:30
snapshotWindow: 01:00-02:00
logDeliveryConfigurations:
- destination: ${aws_cloudwatch_log_group.example.name}
destinationType: cloudwatch-logs
logFormat: text
logType: slow-log
- destination: ${aws_kinesis_firehose_delivery_stream.example.name}
destinationType: kinesis-firehose
logFormat: json
logType: engine-log
Creating a secondary replication group for a global replication group
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var primary = new Aws.ElastiCache.ReplicationGroup("primary", new()
{
Description = "primary replication group",
Engine = "redis",
EngineVersion = "5.0.6",
NodeType = "cache.m5.large",
NumCacheClusters = 1,
}, new CustomResourceOptions
{
Provider = aws.Other_region,
});
var example = new Aws.ElastiCache.GlobalReplicationGroup("example", new()
{
GlobalReplicationGroupIdSuffix = "example",
PrimaryReplicationGroupId = primary.Id,
}, new CustomResourceOptions
{
Provider = aws.Other_region,
});
var secondary = new Aws.ElastiCache.ReplicationGroup("secondary", new()
{
Description = "secondary replication group",
GlobalReplicationGroupId = example.GlobalReplicationGroupId,
NumCacheClusters = 1,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/elasticache"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
primary, err := elasticache.NewReplicationGroup(ctx, "primary", &elasticache.ReplicationGroupArgs{
Description: pulumi.String("primary replication group"),
Engine: pulumi.String("redis"),
EngineVersion: pulumi.String("5.0.6"),
NodeType: pulumi.String("cache.m5.large"),
NumCacheClusters: pulumi.Int(1),
}, pulumi.Provider(aws.Other_region))
if err != nil {
return err
}
example, err := elasticache.NewGlobalReplicationGroup(ctx, "example", &elasticache.GlobalReplicationGroupArgs{
GlobalReplicationGroupIdSuffix: pulumi.String("example"),
PrimaryReplicationGroupId: primary.ID(),
}, pulumi.Provider(aws.Other_region))
if err != nil {
return err
}
_, err = elasticache.NewReplicationGroup(ctx, "secondary", &elasticache.ReplicationGroupArgs{
Description: pulumi.String("secondary replication group"),
GlobalReplicationGroupId: example.GlobalReplicationGroupId,
NumCacheClusters: pulumi.Int(1),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.ReplicationGroup;
import com.pulumi.aws.elasticache.ReplicationGroupArgs;
import com.pulumi.aws.elasticache.GlobalReplicationGroup;
import com.pulumi.aws.elasticache.GlobalReplicationGroupArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var primary = new ReplicationGroup("primary", ReplicationGroupArgs.builder()
.description("primary replication group")
.engine("redis")
.engineVersion("5.0.6")
.nodeType("cache.m5.large")
.numCacheClusters(1)
.build(), CustomResourceOptions.builder()
.provider(aws.other_region())
.build());
var example = new GlobalReplicationGroup("example", GlobalReplicationGroupArgs.builder()
.globalReplicationGroupIdSuffix("example")
.primaryReplicationGroupId(primary.id())
.build(), CustomResourceOptions.builder()
.provider(aws.other_region())
.build());
var secondary = new ReplicationGroup("secondary", ReplicationGroupArgs.builder()
.description("secondary replication group")
.globalReplicationGroupId(example.globalReplicationGroupId())
.numCacheClusters(1)
.build());
}
}
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const primary = new aws.elasticache.ReplicationGroup("primary", {
description: "primary replication group",
engine: "redis",
engineVersion: "5.0.6",
nodeType: "cache.m5.large",
numCacheClusters: 1,
}, {
provider: aws.other_region,
});
const example = new aws.elasticache.GlobalReplicationGroup("example", {
globalReplicationGroupIdSuffix: "example",
primaryReplicationGroupId: primary.id,
}, {
provider: aws.other_region,
});
const secondary = new aws.elasticache.ReplicationGroup("secondary", {
description: "secondary replication group",
globalReplicationGroupId: example.globalReplicationGroupId,
numCacheClusters: 1,
});
import pulumi
import pulumi_aws as aws
primary = aws.elasticache.ReplicationGroup("primary",
description="primary replication group",
engine="redis",
engine_version="5.0.6",
node_type="cache.m5.large",
num_cache_clusters=1,
opts=pulumi.ResourceOptions(provider=aws["other_region"]))
example = aws.elasticache.GlobalReplicationGroup("example",
global_replication_group_id_suffix="example",
primary_replication_group_id=primary.id,
opts=pulumi.ResourceOptions(provider=aws["other_region"]))
secondary = aws.elasticache.ReplicationGroup("secondary",
description="secondary replication group",
global_replication_group_id=example.global_replication_group_id,
num_cache_clusters=1)
resources:
secondary:
type: aws:elasticache:ReplicationGroup
properties:
description: secondary replication group
globalReplicationGroupId: ${example.globalReplicationGroupId}
numCacheClusters: 1
example:
type: aws:elasticache:GlobalReplicationGroup
properties:
globalReplicationGroupIdSuffix: example
primaryReplicationGroupId: ${primary.id}
options:
provider: ${aws.other_region}
primary:
type: aws:elasticache:ReplicationGroup
properties:
description: primary replication group
engine: redis
engineVersion: 5.0.6
nodeType: cache.m5.large
numCacheClusters: 1
options:
provider: ${aws.other_region}
Create ReplicationGroup Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ReplicationGroup(name: string, args?: ReplicationGroupArgs, opts?: CustomResourceOptions);@overload
def ReplicationGroup(resource_name: str,
args: Optional[ReplicationGroupArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def ReplicationGroup(resource_name: str,
opts: Optional[ResourceOptions] = None,
apply_immediately: Optional[bool] = None,
at_rest_encryption_enabled: Optional[bool] = None,
auth_token: Optional[str] = None,
auto_minor_version_upgrade: Optional[bool] = None,
automatic_failover_enabled: Optional[bool] = None,
availability_zones: Optional[Sequence[str]] = None,
cluster_mode: Optional[ReplicationGroupClusterModeArgs] = None,
data_tiering_enabled: Optional[bool] = None,
description: Optional[str] = None,
engine: Optional[str] = None,
engine_version: Optional[str] = None,
final_snapshot_identifier: Optional[str] = None,
global_replication_group_id: Optional[str] = None,
kms_key_id: Optional[str] = None,
log_delivery_configurations: Optional[Sequence[ReplicationGroupLogDeliveryConfigurationArgs]] = None,
maintenance_window: Optional[str] = None,
multi_az_enabled: Optional[bool] = None,
node_type: Optional[str] = None,
notification_topic_arn: Optional[str] = None,
num_cache_clusters: Optional[int] = None,
num_node_groups: Optional[int] = None,
number_cache_clusters: Optional[int] = None,
parameter_group_name: Optional[str] = None,
port: Optional[int] = None,
preferred_cache_cluster_azs: Optional[Sequence[str]] = None,
replicas_per_node_group: Optional[int] = None,
replication_group_description: Optional[str] = None,
replication_group_id: Optional[str] = None,
security_group_ids: Optional[Sequence[str]] = None,
security_group_names: Optional[Sequence[str]] = None,
snapshot_arns: Optional[Sequence[str]] = None,
snapshot_name: Optional[str] = None,
snapshot_retention_limit: Optional[int] = None,
snapshot_window: Optional[str] = None,
subnet_group_name: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
transit_encryption_enabled: Optional[bool] = None,
user_group_ids: Optional[Sequence[str]] = None)func NewReplicationGroup(ctx *Context, name string, args *ReplicationGroupArgs, opts ...ResourceOption) (*ReplicationGroup, error)public ReplicationGroup(string name, ReplicationGroupArgs? args = null, CustomResourceOptions? opts = null)
public ReplicationGroup(String name, ReplicationGroupArgs args)
public ReplicationGroup(String name, ReplicationGroupArgs args, CustomResourceOptions options)
type: aws:elasticache:ReplicationGroup
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ReplicationGroupArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ReplicationGroupArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ReplicationGroupArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ReplicationGroupArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ReplicationGroupArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var replicationGroupResource = new Aws.ElastiCache.ReplicationGroup("replicationGroupResource", new()
{
ApplyImmediately = false,
AtRestEncryptionEnabled = false,
AuthToken = "string",
AutoMinorVersionUpgrade = false,
AutomaticFailoverEnabled = false,
AvailabilityZones = new[]
{
"string",
},
DataTieringEnabled = false,
Description = "string",
Engine = "string",
EngineVersion = "string",
FinalSnapshotIdentifier = "string",
GlobalReplicationGroupId = "string",
KmsKeyId = "string",
LogDeliveryConfigurations = new[]
{
new Aws.ElastiCache.Inputs.ReplicationGroupLogDeliveryConfigurationArgs
{
Destination = "string",
DestinationType = "string",
LogFormat = "string",
LogType = "string",
},
},
MaintenanceWindow = "string",
MultiAzEnabled = false,
NodeType = "string",
NotificationTopicArn = "string",
NumCacheClusters = 0,
NumNodeGroups = 0,
ParameterGroupName = "string",
Port = 0,
PreferredCacheClusterAzs = new[]
{
"string",
},
ReplicasPerNodeGroup = 0,
ReplicationGroupId = "string",
SecurityGroupIds = new[]
{
"string",
},
SecurityGroupNames = new[]
{
"string",
},
SnapshotArns = new[]
{
"string",
},
SnapshotName = "string",
SnapshotRetentionLimit = 0,
SnapshotWindow = "string",
SubnetGroupName = "string",
Tags =
{
{ "string", "string" },
},
TransitEncryptionEnabled = false,
UserGroupIds = new[]
{
"string",
},
});
example, err := elasticache.NewReplicationGroup(ctx, "replicationGroupResource", &elasticache.ReplicationGroupArgs{
ApplyImmediately: pulumi.Bool(false),
AtRestEncryptionEnabled: pulumi.Bool(false),
AuthToken: pulumi.String("string"),
AutoMinorVersionUpgrade: pulumi.Bool(false),
AutomaticFailoverEnabled: pulumi.Bool(false),
AvailabilityZones: pulumi.StringArray{
pulumi.String("string"),
},
DataTieringEnabled: pulumi.Bool(false),
Description: pulumi.String("string"),
Engine: pulumi.String("string"),
EngineVersion: pulumi.String("string"),
FinalSnapshotIdentifier: pulumi.String("string"),
GlobalReplicationGroupId: pulumi.String("string"),
KmsKeyId: pulumi.String("string"),
LogDeliveryConfigurations: elasticache.ReplicationGroupLogDeliveryConfigurationArray{
&elasticache.ReplicationGroupLogDeliveryConfigurationArgs{
Destination: pulumi.String("string"),
DestinationType: pulumi.String("string"),
LogFormat: pulumi.String("string"),
LogType: pulumi.String("string"),
},
},
MaintenanceWindow: pulumi.String("string"),
MultiAzEnabled: pulumi.Bool(false),
NodeType: pulumi.String("string"),
NotificationTopicArn: pulumi.String("string"),
NumCacheClusters: pulumi.Int(0),
NumNodeGroups: pulumi.Int(0),
ParameterGroupName: pulumi.String("string"),
Port: pulumi.Int(0),
PreferredCacheClusterAzs: pulumi.StringArray{
pulumi.String("string"),
},
ReplicasPerNodeGroup: pulumi.Int(0),
ReplicationGroupId: pulumi.String("string"),
SecurityGroupIds: pulumi.StringArray{
pulumi.String("string"),
},
SecurityGroupNames: pulumi.StringArray{
pulumi.String("string"),
},
SnapshotArns: pulumi.StringArray{
pulumi.String("string"),
},
SnapshotName: pulumi.String("string"),
SnapshotRetentionLimit: pulumi.Int(0),
SnapshotWindow: pulumi.String("string"),
SubnetGroupName: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
TransitEncryptionEnabled: pulumi.Bool(false),
UserGroupIds: pulumi.StringArray{
pulumi.String("string"),
},
})
var replicationGroupResource = new ReplicationGroup("replicationGroupResource", ReplicationGroupArgs.builder()
.applyImmediately(false)
.atRestEncryptionEnabled(false)
.authToken("string")
.autoMinorVersionUpgrade(false)
.automaticFailoverEnabled(false)
.availabilityZones("string")
.dataTieringEnabled(false)
.description("string")
.engine("string")
.engineVersion("string")
.finalSnapshotIdentifier("string")
.globalReplicationGroupId("string")
.kmsKeyId("string")
.logDeliveryConfigurations(ReplicationGroupLogDeliveryConfigurationArgs.builder()
.destination("string")
.destinationType("string")
.logFormat("string")
.logType("string")
.build())
.maintenanceWindow("string")
.multiAzEnabled(false)
.nodeType("string")
.notificationTopicArn("string")
.numCacheClusters(0)
.numNodeGroups(0)
.parameterGroupName("string")
.port(0)
.preferredCacheClusterAzs("string")
.replicasPerNodeGroup(0)
.replicationGroupId("string")
.securityGroupIds("string")
.securityGroupNames("string")
.snapshotArns("string")
.snapshotName("string")
.snapshotRetentionLimit(0)
.snapshotWindow("string")
.subnetGroupName("string")
.tags(Map.of("string", "string"))
.transitEncryptionEnabled(false)
.userGroupIds("string")
.build());
replication_group_resource = aws.elasticache.ReplicationGroup("replicationGroupResource",
apply_immediately=False,
at_rest_encryption_enabled=False,
auth_token="string",
auto_minor_version_upgrade=False,
automatic_failover_enabled=False,
availability_zones=["string"],
data_tiering_enabled=False,
description="string",
engine="string",
engine_version="string",
final_snapshot_identifier="string",
global_replication_group_id="string",
kms_key_id="string",
log_delivery_configurations=[{
"destination": "string",
"destination_type": "string",
"log_format": "string",
"log_type": "string",
}],
maintenance_window="string",
multi_az_enabled=False,
node_type="string",
notification_topic_arn="string",
num_cache_clusters=0,
num_node_groups=0,
parameter_group_name="string",
port=0,
preferred_cache_cluster_azs=["string"],
replicas_per_node_group=0,
replication_group_id="string",
security_group_ids=["string"],
security_group_names=["string"],
snapshot_arns=["string"],
snapshot_name="string",
snapshot_retention_limit=0,
snapshot_window="string",
subnet_group_name="string",
tags={
"string": "string",
},
transit_encryption_enabled=False,
user_group_ids=["string"])
const replicationGroupResource = new aws.elasticache.ReplicationGroup("replicationGroupResource", {
applyImmediately: false,
atRestEncryptionEnabled: false,
authToken: "string",
autoMinorVersionUpgrade: false,
automaticFailoverEnabled: false,
availabilityZones: ["string"],
dataTieringEnabled: false,
description: "string",
engine: "string",
engineVersion: "string",
finalSnapshotIdentifier: "string",
globalReplicationGroupId: "string",
kmsKeyId: "string",
logDeliveryConfigurations: [{
destination: "string",
destinationType: "string",
logFormat: "string",
logType: "string",
}],
maintenanceWindow: "string",
multiAzEnabled: false,
nodeType: "string",
notificationTopicArn: "string",
numCacheClusters: 0,
numNodeGroups: 0,
parameterGroupName: "string",
port: 0,
preferredCacheClusterAzs: ["string"],
replicasPerNodeGroup: 0,
replicationGroupId: "string",
securityGroupIds: ["string"],
securityGroupNames: ["string"],
snapshotArns: ["string"],
snapshotName: "string",
snapshotRetentionLimit: 0,
snapshotWindow: "string",
subnetGroupName: "string",
tags: {
string: "string",
},
transitEncryptionEnabled: false,
userGroupIds: ["string"],
});
type: aws:elasticache:ReplicationGroup
properties:
applyImmediately: false
atRestEncryptionEnabled: false
authToken: string
autoMinorVersionUpgrade: false
automaticFailoverEnabled: false
availabilityZones:
- string
dataTieringEnabled: false
description: string
engine: string
engineVersion: string
finalSnapshotIdentifier: string
globalReplicationGroupId: string
kmsKeyId: string
logDeliveryConfigurations:
- destination: string
destinationType: string
logFormat: string
logType: string
maintenanceWindow: string
multiAzEnabled: false
nodeType: string
notificationTopicArn: string
numCacheClusters: 0
numNodeGroups: 0
parameterGroupName: string
port: 0
preferredCacheClusterAzs:
- string
replicasPerNodeGroup: 0
replicationGroupId: string
securityGroupIds:
- string
securityGroupNames:
- string
snapshotArns:
- string
snapshotName: string
snapshotRetentionLimit: 0
snapshotWindow: string
subnetGroupName: string
tags:
string: string
transitEncryptionEnabled: false
userGroupIds:
- string
ReplicationGroup Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ReplicationGroup resource accepts the following input properties:
- Apply
Immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - At
Rest boolEncryption Enabled - Whether to enable encryption at rest.
- Auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - Auto
Minor boolVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - Automatic
Failover boolEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - Availability
Zones List<string> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- Cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - Data
Tiering boolEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - Description string
- User-created description for the replication group. Must not be empty.
- Engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - Engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - Final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- Global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - Kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - Log
Delivery List<ReplicationConfigurations Group Log Delivery Configuration> - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- Maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - Multi
Az boolEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - Node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - Notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - Num
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- Number
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - Parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - Port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- Preferred
Cache List<string>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- Replicas
Per intNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- Replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- Replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- Security
Group List<string>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- Security
Group List<string>Names - List of cache security group names to associate with this replication group.
- Snapshot
Arns List<string> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- Snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - Snapshot
Retention intLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - Snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - Subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- Dictionary<string, string>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Transit
Encryption boolEnabled - Whether to enable encryption in transit.
- User
Group List<string>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- Apply
Immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - At
Rest boolEncryption Enabled - Whether to enable encryption at rest.
- Auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - Auto
Minor boolVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - Automatic
Failover boolEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - Availability
Zones []string - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- Cluster
Mode ReplicationGroup Cluster Mode Args - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - Data
Tiering boolEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - Description string
- User-created description for the replication group. Must not be empty.
- Engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - Engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - Final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- Global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - Kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - Log
Delivery []ReplicationConfigurations Group Log Delivery Configuration Args - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- Maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - Multi
Az boolEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - Node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - Notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - Num
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- Number
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - Parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - Port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- Preferred
Cache []stringCluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- Replicas
Per intNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- Replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- Replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- Security
Group []stringIds - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- Security
Group []stringNames - List of cache security group names to associate with this replication group.
- Snapshot
Arns []string - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- Snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - Snapshot
Retention intLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - Snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - Subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- map[string]string
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Transit
Encryption boolEnabled - Whether to enable encryption in transit.
- User
Group []stringIds - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately Boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - at
Rest BooleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token String - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor BooleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover BooleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones List<String> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - data
Tiering BooleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description String
- User-created description for the replication group. Must not be empty.
- engine String
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version String - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - final
Snapshot StringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication StringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key StringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery List<ReplicationConfigurations Group Log Delivery Configuration> - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window String - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - multi
Az BooleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type String - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic StringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache IntegerClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node IntegerGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache IntegerClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group StringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port Integer
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache List<String>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- replicas
Per IntegerNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group StringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group StringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group List<String>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group List<String>Names - List of cache security group names to associate with this replication group.
- snapshot
Arns List<String> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name String - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention IntegerLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window String - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group StringName - Name of the cache subnet group to be used for the replication group.
- Map<String,String>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - transit
Encryption BooleanEnabled - Whether to enable encryption in transit.
- user
Group List<String>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - at
Rest booleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor booleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover booleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones string[] - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - data
Tiering booleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description string
- User-created description for the replication group. Must not be empty.
- engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery ReplicationConfigurations Group Log Delivery Configuration[] - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - multi
Az booleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache numberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node numberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache numberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port number
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache string[]Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- replicas
Per numberNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group string[]Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group string[]Names - List of cache security group names to associate with this replication group.
- snapshot
Arns string[] - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention numberLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- {[key: string]: string}
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - transit
Encryption booleanEnabled - Whether to enable encryption in transit.
- user
Group string[]Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply_
immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - at_
rest_ boolencryption_ enabled - Whether to enable encryption at rest.
- auth_
token str - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto_
minor_ boolversion_ upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic_
failover_ boolenabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability_
zones Sequence[str] - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster_
mode ReplicationGroup Cluster Mode Args - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - data_
tiering_ boolenabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description str
- User-created description for the replication group. Must not be empty.
- engine str
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine_
version str - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - final_
snapshot_ stridentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global_
replication_ strgroup_ id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms_
key_ strid - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log_
delivery_ Sequence[Replicationconfigurations Group Log Delivery Configuration Args] - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance_
window str - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - multi_
az_ boolenabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node_
type str - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification_
topic_ strarn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num_
cache_ intclusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num_
node_ intgroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number_
cache_ intclusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter_
group_ strname - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred_
cache_ Sequence[str]cluster_ azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- replicas_
per_ intnode_ group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication_
group_ strdescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication_
group_ strid - Replication group identifier. This parameter is stored as a lowercase string.
- security_
group_ Sequence[str]ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security_
group_ Sequence[str]names - List of cache security group names to associate with this replication group.
- snapshot_
arns Sequence[str] - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot_
name str - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot_
retention_ intlimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot_
window str - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet_
group_ strname - Name of the cache subnet group to be used for the replication group.
- Mapping[str, str]
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - transit_
encryption_ boolenabled - Whether to enable encryption in transit.
- user_
group_ Sequence[str]ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately Boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - at
Rest BooleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token String - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor BooleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover BooleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones List<String> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Mode Property Map - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - data
Tiering BooleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description String
- User-created description for the replication group. Must not be empty.
- engine String
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version String - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - final
Snapshot StringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication StringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key StringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery List<Property Map>Configurations - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window String - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - multi
Az BooleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type String - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic StringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache NumberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node NumberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache NumberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group StringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port Number
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache List<String>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- replicas
Per NumberNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group StringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group StringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group List<String>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group List<String>Names - List of cache security group names to associate with this replication group.
- snapshot
Arns List<String> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name String - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention NumberLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window String - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group StringName - Name of the cache subnet group to be used for the replication group.
- Map<String>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - transit
Encryption BooleanEnabled - Whether to enable encryption in transit.
- user
Group List<String>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
Outputs
All input properties are implicitly available as output properties. Additionally, the ReplicationGroup resource produces the following output properties:
- Arn string
- ARN of the created ElastiCache Replication Group.
- Cluster
Enabled bool - Indicates if cluster mode is enabled.
- Configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- Engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Id string
- The provider-assigned unique ID for this managed resource.
- Member
Clusters List<string> - Identifiers of all the nodes that are part of this replication group.
- Primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- Reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- Arn string
- ARN of the created ElastiCache Replication Group.
- Cluster
Enabled bool - Indicates if cluster mode is enabled.
- Configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- Engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Id string
- The provider-assigned unique ID for this managed resource.
- Member
Clusters []string - Identifiers of all the nodes that are part of this replication group.
- Primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- Reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn String
- ARN of the created ElastiCache Replication Group.
- cluster
Enabled Boolean - Indicates if cluster mode is enabled.
- configuration
Endpoint StringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- engine
Version StringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id String
- The provider-assigned unique ID for this managed resource.
- member
Clusters List<String> - Identifiers of all the nodes that are part of this replication group.
- primary
Endpoint StringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint StringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn string
- ARN of the created ElastiCache Replication Group.
- cluster
Enabled boolean - Indicates if cluster mode is enabled.
- configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id string
- The provider-assigned unique ID for this managed resource.
- member
Clusters string[] - Identifiers of all the nodes that are part of this replication group.
- primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn str
- ARN of the created ElastiCache Replication Group.
- cluster_
enabled bool - Indicates if cluster mode is enabled.
- configuration_
endpoint_ straddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- engine_
version_ stractual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id str
- The provider-assigned unique ID for this managed resource.
- member_
clusters Sequence[str] - Identifiers of all the nodes that are part of this replication group.
- primary_
endpoint_ straddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader_
endpoint_ straddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
- arn String
- ARN of the created ElastiCache Replication Group.
- cluster
Enabled Boolean - Indicates if cluster mode is enabled.
- configuration
Endpoint StringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- engine
Version StringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id String
- The provider-assigned unique ID for this managed resource.
- member
Clusters List<String> - Identifiers of all the nodes that are part of this replication group.
- primary
Endpoint StringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint StringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block.
Look up Existing ReplicationGroup Resource
Get an existing ReplicationGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ReplicationGroupState, opts?: CustomResourceOptions): ReplicationGroup@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
apply_immediately: Optional[bool] = None,
arn: Optional[str] = None,
at_rest_encryption_enabled: Optional[bool] = None,
auth_token: Optional[str] = None,
auto_minor_version_upgrade: Optional[bool] = None,
automatic_failover_enabled: Optional[bool] = None,
availability_zones: Optional[Sequence[str]] = None,
cluster_enabled: Optional[bool] = None,
cluster_mode: Optional[ReplicationGroupClusterModeArgs] = None,
configuration_endpoint_address: Optional[str] = None,
data_tiering_enabled: Optional[bool] = None,
description: Optional[str] = None,
engine: Optional[str] = None,
engine_version: Optional[str] = None,
engine_version_actual: Optional[str] = None,
final_snapshot_identifier: Optional[str] = None,
global_replication_group_id: Optional[str] = None,
kms_key_id: Optional[str] = None,
log_delivery_configurations: Optional[Sequence[ReplicationGroupLogDeliveryConfigurationArgs]] = None,
maintenance_window: Optional[str] = None,
member_clusters: Optional[Sequence[str]] = None,
multi_az_enabled: Optional[bool] = None,
node_type: Optional[str] = None,
notification_topic_arn: Optional[str] = None,
num_cache_clusters: Optional[int] = None,
num_node_groups: Optional[int] = None,
number_cache_clusters: Optional[int] = None,
parameter_group_name: Optional[str] = None,
port: Optional[int] = None,
preferred_cache_cluster_azs: Optional[Sequence[str]] = None,
primary_endpoint_address: Optional[str] = None,
reader_endpoint_address: Optional[str] = None,
replicas_per_node_group: Optional[int] = None,
replication_group_description: Optional[str] = None,
replication_group_id: Optional[str] = None,
security_group_ids: Optional[Sequence[str]] = None,
security_group_names: Optional[Sequence[str]] = None,
snapshot_arns: Optional[Sequence[str]] = None,
snapshot_name: Optional[str] = None,
snapshot_retention_limit: Optional[int] = None,
snapshot_window: Optional[str] = None,
subnet_group_name: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None,
transit_encryption_enabled: Optional[bool] = None,
user_group_ids: Optional[Sequence[str]] = None) -> ReplicationGroupfunc GetReplicationGroup(ctx *Context, name string, id IDInput, state *ReplicationGroupState, opts ...ResourceOption) (*ReplicationGroup, error)public static ReplicationGroup Get(string name, Input<string> id, ReplicationGroupState? state, CustomResourceOptions? opts = null)public static ReplicationGroup get(String name, Output<String> id, ReplicationGroupState state, CustomResourceOptions options)resources: _: type: aws:elasticache:ReplicationGroup get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Apply
Immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - Arn string
- ARN of the created ElastiCache Replication Group.
- At
Rest boolEncryption Enabled - Whether to enable encryption at rest.
- Auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - Auto
Minor boolVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - Automatic
Failover boolEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - Availability
Zones List<string> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- Cluster
Enabled bool - Indicates if cluster mode is enabled.
- Cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - Configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- Data
Tiering boolEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - Description string
- User-created description for the replication group. Must not be empty.
- Engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - Engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - Engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- Global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - Kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - Log
Delivery List<ReplicationConfigurations Group Log Delivery Configuration> - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- Maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - Member
Clusters List<string> - Identifiers of all the nodes that are part of this replication group.
- Multi
Az boolEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - Node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - Notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - Num
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- Number
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - Parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - Port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- Preferred
Cache List<string>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- Primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- Reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Replicas
Per intNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- Replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- Replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- Security
Group List<string>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- Security
Group List<string>Names - List of cache security group names to associate with this replication group.
- Snapshot
Arns List<string> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- Snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - Snapshot
Retention intLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - Snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - Subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- Dictionary<string, string>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Transit
Encryption boolEnabled - Whether to enable encryption in transit.
- User
Group List<string>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- Apply
Immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - Arn string
- ARN of the created ElastiCache Replication Group.
- At
Rest boolEncryption Enabled - Whether to enable encryption at rest.
- Auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - Auto
Minor boolVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - Automatic
Failover boolEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - Availability
Zones []string - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- Cluster
Enabled bool - Indicates if cluster mode is enabled.
- Cluster
Mode ReplicationGroup Cluster Mode Args - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - Configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- Data
Tiering boolEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - Description string
- User-created description for the replication group. Must not be empty.
- Engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - Engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - Engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- Global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - Kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - Log
Delivery []ReplicationConfigurations Group Log Delivery Configuration Args - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- Maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - Member
Clusters []string - Identifiers of all the nodes that are part of this replication group.
- Multi
Az boolEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - Node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - Notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - Num
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- Number
Cache intClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - Parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - Port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- Preferred
Cache []stringCluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- Primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- Reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- Replicas
Per intNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- Replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- Replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- Security
Group []stringIds - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- Security
Group []stringNames - List of cache security group names to associate with this replication group.
- Snapshot
Arns []string - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- Snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - Snapshot
Retention intLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - Snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - Subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- map[string]string
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - Transit
Encryption boolEnabled - Whether to enable encryption in transit.
- User
Group []stringIds - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately Boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - arn String
- ARN of the created ElastiCache Replication Group.
- at
Rest BooleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token String - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor BooleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover BooleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones List<String> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Enabled Boolean - Indicates if cluster mode is enabled.
- cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - configuration
Endpoint StringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- data
Tiering BooleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description String
- User-created description for the replication group. Must not be empty.
- engine String
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version String - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - engine
Version StringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- final
Snapshot StringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication StringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key StringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery List<ReplicationConfigurations Group Log Delivery Configuration> - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window String - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - member
Clusters List<String> - Identifiers of all the nodes that are part of this replication group.
- multi
Az BooleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type String - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic StringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache IntegerClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node IntegerGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache IntegerClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group StringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port Integer
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache List<String>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- primary
Endpoint StringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint StringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- replicas
Per IntegerNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group StringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group StringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group List<String>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group List<String>Names - List of cache security group names to associate with this replication group.
- snapshot
Arns List<String> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name String - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention IntegerLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window String - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group StringName - Name of the cache subnet group to be used for the replication group.
- Map<String,String>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - transit
Encryption BooleanEnabled - Whether to enable encryption in transit.
- user
Group List<String>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - arn string
- ARN of the created ElastiCache Replication Group.
- at
Rest booleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token string - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor booleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover booleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones string[] - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Enabled boolean - Indicates if cluster mode is enabled.
- cluster
Mode ReplicationGroup Cluster Mode - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - configuration
Endpoint stringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- data
Tiering booleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description string
- User-created description for the replication group. Must not be empty.
- engine string
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version string - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - engine
Version stringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- final
Snapshot stringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication stringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key stringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery ReplicationConfigurations Group Log Delivery Configuration[] - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window string - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - member
Clusters string[] - Identifiers of all the nodes that are part of this replication group.
- multi
Az booleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type string - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic stringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache numberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node numberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache numberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group stringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port number
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache string[]Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- primary
Endpoint stringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint stringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- replicas
Per numberNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group stringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group stringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group string[]Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group string[]Names - List of cache security group names to associate with this replication group.
- snapshot
Arns string[] - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name string - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention numberLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window string - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group stringName - Name of the cache subnet group to be used for the replication group.
- {[key: string]: string}
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - transit
Encryption booleanEnabled - Whether to enable encryption in transit.
- user
Group string[]Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply_
immediately bool - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - arn str
- ARN of the created ElastiCache Replication Group.
- at_
rest_ boolencryption_ enabled - Whether to enable encryption at rest.
- auth_
token str - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto_
minor_ boolversion_ upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic_
failover_ boolenabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability_
zones Sequence[str] - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster_
enabled bool - Indicates if cluster mode is enabled.
- cluster_
mode ReplicationGroup Cluster Mode Args - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - configuration_
endpoint_ straddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- data_
tiering_ boolenabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description str
- User-created description for the replication group. Must not be empty.
- engine str
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine_
version str - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - engine_
version_ stractual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- final_
snapshot_ stridentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global_
replication_ strgroup_ id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms_
key_ strid - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log_
delivery_ Sequence[Replicationconfigurations Group Log Delivery Configuration Args] - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance_
window str - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - member_
clusters Sequence[str] - Identifiers of all the nodes that are part of this replication group.
- multi_
az_ boolenabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node_
type str - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification_
topic_ strarn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num_
cache_ intclusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num_
node_ intgroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number_
cache_ intclusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter_
group_ strname - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port int
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred_
cache_ Sequence[str]cluster_ azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- primary_
endpoint_ straddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader_
endpoint_ straddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- replicas_
per_ intnode_ group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication_
group_ strdescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication_
group_ strid - Replication group identifier. This parameter is stored as a lowercase string.
- security_
group_ Sequence[str]ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security_
group_ Sequence[str]names - List of cache security group names to associate with this replication group.
- snapshot_
arns Sequence[str] - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot_
name str - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot_
retention_ intlimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot_
window str - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet_
group_ strname - Name of the cache subnet group to be used for the replication group.
- Mapping[str, str]
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - transit_
encryption_ boolenabled - Whether to enable encryption in transit.
- user_
group_ Sequence[str]ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
- apply
Immediately Boolean - Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is
false. - arn String
- ARN of the created ElastiCache Replication Group.
- at
Rest BooleanEncryption Enabled - Whether to enable encryption at rest.
- auth
Token String - Password used to access a password protected server. Can be specified only if
transit_encryption_enabled = true. - auto
Minor BooleanVersion Upgrade - Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type
"redis"and if the engine version is 6 or higher. Defaults totrue. - automatic
Failover BooleanEnabled - Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled,
num_cache_clustersmust be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults tofalse. - availability
Zones List<String> - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is not considered.
- cluster
Enabled Boolean - Indicates if cluster mode is enabled.
- cluster
Mode Property Map - Create a native Redis cluster.
automatic_failover_enabledmust be set to true. Cluster Mode documented below. Only 1cluster_modeblock is allowed. Note that configuring this block does not enable cluster mode, i.e., data sharding, this requires using a parameter group that has the parametercluster-enabledset to true. - configuration
Endpoint StringAddress - Address of the replication group configuration endpoint when cluster mode is enabled.
- data
Tiering BooleanEnabled - Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to
truewhen using r6gd nodes. - description String
- User-created description for the replication group. Must not be empty.
- engine String
- Name of the cache engine to be used for the clusters in this replication group. The only valid value is
redis. - engine
Version String - Version number of the cache engine to be used for the cache clusters in this replication group.
If the version is 6 or higher, the major and minor version can be set, e.g.,
6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attributes Reference below. - engine
Version StringActual - Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- final
Snapshot StringIdentifier - The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made.
- global
Replication StringGroup Id - The ID of the global replication group to which this replication group should belong. If this parameter is specified, the replication group is added to the specified global replication group as a secondary replication group; otherwise, the replication group is not part of any global replication group. If
global_replication_group_idis set, thenum_node_groupsparameter (or thenum_node_groupsparameter of the deprecatedcluster_modeblock) cannot be set. - kms
Key StringId - The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if
at_rest_encryption_enabled = true. - log
Delivery List<Property Map>Configurations - Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance
Window String - Specifies the weekly time range for when maintenance on the cache cluster is performed. The format is
ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00 - member
Clusters List<String> - Identifiers of all the nodes that are part of this replication group.
- multi
Az BooleanEnabled - Specifies whether to enable Multi-AZ Support for the replication group. If
true,automatic_failover_enabledmust also be enabled. Defaults tofalse. - node
Type String - Instance class to be used. See AWS documentation for information on supported node types and guidance on selecting node types. Required unless
global_replication_group_idis set. Cannot be set ifglobal_replication_group_idis set. - notification
Topic StringArn - ARN of an SNS topic to send ElastiCache notifications to. Example:
arn:aws:sns:us-east-1:012345678999:my_sns_topic - num
Cache NumberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_node_groups, the deprecatednumber_cache_clusters, or the deprecatedcluster_mode. Defaults to1. - num
Node NumberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.
- number
Cache NumberClusters - Number of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with
num_cache_clusters,num_node_groups, or the deprecatedcluster_mode. Defaults to1. - parameter
Group StringName - Name of the parameter group to associate with this replication group. If this argument is omitted, the default cache parameter group for the specified engine is used. To enable "cluster mode", i.e., data sharding, use a parameter group that has the parameter
cluster-enabledset to true. - port Number
- Port number on which each of the cache nodes will accept connections. For Memcache the default is 11211, and for Redis the default port is 6379.
- preferred
Cache List<String>Cluster Azs - List of EC2 availability zones in which the replication group's cache clusters will be created. The order of the availability zones in the list is considered. The first item in the list will be the primary node. Ignored when updating.
- primary
Endpoint StringAddress - (Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.
- reader
Endpoint StringAddress - (Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.
- replicas
Per NumberNode Group - Number of replica nodes in each node group. Changing this number will trigger a resizing operation before other settings modifications. Valid values are 0 to 5.
- replication
Group StringDescription User-created description for the replication group. Must not be empty.
The following arguments are optional:
- replication
Group StringId - Replication group identifier. This parameter is stored as a lowercase string.
- security
Group List<String>Ids - One or more Amazon VPC security groups associated with this replication group. Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud
- security
Group List<String>Names - List of cache security group names to associate with this replication group.
- snapshot
Arns List<String> - List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.
- snapshot
Name String - Name of a snapshot from which to restore data into the new node group. Changing the
snapshot_nameforces a new resource. - snapshot
Retention NumberLimit - Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of
snapshot_retention_limitis set to zero (0), backups are turned off. Please note that setting asnapshot_retention_limitis not supported on cache.t1.micro cache nodes - snapshot
Window String - Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum snapshot window is a 60 minute period. Example:
05:00-09:00 - subnet
Group StringName - Name of the cache subnet group to be used for the replication group.
- Map<String>
- Map of tags to assign to the resource. Adding tags to this resource will add or overwrite any existing tags on the clusters in the replication group and not to the group itself. If configured with a provider
default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
default_tagsconfiguration block. - transit
Encryption BooleanEnabled - Whether to enable encryption in transit.
- user
Group List<String>Ids - User Group ID to associate with the replication group. Only a maximum of one (1) user group ID is valid. NOTE: This argument is a set because the AWS specification allows for multiple IDs. However, in practice, AWS only allows a maximum size of one.
Supporting Types
ReplicationGroupClusterMode, ReplicationGroupClusterModeArgs
- Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - Replicas
Per intNode Group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
- Num
Node intGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - Replicas
Per intNode Group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
- num
Node IntegerGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - replicas
Per IntegerNode Group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
- num
Node numberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - replicas
Per numberNode Group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
- num_
node_ intgroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - replicas_
per_ intnode_ group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
- num
Node NumberGroups - Number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications. Required unless
global_replication_group_idis set. - replicas
Per NumberNode Group - Number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will trigger an online resizing operation before other settings modifications.
ReplicationGroupLogDeliveryConfiguration, ReplicationGroupLogDeliveryConfigurationArgs
- Destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- Destination
Type string - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - Log
Format string - Valid values are
jsonortext - Log
Type string - Valid values are
slow-logorengine-log. Max 1 of each.
- Destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- Destination
Type string - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - Log
Format string - Valid values are
jsonortext - Log
Type string - Valid values are
slow-logorengine-log. Max 1 of each.
- destination String
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destination
Type String - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - log
Format String - Valid values are
jsonortext - log
Type String - Valid values are
slow-logorengine-log. Max 1 of each.
- destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destination
Type string - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - log
Format string - Valid values are
jsonortext - log
Type string - Valid values are
slow-logorengine-log. Max 1 of each.
- destination str
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destination_
type str - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - log_
format str - Valid values are
jsonortext - log_
type str - Valid values are
slow-logorengine-log. Max 1 of each.
- destination String
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destination
Type String - For CloudWatch Logs use
cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose. - log
Format String - Valid values are
jsonortext - log
Type String - Valid values are
slow-logorengine-log. Max 1 of each.
Import
ElastiCache Replication Groups can be imported using the replication_group_id, e.g.,
$ pulumi import aws:elasticache/replicationGroup:ReplicationGroup my_replication_group replication-group-1
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Tuesday, Mar 10, 2026 by Pulumi
