ReplicationGroup

Provides an ElastiCache Replication Group resource. For working with Memcached or single primary Redis instances (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.

Example Usage

Redis Cluster Mode Disabled

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.ElastiCache.ReplicationGroup("example", new Aws.ElastiCache.ReplicationGroupArgs
        {
            AutomaticFailoverEnabled = true,
            AvailabilityZones = 
            {
                "us-west-2a",
                "us-west-2b",
            },
            NodeType = "cache.m4.large",
            NumberCacheClusters = 2,
            ParameterGroupName = "default.redis3.2",
            Port = 6379,
            ReplicationGroupDescription = "test description",
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/elasticache"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := elasticache.NewReplicationGroup(ctx, "example", &elasticache.ReplicationGroupArgs{
            AutomaticFailoverEnabled: pulumi.Bool(true),
            AvailabilityZones: pulumi.StringArray{
                pulumi.String("us-west-2a"),
                pulumi.String("us-west-2b"),
            },
            NodeType:                    pulumi.String("cache.m4.large"),
            NumberCacheClusters:         pulumi.Int(2),
            ParameterGroupName:          pulumi.String("default.redis3.2"),
            Port:                        pulumi.Int(6379),
            ReplicationGroupDescription: pulumi.String("test description"),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.elasticache.ReplicationGroup("example",
    automatic_failover_enabled=True,
    availability_zones=[
        "us-west-2a",
        "us-west-2b",
    ],
    node_type="cache.m4.large",
    number_cache_clusters=2,
    parameter_group_name="default.redis3.2",
    port=6379,
    replication_group_description="test description")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.elasticache.ReplicationGroup("example", {
    automaticFailoverEnabled: true,
    availabilityZones: [
        "us-west-2a",
        "us-west-2b",
    ],
    nodeType: "cache.m4.large",
    numberCacheClusters: 2,
    parameterGroupName: "default.redis3.2",
    port: 6379,
    replicationGroupDescription: "test description",
});

Redis Cluster Mode Enabled

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var baz = new Aws.ElastiCache.ReplicationGroup("baz", new Aws.ElastiCache.ReplicationGroupArgs
        {
            AutomaticFailoverEnabled = true,
            ClusterMode = new Aws.ElastiCache.Inputs.ReplicationGroupClusterModeArgs
            {
                NumNodeGroups = 2,
                ReplicasPerNodeGroup = 1,
            },
            NodeType = "cache.t2.small",
            ParameterGroupName = "default.redis3.2.cluster.on",
            Port = 6379,
            ReplicationGroupDescription = "test description",
        });
    }

}
package main

import (
    "github.com/pulumi/pulumi-aws/sdk/v2/go/aws/elasticache"
    "github.com/pulumi/pulumi/sdk/v2/go/pulumi"
)

func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
        _, err := elasticache.NewReplicationGroup(ctx, "baz", &elasticache.ReplicationGroupArgs{
            AutomaticFailoverEnabled: pulumi.Bool(true),
            ClusterMode: &elasticache.ReplicationGroupClusterModeArgs{
                NumNodeGroups:        pulumi.Int(2),
                ReplicasPerNodeGroup: pulumi.Int(1),
            },
            NodeType:                    pulumi.String("cache.t2.small"),
            ParameterGroupName:          pulumi.String("default.redis3.2.cluster.on"),
            Port:                        pulumi.Int(6379),
            ReplicationGroupDescription: pulumi.String("test description"),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

baz = aws.elasticache.ReplicationGroup("baz",
    automatic_failover_enabled=True,
    cluster_mode={
        "numNodeGroups": 2,
        "replicasPerNodeGroup": 1,
    },
    node_type="cache.t2.small",
    parameter_group_name="default.redis3.2.cluster.on",
    port=6379,
    replication_group_description="test description")
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const baz = new aws.elasticache.ReplicationGroup("baz", {
    automaticFailoverEnabled: true,
    clusterMode: {
        numNodeGroups: 2,
        replicasPerNodeGroup: 1,
    },
    nodeType: "cache.t2.small",
    parameterGroupName: "default.redis3.2.cluster.on",
    port: 6379,
    replicationGroupDescription: "test description",
});

Create a ReplicationGroup Resource

def ReplicationGroup(resource_name, opts=None, apply_immediately=None, at_rest_encryption_enabled=None, auth_token=None, auto_minor_version_upgrade=None, automatic_failover_enabled=None, availability_zones=None, cluster_mode=None, engine=None, engine_version=None, kms_key_id=None, maintenance_window=None, node_type=None, notification_topic_arn=None, number_cache_clusters=None, parameter_group_name=None, port=None, replication_group_description=None, replication_group_id=None, security_group_ids=None, security_group_names=None, snapshot_arns=None, snapshot_name=None, snapshot_retention_limit=None, snapshot_window=None, subnet_group_name=None, tags=None, transit_encryption_enabled=None, __props__=None);
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.
opts ResourceOptions
A bag of options that control this 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.

ReplicationGroup Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.

Inputs

The ReplicationGroup resource accepts the following input properties:

ReplicationGroupDescription string

A user-created description for the replication group.

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

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

AutoMinorVersionUpgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones List<string>

A 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 important.

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.

Engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

EngineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

NodeType string

The compute and memory capacity of the nodes in the node group.

NotificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumberCacheClusters int

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

ParameterGroupName string

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

Port int

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

ReplicationGroupId string

The 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>

A list of cache security group names to associate with this replication group.

SnapshotArns List<string>

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

SnapshotName string

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

SnapshotRetentionLimit int

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

SnapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

Tags Dictionary<string, string>

A map of tags to assign to the resource

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

ReplicationGroupDescription string

A user-created description for the replication group.

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

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

AutoMinorVersionUpgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones []string

A 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 important.

ClusterMode ReplicationGroupClusterMode

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

Engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

EngineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

NodeType string

The compute and memory capacity of the nodes in the node group.

NotificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumberCacheClusters int

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

ParameterGroupName string

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

Port int

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

ReplicationGroupId string

The 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

A list of cache security group names to associate with this replication group.

SnapshotArns []string

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

SnapshotName string

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

SnapshotRetentionLimit int

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

SnapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

Tags map[string]string

A map of tags to assign to the resource

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

replicationGroupDescription string

A user-created description for the replication group.

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

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

autoMinorVersionUpgrade boolean

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones string[]

A 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 important.

clusterMode ReplicationGroupClusterMode

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

engineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

nodeType string

The compute and memory capacity of the nodes in the node group.

notificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numberCacheClusters number

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

parameterGroupName string

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

port number

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

replicationGroupId string

The 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[]

A list of cache security group names to associate with this replication group.

snapshotArns string[]

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

snapshotName string

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

snapshotRetentionLimit number

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

snapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

tags {[key: string]: string}

A map of tags to assign to the resource

transitEncryptionEnabled boolean

Whether to enable encryption in transit.

replication_group_description str

A user-created description for the replication group.

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

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

auto_minor_version_upgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availability_zones List[str]

A 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 important.

cluster_mode Dict[ReplicationGroupClusterMode]

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

engine str

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

engine_version str

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

node_type str

The compute and memory capacity of the nodes in the node group.

notification_topic_arn str

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

number_cache_clusters float

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

parameter_group_name str

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

port float

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

replication_group_id str

The replication group identifier. This parameter is stored as a lowercase string.

security_group_ids List[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 List[str]

A list of cache security group names to associate with this replication group.

snapshot_arns List[str]

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

snapshot_name str

The 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 float

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

snapshot_window str

The 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

The name of the cache subnet group to be used for the replication group.

tags Dict[str, str]

A map of tags to assign to the resource

transit_encryption_enabled bool

Whether to enable encryption in transit.

Outputs

All input properties are implicitly available as output properties. Additionally, the ReplicationGroup resource produces the following output properties:

ConfigurationEndpointAddress string

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

Id string
The provider-assigned unique ID for this managed resource.
MemberClusters List<string>

The identifiers of all the nodes that are part of this replication group.

PrimaryEndpointAddress string

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

ConfigurationEndpointAddress string

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

Id string
The provider-assigned unique ID for this managed resource.
MemberClusters []string

The identifiers of all the nodes that are part of this replication group.

PrimaryEndpointAddress string

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

configurationEndpointAddress string

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

id string
The provider-assigned unique ID for this managed resource.
memberClusters string[]

The identifiers of all the nodes that are part of this replication group.

primaryEndpointAddress string

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

configuration_endpoint_address str

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

id str
The provider-assigned unique ID for this managed resource.
member_clusters List[str]

The identifiers of all the nodes that are part of this replication group.

primary_endpoint_address str

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

Look up an 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
static get(resource_name, id, opts=None, apply_immediately=None, at_rest_encryption_enabled=None, auth_token=None, auto_minor_version_upgrade=None, automatic_failover_enabled=None, availability_zones=None, cluster_mode=None, configuration_endpoint_address=None, engine=None, engine_version=None, kms_key_id=None, maintenance_window=None, member_clusters=None, node_type=None, notification_topic_arn=None, number_cache_clusters=None, parameter_group_name=None, port=None, primary_endpoint_address=None, replication_group_description=None, replication_group_id=None, security_group_ids=None, security_group_names=None, snapshot_arns=None, snapshot_name=None, snapshot_retention_limit=None, snapshot_window=None, subnet_group_name=None, tags=None, transit_encryption_enabled=None, __props__=None);
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)
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.

The following state arguments are supported:

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

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

AutoMinorVersionUpgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones List<string>

A 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 important.

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.

ConfigurationEndpointAddress string

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

Engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

EngineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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>

The identifiers of all the nodes that are part of this replication group.

NodeType string

The compute and memory capacity of the nodes in the node group.

NotificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumberCacheClusters int

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

ParameterGroupName string

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

Port int

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

PrimaryEndpointAddress string

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

ReplicationGroupDescription string

A user-created description for the replication group.

ReplicationGroupId string

The 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>

A list of cache security group names to associate with this replication group.

SnapshotArns List<string>

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

SnapshotName string

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

SnapshotRetentionLimit int

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

SnapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

Tags Dictionary<string, string>

A map of tags to assign to the resource

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

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

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

AutoMinorVersionUpgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

AvailabilityZones []string

A 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 important.

ClusterMode ReplicationGroupClusterMode

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

ConfigurationEndpointAddress string

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

Engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

EngineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

The identifiers of all the nodes that are part of this replication group.

NodeType string

The compute and memory capacity of the nodes in the node group.

NotificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

NumberCacheClusters int

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

ParameterGroupName string

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

Port int

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

PrimaryEndpointAddress string

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

ReplicationGroupDescription string

A user-created description for the replication group.

ReplicationGroupId string

The 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

A list of cache security group names to associate with this replication group.

SnapshotArns []string

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

SnapshotName string

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

SnapshotRetentionLimit int

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

SnapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

Tags map[string]string

A map of tags to assign to the resource

TransitEncryptionEnabled bool

Whether to enable encryption in transit.

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

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

autoMinorVersionUpgrade boolean

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availabilityZones string[]

A 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 important.

clusterMode ReplicationGroupClusterMode

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

configurationEndpointAddress string

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

engine string

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

engineVersion string

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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

The identifiers of all the nodes that are part of this replication group.

nodeType string

The compute and memory capacity of the nodes in the node group.

notificationTopicArn string

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

numberCacheClusters number

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

parameterGroupName string

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

port number

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

primaryEndpointAddress string

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

replicationGroupDescription string

A user-created description for the replication group.

replicationGroupId string

The 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[]

A list of cache security group names to associate with this replication group.

snapshotArns string[]

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

snapshotName string

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

snapshotRetentionLimit number

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

snapshotWindow string

The 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

The name of the cache subnet group to be used for the replication group.

tags {[key: string]: string}

A map of tags to assign to the resource

transitEncryptionEnabled boolean

Whether to enable encryption in transit.

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

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

auto_minor_version_upgrade bool

Specifies whether a minor engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window. 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 true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication groups. Defaults to false.

availability_zones List[str]

A 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 important.

cluster_mode Dict[ReplicationGroupClusterMode]

Create a native redis cluster. automatic_failover_enabled must be set to true. Cluster Mode documented below. Only 1 cluster_mode block is allowed.

configuration_endpoint_address str

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

engine str

The name of the cache engine to be used for the clusters in this replication group. e.g. redis

engine_version str

The version number of the cache engine to be used for the cache clusters in this replication group.

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.

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 List[str]

The identifiers of all the nodes that are part of this replication group.

node_type str

The compute and memory capacity of the nodes in the node group.

notification_topic_arn str

An Amazon Resource Name (ARN) of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic

number_cache_clusters float

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

parameter_group_name str

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

port float

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

primary_endpoint_address str

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

replication_group_description str

A user-created description for the replication group.

replication_group_id str

The replication group identifier. This parameter is stored as a lowercase string.

security_group_ids List[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 List[str]

A list of cache security group names to associate with this replication group.

snapshot_arns List[str]

A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my_bucket/snapshot1.rdb

snapshot_name str

The 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 float

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

snapshot_window str

The 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

The name of the cache subnet group to be used for the replication group.

tags Dict[str, str]

A map of tags to assign to the resource

transit_encryption_enabled bool

Whether to enable encryption in transit.

Supporting Types

ReplicationGroupClusterMode

See the input and output API doc for this type.

See the input and output API doc for this type.

See the input and output API doc for this type.

NumNodeGroups int

Specify the number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications.

ReplicasPerNodeGroup int

Specify the number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will force a new resource.

NumNodeGroups int

Specify the number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications.

ReplicasPerNodeGroup int

Specify the number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will force a new resource.

numNodeGroups number

Specify the number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications.

replicasPerNodeGroup number

Specify the number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will force a new resource.

numNodeGroups float

Specify the number of node groups (shards) for this Redis replication group. Changing this number will trigger an online resizing operation before other settings modifications.

replicasPerNodeGroup float

Specify the number of replica nodes in each node group. Valid values are 0 to 5. Changing this number will force a new resource.

Package Details

Repository
https://github.com/pulumi/pulumi-aws
License
Apache-2.0
Notes
This Pulumi package is based on the aws Terraform Provider.