Cluster

Provides an ElastiCache Cluster resource, which manages a Memcached cluster or Redis instance. For working with Redis (Cluster Mode Enabled) replication groups, see the aws.elasticache.ReplicationGroup resource.

Note: When you change an attribute, such as node_type, by default it is applied 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 the server reboots. See the AWS Docs on Modifying an ElastiCache Cache Cluster for more information.

Example Usage

Memcached Cluster

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.ElastiCache.Cluster("example", new Aws.ElastiCache.ClusterArgs
        {
            Engine = "memcached",
            NodeType = "cache.m4.large",
            NumCacheNodes = 2,
            ParameterGroupName = "default.memcached1.4",
            Port = 11211,
        });
    }

}
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.NewCluster(ctx, "example", &elasticache.ClusterArgs{
            Engine:             pulumi.String("memcached"),
            NodeType:           pulumi.String("cache.m4.large"),
            NumCacheNodes:      pulumi.Int(2),
            ParameterGroupName: pulumi.String("default.memcached1.4"),
            Port:               pulumi.Int(11211),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.elasticache.Cluster("example",
    engine="memcached",
    node_type="cache.m4.large",
    num_cache_nodes=2,
    parameter_group_name="default.memcached1.4",
    port=11211)
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.elasticache.Cluster("example", {
    engine: "memcached",
    nodeType: "cache.m4.large",
    numCacheNodes: 2,
    parameterGroupName: "default.memcached1.4",
    port: 11211,
});

Redis Instance

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var example = new Aws.ElastiCache.Cluster("example", new Aws.ElastiCache.ClusterArgs
        {
            Engine = "redis",
            EngineVersion = "3.2.10",
            NodeType = "cache.m4.large",
            NumCacheNodes = 1,
            ParameterGroupName = "default.redis3.2",
            Port = 6379,
        });
    }

}
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.NewCluster(ctx, "example", &elasticache.ClusterArgs{
            Engine:             pulumi.String("redis"),
            EngineVersion:      pulumi.String("3.2.10"),
            NodeType:           pulumi.String("cache.m4.large"),
            NumCacheNodes:      pulumi.Int(1),
            ParameterGroupName: pulumi.String("default.redis3.2"),
            Port:               pulumi.Int(6379),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

example = aws.elasticache.Cluster("example",
    engine="redis",
    engine_version="3.2.10",
    node_type="cache.m4.large",
    num_cache_nodes=1,
    parameter_group_name="default.redis3.2",
    port=6379)
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const example = new aws.elasticache.Cluster("example", {
    engine: "redis",
    engineVersion: "3.2.10",
    nodeType: "cache.m4.large",
    numCacheNodes: 1,
    parameterGroupName: "default.redis3.2",
    port: 6379,
});

Redis Cluster Mode Disabled Read Replica Instance

using Pulumi;
using Aws = Pulumi.Aws;

class MyStack : Stack
{
    public MyStack()
    {
        var replica = new Aws.ElastiCache.Cluster("replica", new Aws.ElastiCache.ClusterArgs
        {
            ReplicationGroupId = aws_elasticache_replication_group.Example.Id,
        });
    }

}
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.NewCluster(ctx, "replica", &elasticache.ClusterArgs{
            ReplicationGroupId: pulumi.String(aws_elasticache_replication_group.Example.Id),
        })
        if err != nil {
            return err
        }
        return nil
    })
}
import pulumi
import pulumi_aws as aws

replica = aws.elasticache.Cluster("replica", replication_group_id=aws_elasticache_replication_group["example"]["id"])
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const replica = new aws.elasticache.Cluster("replica", {
    replicationGroupId: aws_elasticache_replication_group_example.id,
});

Create a Cluster Resource

new Cluster(name: string, args?: ClusterArgs, opts?: CustomResourceOptions);
def Cluster(resource_name, opts=None, apply_immediately=None, availability_zone=None, az_mode=None, cluster_id=None, engine=None, engine_version=None, maintenance_window=None, node_type=None, notification_topic_arn=None, num_cache_nodes=None, parameter_group_name=None, port=None, preferred_availability_zones=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, __props__=None);
func NewCluster(ctx *Context, name string, args *ClusterArgs, opts ...ResourceOption) (*Cluster, error)
public Cluster(string name, ClusterArgs? args = null, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args ClusterArgs
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 ClusterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Cluster Resource Properties

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

Inputs

The Cluster resource accepts the following input properties:

ApplyImmediately bool

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

AzMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

ClusterId string

Group identifier. ElastiCache converts this name to lowercase

Engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

EngineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

NumCacheNodes int

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

ParameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

PreferredAvailabilityZones List<string>

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

ReplicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

SecurityGroupIds List<string>

One or more VPC security groups associated with the cache cluster

SecurityGroupNames List<string>

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

SubnetGroupName string

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

Tags Dictionary<string, string>

A map of tags to assign to the resource

ApplyImmediately bool

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

AzMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

ClusterId string

Group identifier. ElastiCache converts this name to lowercase

Engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

EngineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

NumCacheNodes int

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

ParameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

PreferredAvailabilityZones []string

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

ReplicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

SecurityGroupIds []string

One or more VPC security groups associated with the cache cluster

SecurityGroupNames []string

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

SubnetGroupName string

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

Tags map[string]string

A map of tags to assign to the resource

applyImmediately boolean

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

availabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

azMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

clusterId string

Group identifier. ElastiCache converts this name to lowercase

engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

engineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

numCacheNodes number

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

parameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

preferredAvailabilityZones string[]

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

replicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

securityGroupIds string[]

One or more VPC security groups associated with the cache cluster

securityGroupNames string[]

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

subnetGroupName string

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

tags {[key: string]: string}

A map of tags to assign to the resource

apply_immediately bool

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

availability_zone str

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

az_mode str

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

cluster_id str

Group identifier. ElastiCache converts this name to lowercase

engine str

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

engine_version str

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

num_cache_nodes float

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

parameter_group_name str

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

preferred_availability_zones List[str]

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

replication_group_id str

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

security_group_ids List[str]

One or more VPC security groups associated with the cache cluster

security_group_names List[str]

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

subnet_group_name str

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

tags Dict[str, str]

A map of tags to assign to the resource

Outputs

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

Arn string
CacheNodes List<ClusterCacheNode>

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

ClusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

ConfigurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

Id string
The provider-assigned unique ID for this managed resource.
Arn string
CacheNodes []ClusterCacheNode

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

ClusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

ConfigurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

Id string
The provider-assigned unique ID for this managed resource.
arn string
cacheNodes ClusterCacheNode[]

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

clusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

configurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

id string
The provider-assigned unique ID for this managed resource.
arn str
cache_nodes List[ClusterCacheNode]

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

cluster_address str

(Memcached only) The DNS name of the cache cluster without the port appended.

configuration_endpoint str

(Memcached only) The configuration endpoint to allow host discovery.

id str
The provider-assigned unique ID for this managed resource.

Look up an Existing Cluster Resource

Get an existing Cluster 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?: ClusterState, opts?: CustomResourceOptions): Cluster
static get(resource_name, id, opts=None, apply_immediately=None, arn=None, availability_zone=None, az_mode=None, cache_nodes=None, cluster_address=None, cluster_id=None, configuration_endpoint=None, engine=None, engine_version=None, maintenance_window=None, node_type=None, notification_topic_arn=None, num_cache_nodes=None, parameter_group_name=None, port=None, preferred_availability_zones=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, __props__=None);
func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
public static Cluster Get(string name, Input<string> id, ClusterState? 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 database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

Arn string
AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

AzMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

CacheNodes List<ClusterCacheNodeArgs>

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

ClusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

ClusterId string

Group identifier. ElastiCache converts this name to lowercase

ConfigurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

Engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

EngineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

NumCacheNodes int

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

ParameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

PreferredAvailabilityZones List<string>

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

ReplicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

SecurityGroupIds List<string>

One or more VPC security groups associated with the cache cluster

SecurityGroupNames List<string>

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

SubnetGroupName string

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

Tags Dictionary<string, string>

A map of tags to assign to the resource

ApplyImmediately bool

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

Arn string
AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

AzMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

CacheNodes []ClusterCacheNode

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

ClusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

ClusterId string

Group identifier. ElastiCache converts this name to lowercase

ConfigurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

Engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

EngineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

NumCacheNodes int

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

ParameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

PreferredAvailabilityZones []string

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

ReplicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

SecurityGroupIds []string

One or more VPC security groups associated with the cache cluster

SecurityGroupNames []string

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

SubnetGroupName string

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

Tags map[string]string

A map of tags to assign to the resource

applyImmediately boolean

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

arn string
availabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

azMode string

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

cacheNodes ClusterCacheNode[]

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

clusterAddress string

(Memcached only) The DNS name of the cache cluster without the port appended.

clusterId string

Group identifier. ElastiCache converts this name to lowercase

configurationEndpoint string

(Memcached only) The configuration endpoint to allow host discovery.

engine string

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

engineVersion string

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

numCacheNodes number

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

parameterGroupName string

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

preferredAvailabilityZones string[]

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

replicationGroupId string

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

securityGroupIds string[]

One or more VPC security groups associated with the cache cluster

securityGroupNames string[]

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

subnetGroupName string

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

tags {[key: string]: string}

A map of tags to assign to the resource

apply_immediately bool

Specifies whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information. (Available since v0.6.0)

arn str
availability_zone str

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

az_mode str

Specifies whether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster’s region. Valid values for this parameter are single-az or cross-az, default is single-az. If you want to choose cross-az, num_cache_nodes must be greater than 1

cache_nodes List[ClusterCacheNode]

List of node objects including id, address, port and availability_zone. Referenceable e.g. as ${aws_elasticache_cluster.bar.cache_nodes.0.address}

cluster_address str

(Memcached only) The DNS name of the cache cluster without the port appended.

cluster_id str

Group identifier. ElastiCache converts this name to lowercase

configuration_endpoint str

(Memcached only) The configuration endpoint to allow host discovery.

engine str

Name of the cache engine to be used for this cache cluster. Valid values for this parameter are memcached or redis

engine_version str

Version number of the cache engine to be used. See Describe Cache Engine Versions in the AWS Documentation center for supported versions

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. See Available Cache Node Types for supported node types

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

num_cache_nodes float

The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcache, this value must be between 1 and 20. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.

parameter_group_name str

Name of the parameter group to associate with this cache cluster

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. Cannot be provided with replication_group_id.

preferred_availability_zones List[str]

A list of the Availability Zones in which cache nodes are created. If you are creating your cluster in an Amazon VPC you can only locate nodes in Availability Zones that are associated with the subnets in the selected subnet group. The number of Availability Zones listed must equal the value of num_cache_nodes. If you want all the nodes in the same Availability Zone, use availability_zone instead, or repeat the Availability Zone multiple times in the list. Default: System chosen Availability Zones. Detecting drift of existing node availability zone is not currently supported. Updating this argument by itself to migrate existing node availability zones is not currently supported and will show a perpetual difference.

replication_group_id str

The ID of the replication group to which this cluster should belong. If this parameter is specified, the cluster is added to the specified replication group as a read replica; otherwise, the cluster is a standalone primary that is not part of any replication group.

security_group_ids List[str]

One or more VPC security groups associated with the cache cluster

security_group_names List[str]

List of security group names to associate with this cache cluster

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. Example: 05:00-09:00

subnet_group_name str

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

tags Dict[str, str]

A map of tags to assign to the resource

Supporting Types

ClusterCacheNode

See the output API doc for this type.

See the output API doc for this type.

See the output API doc for this type.

Address string
AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

Id string
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. Cannot be provided with replication_group_id.

Address string
AvailabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

Id string
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. Cannot be provided with replication_group_id.

address string
availabilityZone string

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

id string
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. Cannot be provided with replication_group_id.

address str
availability_zone str

The Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zones instead. Default: System chosen Availability Zone.

id str
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. Cannot be provided with replication_group_id.

Package Details

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