aws logo
AWS Classic v5.29.0, Feb 1 23

aws.elasticache.ReplicationGroup

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 the apply_immediately flag to instruct the service to apply the change immediately. Using apply_immediately can 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 example default.redis6.x.cluster.on.

Example Usage

Redis Cluster Mode Disabled

using System.Collections.Generic;
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 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",
    ])
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",
    ],
});
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 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 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)
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});
}
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 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 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)
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,
});
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 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 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",
        ),
    ])
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",
        },
    ],
});
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 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 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)
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,
});
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

new ReplicationGroup(name: string, args?: ReplicationGroupArgs, opts?: CustomResourceOptions);
@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)
@overload
def ReplicationGroup(resource_name: str,
                     args: Optional[ReplicationGroupArgs] = None,
                     opts: Optional[ResourceOptions] = 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.

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.

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

The ReplicationGroup resource accepts the following input properties:

ApplyImmediately bool

Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.

AtRestEncryptionEnabled bool

Whether to enable encryption at rest.

AuthToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

AutoMinorVersionUpgrade bool

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 to true.

AutomaticFailoverEnabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones 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.

ClusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

DataTieringEnabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

EngineVersion 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 attribute engine_version_actual, see Attributes Reference below.

FinalSnapshotIdentifier string

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.

GlobalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

KmsKeyId string

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.

LogDeliveryConfigurations List<ReplicationGroupLogDeliveryConfigurationArgs>

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.

MaintenanceWindow 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

MultiAzEnabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

NodeType 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_id is set. Cannot be set if global_replication_group_id is set.

NotificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

NumNodeGroups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

NumberCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

ParameterGroupName string

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-enabled set 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.

PreferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

ReplicasPerNodeGroup int

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.

ReplicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

ReplicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

SecurityGroupIds List<string>

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

SecurityGroupNames List<string>

List of cache security group names to associate with this replication group.

SnapshotArns List<string>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

SnapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

SnapshotRetentionLimit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

SnapshotWindow 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

SubnetGroupName string

Name of the cache subnet group to be used for the replication group.

Tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

UserGroupIds List<string>

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.

ApplyImmediately bool

Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.

AtRestEncryptionEnabled bool

Whether to enable encryption at rest.

AuthToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

AutoMinorVersionUpgrade bool

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 to true.

AutomaticFailoverEnabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones []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.

ClusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

DataTieringEnabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

EngineVersion 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 attribute engine_version_actual, see Attributes Reference below.

FinalSnapshotIdentifier string

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.

GlobalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

KmsKeyId string

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.

LogDeliveryConfigurations []ReplicationGroupLogDeliveryConfigurationArgs

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.

MaintenanceWindow 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

MultiAzEnabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

NodeType 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_id is set. Cannot be set if global_replication_group_id is set.

NotificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

NumNodeGroups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

NumberCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

ParameterGroupName string

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-enabled set 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.

PreferredCacheClusterAzs []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 considered. The first item in the list will be the primary node. Ignored when updating.

ReplicasPerNodeGroup int

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.

ReplicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

ReplicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

SecurityGroupIds []string

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

SecurityGroupNames []string

List of cache security group names to associate with this replication group.

SnapshotArns []string

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

SnapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

SnapshotRetentionLimit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

SnapshotWindow 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

SubnetGroupName string

Name of the cache subnet group to be used for the replication group.

Tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

UserGroupIds []string

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.

applyImmediately Boolean

Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.

atRestEncryptionEnabled Boolean

Whether to enable encryption at rest.

authToken String

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade Boolean

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 to true.

automaticFailoverEnabled Boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

dataTieringEnabled Boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

finalSnapshotIdentifier String

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.

globalReplicationGroupId String

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId String

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.

logDeliveryConfigurations List<ReplicationGroupLogDeliveryConfigurationArgs>

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.

maintenanceWindow 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

multiAzEnabled Boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn String

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters Integer

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups Integer

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters Integer

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName String

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

replicasPerNodeGroup Integer

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.

replicationGroupDescription String

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId String

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds List<String>

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

securityGroupNames List<String>

List of cache security group names to associate with this replication group.

snapshotArns List<String>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName String

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit Integer

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName String

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

transitEncryptionEnabled Boolean

Whether to enable encryption in transit.

userGroupIds List<String>

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.

applyImmediately boolean

Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.

atRestEncryptionEnabled boolean

Whether to enable encryption at rest.

authToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade boolean

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 to true.

automaticFailoverEnabled boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

dataTieringEnabled boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

finalSnapshotIdentifier string

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.

globalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId string

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.

logDeliveryConfigurations ReplicationGroupLogDeliveryConfigurationArgs[]

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.

maintenanceWindow 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

multiAzEnabled boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters number

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups number

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters number

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName string

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

replicasPerNodeGroup number

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.

replicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds string[]

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

securityGroupNames string[]

List of cache security group names to associate with this replication group.

snapshotArns string[]

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit number

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName string

Name of the cache subnet group to be used for the replication group.

tags {[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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

transitEncryptionEnabled boolean

Whether to enable encryption in transit.

userGroupIds string[]

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_encryption_enabled bool

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_version_upgrade bool

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 to true.

automatic_failover_enabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

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 ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

data_tiering_enabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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 attribute engine_version_actual, see Attributes Reference below.

final_snapshot_identifier str

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_group_id str

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kms_key_id str

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_configurations Sequence[ReplicationGroupLogDeliveryConfigurationArgs]

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_enabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

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_id is set. Cannot be set if global_replication_group_id is set.

notification_topic_arn str

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

num_cache_clusters int

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 deprecated cluster_mode. Defaults to 1.

num_node_groups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

number_cache_clusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameter_group_name str

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-enabled set 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_cluster_azs 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 considered. The first item in the list will be the primary node. Ignored when updating.

replicas_per_node_group int

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_description str

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replication_group_id str

Replication group identifier. This parameter is stored as a lowercase string.

security_group_ids Sequence[str]

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_names Sequence[str]

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_name forces a new resource.

snapshot_retention_limit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is 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_name str

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

transit_encryption_enabled bool

Whether to enable encryption in transit.

user_group_ids Sequence[str]

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.

applyImmediately Boolean

Specifies whether any modifications are applied immediately, or during the next maintenance window. Default is false.

atRestEncryptionEnabled Boolean

Whether to enable encryption at rest.

authToken String

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade Boolean

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 to true.

automaticFailoverEnabled Boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterMode Property Map

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

dataTieringEnabled Boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

finalSnapshotIdentifier String

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.

globalReplicationGroupId String

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId String

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.

logDeliveryConfigurations List<Property Map>

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.

maintenanceWindow 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

multiAzEnabled Boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn String

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters Number

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups Number

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters Number

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName String

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

replicasPerNodeGroup Number

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.

replicationGroupDescription String

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId String

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds List<String>

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

securityGroupNames List<String>

List of cache security group names to associate with this replication group.

snapshotArns List<String>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName String

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit Number

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName String

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

transitEncryptionEnabled Boolean

Whether to enable encryption in transit.

userGroupIds List<String>

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.

ClusterEnabled bool

Indicates if cluster mode is enabled.

ConfigurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

EngineVersionActual string

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.

MemberClusters List<string>

Identifiers of all the nodes that are part of this replication group.

PrimaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

ReaderEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

TagsAll Dictionary<string, string>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Arn string

ARN of the created ElastiCache Replication Group.

ClusterEnabled bool

Indicates if cluster mode is enabled.

ConfigurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

EngineVersionActual string

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.

MemberClusters []string

Identifiers of all the nodes that are part of this replication group.

PrimaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

ReaderEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

TagsAll map[string]string

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

arn String

ARN of the created ElastiCache Replication Group.

clusterEnabled Boolean

Indicates if cluster mode is enabled.

configurationEndpointAddress String

Address of the replication group configuration endpoint when cluster mode is enabled.

engineVersionActual String

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.

memberClusters List<String>

Identifiers of all the nodes that are part of this replication group.

primaryEndpointAddress String

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress String

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

tagsAll Map<String,String>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

arn string

ARN of the created ElastiCache Replication Group.

clusterEnabled boolean

Indicates if cluster mode is enabled.

configurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

engineVersionActual string

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.

memberClusters string[]

Identifiers of all the nodes that are part of this replication group.

primaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

tagsAll {[key: string]: string}

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

arn str

ARN of the created ElastiCache Replication Group.

cluster_enabled bool

Indicates if cluster mode is enabled.

configuration_endpoint_address str

Address of the replication group configuration endpoint when cluster mode is enabled.

engine_version_actual str

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_address str

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

reader_endpoint_address str

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

tags_all Mapping[str, str]

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

arn String

ARN of the created ElastiCache Replication Group.

clusterEnabled Boolean

Indicates if cluster mode is enabled.

configurationEndpointAddress String

Address of the replication group configuration endpoint when cluster mode is enabled.

engineVersionActual String

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.

memberClusters List<String>

Identifiers of all the nodes that are part of this replication group.

primaryEndpointAddress String

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress String

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

tagsAll Map<String>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration 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) -> ReplicationGroup
func 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)
Resource lookup is not supported in YAML
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.
The following state arguments are supported:
ApplyImmediately 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.

AtRestEncryptionEnabled bool

Whether to enable encryption at rest.

AuthToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

AutoMinorVersionUpgrade bool

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 to true.

AutomaticFailoverEnabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones 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.

ClusterEnabled bool

Indicates if cluster mode is enabled.

ClusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

ConfigurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

DataTieringEnabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

EngineVersion 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 attribute engine_version_actual, see Attributes Reference below.

EngineVersionActual string

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

FinalSnapshotIdentifier string

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.

GlobalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

KmsKeyId string

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.

LogDeliveryConfigurations List<ReplicationGroupLogDeliveryConfigurationArgs>

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.

MaintenanceWindow 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

MemberClusters List<string>

Identifiers of all the nodes that are part of this replication group.

MultiAzEnabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

NodeType 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_id is set. Cannot be set if global_replication_group_id is set.

NotificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

NumNodeGroups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

NumberCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

ParameterGroupName string

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-enabled set 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.

PreferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

PrimaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

ReaderEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

ReplicasPerNodeGroup int

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.

ReplicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

ReplicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

SecurityGroupIds List<string>

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

SecurityGroupNames List<string>

List of cache security group names to associate with this replication group.

SnapshotArns List<string>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

SnapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

SnapshotRetentionLimit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

SnapshotWindow 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

SubnetGroupName string

Name of the cache subnet group to be used for the replication group.

Tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TagsAll Dictionary<string, string>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

UserGroupIds List<string>

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.

ApplyImmediately 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.

AtRestEncryptionEnabled bool

Whether to enable encryption at rest.

AuthToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

AutoMinorVersionUpgrade bool

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 to true.

AutomaticFailoverEnabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones []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.

ClusterEnabled bool

Indicates if cluster mode is enabled.

ClusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

ConfigurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

DataTieringEnabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

EngineVersion 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 attribute engine_version_actual, see Attributes Reference below.

EngineVersionActual string

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

FinalSnapshotIdentifier string

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.

GlobalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

KmsKeyId string

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.

LogDeliveryConfigurations []ReplicationGroupLogDeliveryConfigurationArgs

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.

MaintenanceWindow 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

MemberClusters []string

Identifiers of all the nodes that are part of this replication group.

MultiAzEnabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

NodeType 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_id is set. Cannot be set if global_replication_group_id is set.

NotificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

NumNodeGroups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

NumberCacheClusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

ParameterGroupName string

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-enabled set 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.

PreferredCacheClusterAzs []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 considered. The first item in the list will be the primary node. Ignored when updating.

PrimaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

ReaderEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

ReplicasPerNodeGroup int

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.

ReplicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

ReplicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

SecurityGroupIds []string

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

SecurityGroupNames []string

List of cache security group names to associate with this replication group.

SnapshotArns []string

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

SnapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

SnapshotRetentionLimit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

SnapshotWindow 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

SubnetGroupName string

Name of the cache subnet group to be used for the replication group.

Tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

TagsAll map[string]string

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

UserGroupIds []string

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.

applyImmediately 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.

atRestEncryptionEnabled Boolean

Whether to enable encryption at rest.

authToken String

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade Boolean

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 to true.

automaticFailoverEnabled Boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterEnabled Boolean

Indicates if cluster mode is enabled.

clusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

configurationEndpointAddress String

Address of the replication group configuration endpoint when cluster mode is enabled.

dataTieringEnabled Boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

engineVersionActual String

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

finalSnapshotIdentifier String

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.

globalReplicationGroupId String

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId String

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.

logDeliveryConfigurations List<ReplicationGroupLogDeliveryConfigurationArgs>

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.

maintenanceWindow 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

memberClusters List<String>

Identifiers of all the nodes that are part of this replication group.

multiAzEnabled Boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn String

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters Integer

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups Integer

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters Integer

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName String

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

primaryEndpointAddress String

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress String

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

replicasPerNodeGroup Integer

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.

replicationGroupDescription String

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId String

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds List<String>

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

securityGroupNames List<String>

List of cache security group names to associate with this replication group.

snapshotArns List<String>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName String

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit Integer

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName String

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll Map<String,String>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

transitEncryptionEnabled Boolean

Whether to enable encryption in transit.

userGroupIds List<String>

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.

applyImmediately 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.

atRestEncryptionEnabled boolean

Whether to enable encryption at rest.

authToken string

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade boolean

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 to true.

automaticFailoverEnabled boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterEnabled boolean

Indicates if cluster mode is enabled.

clusterMode ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

configurationEndpointAddress string

Address of the replication group configuration endpoint when cluster mode is enabled.

dataTieringEnabled boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

engineVersionActual string

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

finalSnapshotIdentifier string

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.

globalReplicationGroupId string

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId string

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.

logDeliveryConfigurations ReplicationGroupLogDeliveryConfigurationArgs[]

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.

maintenanceWindow 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

memberClusters string[]

Identifiers of all the nodes that are part of this replication group.

multiAzEnabled boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn string

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters number

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups number

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters number

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName string

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

primaryEndpointAddress string

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress string

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

replicasPerNodeGroup number

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.

replicationGroupDescription string

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId string

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds string[]

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

securityGroupNames string[]

List of cache security group names to associate with this replication group.

snapshotArns string[]

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName string

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit number

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName string

Name of the cache subnet group to be used for the replication group.

tags {[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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll {[key: string]: string}

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

transitEncryptionEnabled boolean

Whether to enable encryption in transit.

userGroupIds string[]

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_encryption_enabled bool

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_version_upgrade bool

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 to true.

automatic_failover_enabled bool

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

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 ReplicationGroupClusterModeArgs

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

configuration_endpoint_address str

Address of the replication group configuration endpoint when cluster mode is enabled.

data_tiering_enabled bool

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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 attribute engine_version_actual, see Attributes Reference below.

engine_version_actual str

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

final_snapshot_identifier str

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_group_id str

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kms_key_id str

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_configurations Sequence[ReplicationGroupLogDeliveryConfigurationArgs]

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_enabled bool

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

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_id is set. Cannot be set if global_replication_group_id is set.

notification_topic_arn str

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

num_cache_clusters int

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 deprecated cluster_mode. Defaults to 1.

num_node_groups int

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

number_cache_clusters int

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameter_group_name str

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-enabled set 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_cluster_azs 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 considered. The first item in the list will be the primary node. Ignored when updating.

primary_endpoint_address str

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

reader_endpoint_address str

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

replicas_per_node_group int

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_description str

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replication_group_id str

Replication group identifier. This parameter is stored as a lowercase string.

security_group_ids Sequence[str]

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_names Sequence[str]

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_name forces a new resource.

snapshot_retention_limit int

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is 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_name str

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tags_all Mapping[str, str]

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

transit_encryption_enabled bool

Whether to enable encryption in transit.

user_group_ids Sequence[str]

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.

applyImmediately 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.

atRestEncryptionEnabled Boolean

Whether to enable encryption at rest.

authToken String

Password used to access a password protected server. Can be specified only if transit_encryption_enabled = true.

autoMinorVersionUpgrade Boolean

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 to true.

automaticFailoverEnabled Boolean

Specifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If enabled, num_cache_clusters must be greater than 1. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones 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.

clusterEnabled Boolean

Indicates if cluster mode is enabled.

clusterMode Property Map

Create a native Redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block 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 parameter cluster-enabled set to true.

Deprecated:

Use num_node_groups and replicas_per_node_group instead

configurationEndpointAddress String

Address of the replication group configuration endpoint when cluster mode is enabled.

dataTieringEnabled Boolean

Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when 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.

engineVersion 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 attribute engine_version_actual, see Attributes Reference below.

engineVersionActual String

Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.

finalSnapshotIdentifier String

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.

globalReplicationGroupId String

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_id is set, the num_node_groups parameter (or the num_node_groups parameter of the deprecated cluster_mode block) cannot be set.

kmsKeyId String

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.

logDeliveryConfigurations List<Property Map>

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.

maintenanceWindow 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

memberClusters List<String>

Identifiers of all the nodes that are part of this replication group.

multiAzEnabled Boolean

Specifies whether to enable Multi-AZ Support for the replication group. If true, automatic_failover_enabled must also be enabled. Defaults to false.

nodeType 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_id is set. Cannot be set if global_replication_group_id is set.

notificationTopicArn String

ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numCacheClusters Number

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 deprecated cluster_mode. Defaults to 1.

numNodeGroups Number

Number of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications.

numberCacheClusters Number

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 deprecated cluster_mode. Defaults to 1.

Deprecated:

Use num_cache_clusters instead

parameterGroupName String

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-enabled set 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.

preferredCacheClusterAzs 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 considered. The first item in the list will be the primary node. Ignored when updating.

primaryEndpointAddress String

(Redis only) Address of the endpoint for the primary node in the replication group, if the cluster mode is disabled.

readerEndpointAddress String

(Redis only) Address of the endpoint for the reader node in the replication group, if the cluster mode is disabled.

replicasPerNodeGroup Number

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.

replicationGroupDescription String

User-created description for the replication group. Must not be empty.

Deprecated:

Use description instead

replicationGroupId String

Replication group identifier. This parameter is stored as a lowercase string.

securityGroupIds List<String>

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

securityGroupNames List<String>

List of cache security group names to associate with this replication group.

snapshotArns List<String>

List of ARNs that identify Redis RDB snapshot files stored in Amazon S3. The names object names cannot contain any commas.

snapshotName String

Name of a snapshot from which to restore data into the new node group. Changing the snapshot_name forces a new resource.

snapshotRetentionLimit Number

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_limit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limit is not supported on cache.t1.micro cache nodes

snapshotWindow 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

subnetGroupName String

Name of the cache subnet group to be used for the replication group.

tags 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_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

tagsAll Map<String>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

transitEncryptionEnabled Boolean

Whether to enable encryption in transit.

userGroupIds List<String>

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

NumNodeGroups int

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_id is set.

Deprecated:

Use root-level num_node_groups instead

ReplicasPerNodeGroup int

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.

Deprecated:

Use root-level replicas_per_node_group instead

NumNodeGroups int

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_id is set.

Deprecated:

Use root-level num_node_groups instead

ReplicasPerNodeGroup int

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.

Deprecated:

Use root-level replicas_per_node_group instead

numNodeGroups Integer

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_id is set.

Deprecated:

Use root-level num_node_groups instead

replicasPerNodeGroup Integer

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.

Deprecated:

Use root-level replicas_per_node_group instead

numNodeGroups number

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_id is set.

Deprecated:

Use root-level num_node_groups instead

replicasPerNodeGroup number

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.

Deprecated:

Use root-level replicas_per_node_group instead

num_node_groups int

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_id is set.

Deprecated:

Use root-level num_node_groups instead

replicas_per_node_group int

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.

Deprecated:

Use root-level replicas_per_node_group instead

numNodeGroups Number

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_id is set.

Deprecated:

Use root-level num_node_groups instead

replicasPerNodeGroup Number

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.

Deprecated:

Use root-level replicas_per_node_group instead

ReplicationGroupLogDeliveryConfiguration

Destination string

Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.

DestinationType string

For CloudWatch Logs use cloudwatch-logs or for Kinesis Data Firehose use kinesis-firehose.

LogFormat string

Valid values are json or text

LogType string

Valid values are slow-log or engine-log. Max 1 of each.

Destination string

Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.

DestinationType string

For CloudWatch Logs use cloudwatch-logs or for Kinesis Data Firehose use kinesis-firehose.

LogFormat string

Valid values are json or text

LogType string

Valid values are slow-log or engine-log. Max 1 of each.

destination String

Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.

destinationType String

For CloudWatch Logs use cloudwatch-logs or for Kinesis Data Firehose use kinesis-firehose.

logFormat String

Valid values are json or text

logType String

Valid values are slow-log or engine-log. Max 1 of each.

destination string

Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.

destinationType string

For CloudWatch Logs use cloudwatch-logs or for Kinesis Data Firehose use kinesis-firehose.

logFormat string

Valid values are json or text

logType string

Valid values are slow-log or engine-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-logs or for Kinesis Data Firehose use kinesis-firehose.

log_format str

Valid values are json or text

log_type str

Valid values are slow-log or engine-log. Max 1 of each.

destination String

Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.

destinationType String

For CloudWatch Logs use cloudwatch-logs or for Kinesis Data Firehose use kinesis-firehose.

logFormat String

Valid values are json or text

logType String

Valid values are slow-log or engine-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

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes

This Pulumi package is based on the aws Terraform Provider.