aws.elasticache.Cluster
Explore with Pulumi AI
Provides an ElastiCache Cluster resource, which manages either a Memcached cluster, a single-node Redis instance, or a [read replica in a Redis (Cluster Mode Enabled) replication group].
For working with Redis (Cluster Mode Enabled) replication groups, see the
aws.elasticache.ReplicationGroup resource.
Note: When you change an attribute, such as
num_cache_nodes, 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 theapply_immediatelyflag to instruct the service to apply the change immediately. Usingapply_immediatelycan result in a brief downtime as the server reboots. See the AWS Documentation on Modifying an ElastiCache Cache Cluster for ElastiCache for Memcached or ElastiCache for Redis for more information.
Note: Any attribute changes that re-create the resource will be applied immediately, regardless of the value of
apply_immediately.
Example Usage
Memcached Cluster
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.elasticache.Cluster("example", {
    clusterId: "cluster-example",
    engine: "memcached",
    nodeType: "cache.m4.large",
    numCacheNodes: 2,
    parameterGroupName: "default.memcached1.4",
    port: 11211,
});
import pulumi
import pulumi_aws as aws
example = aws.elasticache.Cluster("example",
    cluster_id="cluster-example",
    engine="memcached",
    node_type="cache.m4.large",
    num_cache_nodes=2,
    parameter_group_name="default.memcached1.4",
    port=11211)
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elasticache"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := elasticache.NewCluster(ctx, "example", &elasticache.ClusterArgs{
			ClusterId:          pulumi.String("cluster-example"),
			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
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var example = new Aws.ElastiCache.Cluster("example", new()
    {
        ClusterId = "cluster-example",
        Engine = "memcached",
        NodeType = "cache.m4.large",
        NumCacheNodes = 2,
        ParameterGroupName = "default.memcached1.4",
        Port = 11211,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Cluster("example", ClusterArgs.builder()
            .clusterId("cluster-example")
            .engine("memcached")
            .nodeType("cache.m4.large")
            .numCacheNodes(2)
            .parameterGroupName("default.memcached1.4")
            .port(11211)
            .build());
    }
}
resources:
  example:
    type: aws:elasticache:Cluster
    properties:
      clusterId: cluster-example
      engine: memcached
      nodeType: cache.m4.large
      numCacheNodes: 2
      parameterGroupName: default.memcached1.4
      port: 11211
Redis Instance
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.elasticache.Cluster("example", {
    clusterId: "cluster-example",
    engine: "redis",
    nodeType: "cache.m4.large",
    numCacheNodes: 1,
    parameterGroupName: "default.redis3.2",
    engineVersion: "3.2.10",
    port: 6379,
});
import pulumi
import pulumi_aws as aws
example = aws.elasticache.Cluster("example",
    cluster_id="cluster-example",
    engine="redis",
    node_type="cache.m4.large",
    num_cache_nodes=1,
    parameter_group_name="default.redis3.2",
    engine_version="3.2.10",
    port=6379)
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elasticache"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := elasticache.NewCluster(ctx, "example", &elasticache.ClusterArgs{
			ClusterId:          pulumi.String("cluster-example"),
			Engine:             pulumi.String("redis"),
			NodeType:           pulumi.String("cache.m4.large"),
			NumCacheNodes:      pulumi.Int(1),
			ParameterGroupName: pulumi.String("default.redis3.2"),
			EngineVersion:      pulumi.String("3.2.10"),
			Port:               pulumi.Int(6379),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var example = new Aws.ElastiCache.Cluster("example", new()
    {
        ClusterId = "cluster-example",
        Engine = "redis",
        NodeType = "cache.m4.large",
        NumCacheNodes = 1,
        ParameterGroupName = "default.redis3.2",
        EngineVersion = "3.2.10",
        Port = 6379,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Cluster("example", ClusterArgs.builder()
            .clusterId("cluster-example")
            .engine("redis")
            .nodeType("cache.m4.large")
            .numCacheNodes(1)
            .parameterGroupName("default.redis3.2")
            .engineVersion("3.2.10")
            .port(6379)
            .build());
    }
}
resources:
  example:
    type: aws:elasticache:Cluster
    properties:
      clusterId: cluster-example
      engine: redis
      nodeType: cache.m4.large
      numCacheNodes: 1
      parameterGroupName: default.redis3.2
      engineVersion: 3.2.10
      port: 6379
Redis Cluster Mode Disabled Read Replica Instance
These inherit their settings from the replication group.
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const replica = new aws.elasticache.Cluster("replica", {
    clusterId: "cluster-example",
    replicationGroupId: example.id,
});
import pulumi
import pulumi_aws as aws
replica = aws.elasticache.Cluster("replica",
    cluster_id="cluster-example",
    replication_group_id=example["id"])
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elasticache"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := elasticache.NewCluster(ctx, "replica", &elasticache.ClusterArgs{
			ClusterId:          pulumi.String("cluster-example"),
			ReplicationGroupId: pulumi.Any(example.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var replica = new Aws.ElastiCache.Cluster("replica", new()
    {
        ClusterId = "cluster-example",
        ReplicationGroupId = example.Id,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var replica = new Cluster("replica", ClusterArgs.builder()
            .clusterId("cluster-example")
            .replicationGroupId(example.id())
            .build());
    }
}
resources:
  replica:
    type: aws:elasticache:Cluster
    properties:
      clusterId: cluster-example
      replicationGroupId: ${example.id}
Redis Log Delivery configuration
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const test = new aws.elasticache.Cluster("test", {
    clusterId: "mycluster",
    engine: "redis",
    nodeType: "cache.t3.micro",
    numCacheNodes: 1,
    port: 6379,
    applyImmediately: true,
    logDeliveryConfigurations: [
        {
            destination: example.name,
            destinationType: "cloudwatch-logs",
            logFormat: "text",
            logType: "slow-log",
        },
        {
            destination: exampleAwsKinesisFirehoseDeliveryStream.name,
            destinationType: "kinesis-firehose",
            logFormat: "json",
            logType: "engine-log",
        },
    ],
});
import pulumi
import pulumi_aws as aws
test = aws.elasticache.Cluster("test",
    cluster_id="mycluster",
    engine="redis",
    node_type="cache.t3.micro",
    num_cache_nodes=1,
    port=6379,
    apply_immediately=True,
    log_delivery_configurations=[
        {
            "destination": example["name"],
            "destination_type": "cloudwatch-logs",
            "log_format": "text",
            "log_type": "slow-log",
        },
        {
            "destination": example_aws_kinesis_firehose_delivery_stream["name"],
            "destination_type": "kinesis-firehose",
            "log_format": "json",
            "log_type": "engine-log",
        },
    ])
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elasticache"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := elasticache.NewCluster(ctx, "test", &elasticache.ClusterArgs{
			ClusterId:        pulumi.String("mycluster"),
			Engine:           pulumi.String("redis"),
			NodeType:         pulumi.String("cache.t3.micro"),
			NumCacheNodes:    pulumi.Int(1),
			Port:             pulumi.Int(6379),
			ApplyImmediately: pulumi.Bool(true),
			LogDeliveryConfigurations: elasticache.ClusterLogDeliveryConfigurationArray{
				&elasticache.ClusterLogDeliveryConfigurationArgs{
					Destination:     pulumi.Any(example.Name),
					DestinationType: pulumi.String("cloudwatch-logs"),
					LogFormat:       pulumi.String("text"),
					LogType:         pulumi.String("slow-log"),
				},
				&elasticache.ClusterLogDeliveryConfigurationArgs{
					Destination:     pulumi.Any(exampleAwsKinesisFirehoseDeliveryStream.Name),
					DestinationType: pulumi.String("kinesis-firehose"),
					LogFormat:       pulumi.String("json"),
					LogType:         pulumi.String("engine-log"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var test = new Aws.ElastiCache.Cluster("test", new()
    {
        ClusterId = "mycluster",
        Engine = "redis",
        NodeType = "cache.t3.micro",
        NumCacheNodes = 1,
        Port = 6379,
        ApplyImmediately = true,
        LogDeliveryConfigurations = new[]
        {
            new Aws.ElastiCache.Inputs.ClusterLogDeliveryConfigurationArgs
            {
                Destination = example.Name,
                DestinationType = "cloudwatch-logs",
                LogFormat = "text",
                LogType = "slow-log",
            },
            new Aws.ElastiCache.Inputs.ClusterLogDeliveryConfigurationArgs
            {
                Destination = exampleAwsKinesisFirehoseDeliveryStream.Name,
                DestinationType = "kinesis-firehose",
                LogFormat = "json",
                LogType = "engine-log",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import com.pulumi.aws.elasticache.inputs.ClusterLogDeliveryConfigurationArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var test = new Cluster("test", ClusterArgs.builder()
            .clusterId("mycluster")
            .engine("redis")
            .nodeType("cache.t3.micro")
            .numCacheNodes(1)
            .port(6379)
            .applyImmediately(true)
            .logDeliveryConfigurations(            
                ClusterLogDeliveryConfigurationArgs.builder()
                    .destination(example.name())
                    .destinationType("cloudwatch-logs")
                    .logFormat("text")
                    .logType("slow-log")
                    .build(),
                ClusterLogDeliveryConfigurationArgs.builder()
                    .destination(exampleAwsKinesisFirehoseDeliveryStream.name())
                    .destinationType("kinesis-firehose")
                    .logFormat("json")
                    .logType("engine-log")
                    .build())
            .build());
    }
}
resources:
  test:
    type: aws:elasticache:Cluster
    properties:
      clusterId: mycluster
      engine: redis
      nodeType: cache.t3.micro
      numCacheNodes: 1
      port: 6379
      applyImmediately: true
      logDeliveryConfigurations:
        - destination: ${example.name}
          destinationType: cloudwatch-logs
          logFormat: text
          logType: slow-log
        - destination: ${exampleAwsKinesisFirehoseDeliveryStream.name}
          destinationType: kinesis-firehose
          logFormat: json
          logType: engine-log
Elasticache Cluster in Outpost
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = aws.outposts.getOutposts({});
const exampleGetOutpost = example.then(example => aws.outposts.getOutpost({
    id: example.ids?.[0],
}));
const exampleVpc = new aws.ec2.Vpc("example", {cidrBlock: "10.0.0.0/16"});
const exampleSubnet = new aws.ec2.Subnet("example", {
    vpcId: exampleVpc.id,
    cidrBlock: "10.0.1.0/24",
    tags: {
        Name: "my-subnet",
    },
});
const exampleSubnetGroup = new aws.elasticache.SubnetGroup("example", {
    name: "my-cache-subnet",
    subnetIds: [exampleSubnet.id],
});
const exampleCluster = new aws.elasticache.Cluster("example", {
    clusterId: "cluster-example",
    outpostMode: "single-outpost",
    preferredOutpostArn: exampleGetOutpost.then(exampleGetOutpost => exampleGetOutpost.arn),
    engine: "memcached",
    nodeType: "cache.r5.large",
    numCacheNodes: 2,
    parameterGroupName: "default.memcached1.4",
    port: 11211,
    subnetGroupName: exampleSubnetGroup.name,
});
import pulumi
import pulumi_aws as aws
example = aws.outposts.get_outposts()
example_get_outpost = aws.outposts.get_outpost(id=example.ids[0])
example_vpc = aws.ec2.Vpc("example", cidr_block="10.0.0.0/16")
example_subnet = aws.ec2.Subnet("example",
    vpc_id=example_vpc.id,
    cidr_block="10.0.1.0/24",
    tags={
        "Name": "my-subnet",
    })
example_subnet_group = aws.elasticache.SubnetGroup("example",
    name="my-cache-subnet",
    subnet_ids=[example_subnet.id])
example_cluster = aws.elasticache.Cluster("example",
    cluster_id="cluster-example",
    outpost_mode="single-outpost",
    preferred_outpost_arn=example_get_outpost.arn,
    engine="memcached",
    node_type="cache.r5.large",
    num_cache_nodes=2,
    parameter_group_name="default.memcached1.4",
    port=11211,
    subnet_group_name=example_subnet_group.name)
package main
import (
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elasticache"
	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/outposts"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := outposts.GetOutposts(ctx, &outposts.GetOutpostsArgs{}, nil)
		if err != nil {
			return err
		}
		exampleGetOutpost, err := outposts.GetOutpost(ctx, &outposts.GetOutpostArgs{
			Id: pulumi.StringRef(example.Ids[0]),
		}, nil)
		if err != nil {
			return err
		}
		exampleVpc, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
			CidrBlock: pulumi.String("10.0.0.0/16"),
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := ec2.NewSubnet(ctx, "example", &ec2.SubnetArgs{
			VpcId:     exampleVpc.ID(),
			CidrBlock: pulumi.String("10.0.1.0/24"),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("my-subnet"),
			},
		})
		if err != nil {
			return err
		}
		exampleSubnetGroup, err := elasticache.NewSubnetGroup(ctx, "example", &elasticache.SubnetGroupArgs{
			Name: pulumi.String("my-cache-subnet"),
			SubnetIds: pulumi.StringArray{
				exampleSubnet.ID(),
			},
		})
		if err != nil {
			return err
		}
		_, err = elasticache.NewCluster(ctx, "example", &elasticache.ClusterArgs{
			ClusterId:           pulumi.String("cluster-example"),
			OutpostMode:         pulumi.String("single-outpost"),
			PreferredOutpostArn: pulumi.String(exampleGetOutpost.Arn),
			Engine:              pulumi.String("memcached"),
			NodeType:            pulumi.String("cache.r5.large"),
			NumCacheNodes:       pulumi.Int(2),
			ParameterGroupName:  pulumi.String("default.memcached1.4"),
			Port:                pulumi.Int(11211),
			SubnetGroupName:     exampleSubnetGroup.Name,
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() => 
{
    var example = Aws.Outposts.GetOutposts.Invoke();
    var exampleGetOutpost = Aws.Outposts.GetOutpost.Invoke(new()
    {
        Id = example.Apply(getOutpostsResult => getOutpostsResult.Ids[0]),
    });
    var exampleVpc = new Aws.Ec2.Vpc("example", new()
    {
        CidrBlock = "10.0.0.0/16",
    });
    var exampleSubnet = new Aws.Ec2.Subnet("example", new()
    {
        VpcId = exampleVpc.Id,
        CidrBlock = "10.0.1.0/24",
        Tags = 
        {
            { "Name", "my-subnet" },
        },
    });
    var exampleSubnetGroup = new Aws.ElastiCache.SubnetGroup("example", new()
    {
        Name = "my-cache-subnet",
        SubnetIds = new[]
        {
            exampleSubnet.Id,
        },
    });
    var exampleCluster = new Aws.ElastiCache.Cluster("example", new()
    {
        ClusterId = "cluster-example",
        OutpostMode = "single-outpost",
        PreferredOutpostArn = exampleGetOutpost.Apply(getOutpostResult => getOutpostResult.Arn),
        Engine = "memcached",
        NodeType = "cache.r5.large",
        NumCacheNodes = 2,
        ParameterGroupName = "default.memcached1.4",
        Port = 11211,
        SubnetGroupName = exampleSubnetGroup.Name,
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.outposts.OutpostsFunctions;
import com.pulumi.aws.outposts.inputs.GetOutpostsArgs;
import com.pulumi.aws.outposts.inputs.GetOutpostArgs;
import com.pulumi.aws.ec2.Vpc;
import com.pulumi.aws.ec2.VpcArgs;
import com.pulumi.aws.ec2.Subnet;
import com.pulumi.aws.ec2.SubnetArgs;
import com.pulumi.aws.elasticache.SubnetGroup;
import com.pulumi.aws.elasticache.SubnetGroupArgs;
import com.pulumi.aws.elasticache.Cluster;
import com.pulumi.aws.elasticache.ClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var example = OutpostsFunctions.getOutposts();
        final var exampleGetOutpost = OutpostsFunctions.getOutpost(GetOutpostArgs.builder()
            .id(example.applyValue(getOutpostsResult -> getOutpostsResult.ids()[0]))
            .build());
        var exampleVpc = new Vpc("exampleVpc", VpcArgs.builder()
            .cidrBlock("10.0.0.0/16")
            .build());
        var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
            .vpcId(exampleVpc.id())
            .cidrBlock("10.0.1.0/24")
            .tags(Map.of("Name", "my-subnet"))
            .build());
        var exampleSubnetGroup = new SubnetGroup("exampleSubnetGroup", SubnetGroupArgs.builder()
            .name("my-cache-subnet")
            .subnetIds(exampleSubnet.id())
            .build());
        var exampleCluster = new Cluster("exampleCluster", ClusterArgs.builder()
            .clusterId("cluster-example")
            .outpostMode("single-outpost")
            .preferredOutpostArn(exampleGetOutpost.applyValue(getOutpostResult -> getOutpostResult.arn()))
            .engine("memcached")
            .nodeType("cache.r5.large")
            .numCacheNodes(2)
            .parameterGroupName("default.memcached1.4")
            .port(11211)
            .subnetGroupName(exampleSubnetGroup.name())
            .build());
    }
}
resources:
  exampleVpc:
    type: aws:ec2:Vpc
    name: example
    properties:
      cidrBlock: 10.0.0.0/16
  exampleSubnet:
    type: aws:ec2:Subnet
    name: example
    properties:
      vpcId: ${exampleVpc.id}
      cidrBlock: 10.0.1.0/24
      tags:
        Name: my-subnet
  exampleSubnetGroup:
    type: aws:elasticache:SubnetGroup
    name: example
    properties:
      name: my-cache-subnet
      subnetIds:
        - ${exampleSubnet.id}
  exampleCluster:
    type: aws:elasticache:Cluster
    name: example
    properties:
      clusterId: cluster-example
      outpostMode: single-outpost
      preferredOutpostArn: ${exampleGetOutpost.arn}
      engine: memcached
      nodeType: cache.r5.large
      numCacheNodes: 2
      parameterGroupName: default.memcached1.4
      port: 11211
      subnetGroupName: ${exampleSubnetGroup.name}
variables:
  example:
    fn::invoke:
      function: aws:outposts:getOutposts
      arguments: {}
  exampleGetOutpost:
    fn::invoke:
      function: aws:outposts:getOutpost
      arguments:
        id: ${example.ids[0]}
Create Cluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Cluster(name: string, args?: ClusterArgs, opts?: CustomResourceOptions);@overload
def Cluster(resource_name: str,
            args: Optional[ClusterArgs] = None,
            opts: Optional[ResourceOptions] = None)
@overload
def Cluster(resource_name: str,
            opts: Optional[ResourceOptions] = None,
            apply_immediately: Optional[bool] = None,
            auto_minor_version_upgrade: Optional[str] = None,
            availability_zone: Optional[str] = None,
            az_mode: Optional[str] = None,
            cluster_id: Optional[str] = None,
            engine: Optional[str] = None,
            engine_version: Optional[str] = None,
            final_snapshot_identifier: Optional[str] = None,
            ip_discovery: Optional[str] = None,
            log_delivery_configurations: Optional[Sequence[ClusterLogDeliveryConfigurationArgs]] = None,
            maintenance_window: Optional[str] = None,
            network_type: Optional[str] = None,
            node_type: Optional[str] = None,
            notification_topic_arn: Optional[str] = None,
            num_cache_nodes: Optional[int] = None,
            outpost_mode: Optional[str] = None,
            parameter_group_name: Optional[str] = None,
            port: Optional[int] = None,
            preferred_availability_zones: Optional[Sequence[str]] = None,
            preferred_outpost_arn: Optional[str] = None,
            replication_group_id: Optional[str] = None,
            security_group_ids: Optional[Sequence[str]] = None,
            snapshot_arns: Optional[str] = None,
            snapshot_name: Optional[str] = None,
            snapshot_retention_limit: Optional[int] = None,
            snapshot_window: Optional[str] = None,
            subnet_group_name: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            transit_encryption_enabled: Optional[bool] = None)func NewCluster(ctx *Context, name string, args *ClusterArgs, opts ...ResourceOption) (*Cluster, error)public Cluster(string name, ClusterArgs? args = null, CustomResourceOptions? opts = null)
public Cluster(String name, ClusterArgs args)
public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
type: aws:elasticache:Cluster
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args 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.
- args ClusterArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args 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.
- name String
- The unique name of the resource.
- args ClusterArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleclusterResourceResourceFromElasticachecluster = new Aws.ElastiCache.Cluster("exampleclusterResourceResourceFromElasticachecluster", new()
{
    ApplyImmediately = false,
    AutoMinorVersionUpgrade = "string",
    AvailabilityZone = "string",
    AzMode = "string",
    ClusterId = "string",
    Engine = "string",
    EngineVersion = "string",
    FinalSnapshotIdentifier = "string",
    IpDiscovery = "string",
    LogDeliveryConfigurations = new[]
    {
        new Aws.ElastiCache.Inputs.ClusterLogDeliveryConfigurationArgs
        {
            Destination = "string",
            DestinationType = "string",
            LogFormat = "string",
            LogType = "string",
        },
    },
    MaintenanceWindow = "string",
    NetworkType = "string",
    NodeType = "string",
    NotificationTopicArn = "string",
    NumCacheNodes = 0,
    OutpostMode = "string",
    ParameterGroupName = "string",
    Port = 0,
    PreferredAvailabilityZones = new[]
    {
        "string",
    },
    PreferredOutpostArn = "string",
    ReplicationGroupId = "string",
    SecurityGroupIds = new[]
    {
        "string",
    },
    SnapshotArns = "string",
    SnapshotName = "string",
    SnapshotRetentionLimit = 0,
    SnapshotWindow = "string",
    SubnetGroupName = "string",
    Tags = 
    {
        { "string", "string" },
    },
    TransitEncryptionEnabled = false,
});
example, err := elasticache.NewCluster(ctx, "exampleclusterResourceResourceFromElasticachecluster", &elasticache.ClusterArgs{
	ApplyImmediately:        pulumi.Bool(false),
	AutoMinorVersionUpgrade: pulumi.String("string"),
	AvailabilityZone:        pulumi.String("string"),
	AzMode:                  pulumi.String("string"),
	ClusterId:               pulumi.String("string"),
	Engine:                  pulumi.String("string"),
	EngineVersion:           pulumi.String("string"),
	FinalSnapshotIdentifier: pulumi.String("string"),
	IpDiscovery:             pulumi.String("string"),
	LogDeliveryConfigurations: elasticache.ClusterLogDeliveryConfigurationArray{
		&elasticache.ClusterLogDeliveryConfigurationArgs{
			Destination:     pulumi.String("string"),
			DestinationType: pulumi.String("string"),
			LogFormat:       pulumi.String("string"),
			LogType:         pulumi.String("string"),
		},
	},
	MaintenanceWindow:    pulumi.String("string"),
	NetworkType:          pulumi.String("string"),
	NodeType:             pulumi.String("string"),
	NotificationTopicArn: pulumi.String("string"),
	NumCacheNodes:        pulumi.Int(0),
	OutpostMode:          pulumi.String("string"),
	ParameterGroupName:   pulumi.String("string"),
	Port:                 pulumi.Int(0),
	PreferredAvailabilityZones: pulumi.StringArray{
		pulumi.String("string"),
	},
	PreferredOutpostArn: pulumi.String("string"),
	ReplicationGroupId:  pulumi.String("string"),
	SecurityGroupIds: pulumi.StringArray{
		pulumi.String("string"),
	},
	SnapshotArns:           pulumi.String("string"),
	SnapshotName:           pulumi.String("string"),
	SnapshotRetentionLimit: pulumi.Int(0),
	SnapshotWindow:         pulumi.String("string"),
	SubnetGroupName:        pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	TransitEncryptionEnabled: pulumi.Bool(false),
})
var exampleclusterResourceResourceFromElasticachecluster = new Cluster("exampleclusterResourceResourceFromElasticachecluster", ClusterArgs.builder()
    .applyImmediately(false)
    .autoMinorVersionUpgrade("string")
    .availabilityZone("string")
    .azMode("string")
    .clusterId("string")
    .engine("string")
    .engineVersion("string")
    .finalSnapshotIdentifier("string")
    .ipDiscovery("string")
    .logDeliveryConfigurations(ClusterLogDeliveryConfigurationArgs.builder()
        .destination("string")
        .destinationType("string")
        .logFormat("string")
        .logType("string")
        .build())
    .maintenanceWindow("string")
    .networkType("string")
    .nodeType("string")
    .notificationTopicArn("string")
    .numCacheNodes(0)
    .outpostMode("string")
    .parameterGroupName("string")
    .port(0)
    .preferredAvailabilityZones("string")
    .preferredOutpostArn("string")
    .replicationGroupId("string")
    .securityGroupIds("string")
    .snapshotArns("string")
    .snapshotName("string")
    .snapshotRetentionLimit(0)
    .snapshotWindow("string")
    .subnetGroupName("string")
    .tags(Map.of("string", "string"))
    .transitEncryptionEnabled(false)
    .build());
examplecluster_resource_resource_from_elasticachecluster = aws.elasticache.Cluster("exampleclusterResourceResourceFromElasticachecluster",
    apply_immediately=False,
    auto_minor_version_upgrade="string",
    availability_zone="string",
    az_mode="string",
    cluster_id="string",
    engine="string",
    engine_version="string",
    final_snapshot_identifier="string",
    ip_discovery="string",
    log_delivery_configurations=[{
        "destination": "string",
        "destination_type": "string",
        "log_format": "string",
        "log_type": "string",
    }],
    maintenance_window="string",
    network_type="string",
    node_type="string",
    notification_topic_arn="string",
    num_cache_nodes=0,
    outpost_mode="string",
    parameter_group_name="string",
    port=0,
    preferred_availability_zones=["string"],
    preferred_outpost_arn="string",
    replication_group_id="string",
    security_group_ids=["string"],
    snapshot_arns="string",
    snapshot_name="string",
    snapshot_retention_limit=0,
    snapshot_window="string",
    subnet_group_name="string",
    tags={
        "string": "string",
    },
    transit_encryption_enabled=False)
const exampleclusterResourceResourceFromElasticachecluster = new aws.elasticache.Cluster("exampleclusterResourceResourceFromElasticachecluster", {
    applyImmediately: false,
    autoMinorVersionUpgrade: "string",
    availabilityZone: "string",
    azMode: "string",
    clusterId: "string",
    engine: "string",
    engineVersion: "string",
    finalSnapshotIdentifier: "string",
    ipDiscovery: "string",
    logDeliveryConfigurations: [{
        destination: "string",
        destinationType: "string",
        logFormat: "string",
        logType: "string",
    }],
    maintenanceWindow: "string",
    networkType: "string",
    nodeType: "string",
    notificationTopicArn: "string",
    numCacheNodes: 0,
    outpostMode: "string",
    parameterGroupName: "string",
    port: 0,
    preferredAvailabilityZones: ["string"],
    preferredOutpostArn: "string",
    replicationGroupId: "string",
    securityGroupIds: ["string"],
    snapshotArns: "string",
    snapshotName: "string",
    snapshotRetentionLimit: 0,
    snapshotWindow: "string",
    subnetGroupName: "string",
    tags: {
        string: "string",
    },
    transitEncryptionEnabled: false,
});
type: aws:elasticache:Cluster
properties:
    applyImmediately: false
    autoMinorVersionUpgrade: string
    availabilityZone: string
    azMode: string
    clusterId: string
    engine: string
    engineVersion: string
    finalSnapshotIdentifier: string
    ipDiscovery: string
    logDeliveryConfigurations:
        - destination: string
          destinationType: string
          logFormat: string
          logType: string
    maintenanceWindow: string
    networkType: string
    nodeType: string
    notificationTopicArn: string
    numCacheNodes: 0
    outpostMode: string
    parameterGroupName: string
    port: 0
    preferredAvailabilityZones:
        - string
    preferredOutpostArn: string
    replicationGroupId: string
    securityGroupIds:
        - string
    snapshotArns: string
    snapshotName: string
    snapshotRetentionLimit: 0
    snapshotWindow: string
    subnetGroupName: string
    tags:
        string: string
    transitEncryptionEnabled: false
Cluster Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Cluster resource accepts the following input properties:
- ApplyImmediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- AutoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- AzMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- ClusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- Engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- EngineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- FinalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- IpDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- LogDelivery List<ClusterConfigurations Log Delivery Configuration> 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- NetworkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- NodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- NotificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- NumCache intNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- OutpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- ParameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- PreferredAvailability List<string>Zones 
- 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, useavailability_zoneinstead, 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.
- PreferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- ReplicationGroup stringId 
- 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.
- SecurityGroup List<string>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- SnapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- SnapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- SnapshotRetention intLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- SnapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- SubnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Dictionary<string, string>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- TransitEncryption boolEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- ApplyImmediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- AutoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- AzMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- ClusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- Engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- EngineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- FinalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- IpDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- LogDelivery []ClusterConfigurations Log Delivery Configuration Args 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- NetworkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- NodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- NotificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- NumCache intNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- OutpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- ParameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- PreferredAvailability []stringZones 
- 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, useavailability_zoneinstead, 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.
- PreferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- ReplicationGroup stringId 
- 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.
- SecurityGroup []stringIds 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- SnapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- SnapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- SnapshotRetention intLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- SnapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- SubnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- map[string]string
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- TransitEncryption boolEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately Boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- autoMinor StringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode String
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- clusterId String
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- engine String
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion String
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- finalSnapshot StringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery String
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery List<ClusterConfigurations Log Delivery Configuration> 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType String
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType String
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic StringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache IntegerNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode String
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup StringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port Integer
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability List<String>Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost StringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup StringId 
- 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.
- securityGroup List<String>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns String
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName String
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention IntegerLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow String
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup StringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Map<String,String>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- transitEncryption BooleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- autoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- clusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- finalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery ClusterConfigurations Log Delivery Configuration[] 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache numberNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability string[]Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup stringId 
- 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.
- securityGroup string[]Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention numberLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- {[key: string]: string}
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- transitEncryption booleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- apply_immediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- auto_minor_ strversion_ upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availability_zone str
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- az_mode str
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- cluster_id str
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- engine str
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engine_version str
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- final_snapshot_ stridentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ip_discovery str
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- log_delivery_ Sequence[Clusterconfigurations Log Delivery Configuration Args] 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance_window str
- Specifies the weekly time range for when maintenance
on the cache cluster is performed. The format is ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00.
- network_type str
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- node_type str
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notification_topic_ strarn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- num_cache_ intnodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpost_mode str
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameter_group_ strname 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferred_availability_ Sequence[str]zones 
- 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, useavailability_zoneinstead, 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.
- preferred_outpost_ strarn 
- The outpost ARN in which the cache cluster will be created.
- replication_group_ strid 
- 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_ Sequence[str]ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshot_arns str
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshot_name str
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshot_retention_ intlimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshot_window str
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnet_group_ strname 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Mapping[str, str]
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- transit_encryption_ boolenabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately Boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- autoMinor StringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode String
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- clusterId String
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- engine String
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion String
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- finalSnapshot StringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery String
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery List<Property Map>Configurations 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType String
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType String
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic StringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache NumberNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode String
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup StringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port Number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability List<String>Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost StringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup StringId 
- 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.
- securityGroup List<String>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns String
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName String
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention NumberLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow String
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup StringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Map<String>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- transitEncryption BooleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
Outputs
All input properties are implicitly available as output properties. Additionally, the Cluster resource produces the following output properties:
- Arn string
- The ARN of the created ElastiCache Cluster.
- CacheNodes List<ClusterCache Node> 
- List of node objects including id,address,portandavailability_zone.
- ClusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- ConfigurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- EngineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Id string
- The provider-assigned unique ID for this managed resource.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- Arn string
- The ARN of the created ElastiCache Cluster.
- CacheNodes []ClusterCache Node 
- List of node objects including id,address,portandavailability_zone.
- ClusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- ConfigurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- EngineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- Id string
- The provider-assigned unique ID for this managed resource.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- arn String
- The ARN of the created ElastiCache Cluster.
- cacheNodes List<ClusterCache Node> 
- List of node objects including id,address,portandavailability_zone.
- clusterAddress String
- (Memcached only) DNS name of the cache cluster without the port appended.
- configurationEndpoint String
- (Memcached only) Configuration endpoint to allow host discovery.
- engineVersion StringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id String
- The provider-assigned unique ID for this managed resource.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- arn string
- The ARN of the created ElastiCache Cluster.
- cacheNodes ClusterCache Node[] 
- List of node objects including id,address,portandavailability_zone.
- clusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- configurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- engineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id string
- The provider-assigned unique ID for this managed resource.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- arn str
- The ARN of the created ElastiCache Cluster.
- cache_nodes Sequence[ClusterCache Node] 
- List of node objects including id,address,portandavailability_zone.
- cluster_address str
- (Memcached only) DNS name of the cache cluster without the port appended.
- configuration_endpoint str
- (Memcached only) Configuration endpoint to allow host discovery.
- engine_version_ stractual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id str
- The provider-assigned unique ID for this managed resource.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- arn String
- The ARN of the created ElastiCache Cluster.
- cacheNodes List<Property Map>
- List of node objects including id,address,portandavailability_zone.
- clusterAddress String
- (Memcached only) DNS name of the cache cluster without the port appended.
- configurationEndpoint String
- (Memcached only) Configuration endpoint to allow host discovery.
- engineVersion StringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- id String
- The provider-assigned unique ID for this managed resource.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
Look up 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@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        apply_immediately: Optional[bool] = None,
        arn: Optional[str] = None,
        auto_minor_version_upgrade: Optional[str] = None,
        availability_zone: Optional[str] = None,
        az_mode: Optional[str] = None,
        cache_nodes: Optional[Sequence[ClusterCacheNodeArgs]] = None,
        cluster_address: Optional[str] = None,
        cluster_id: Optional[str] = None,
        configuration_endpoint: Optional[str] = None,
        engine: Optional[str] = None,
        engine_version: Optional[str] = None,
        engine_version_actual: Optional[str] = None,
        final_snapshot_identifier: Optional[str] = None,
        ip_discovery: Optional[str] = None,
        log_delivery_configurations: Optional[Sequence[ClusterLogDeliveryConfigurationArgs]] = None,
        maintenance_window: Optional[str] = None,
        network_type: Optional[str] = None,
        node_type: Optional[str] = None,
        notification_topic_arn: Optional[str] = None,
        num_cache_nodes: Optional[int] = None,
        outpost_mode: Optional[str] = None,
        parameter_group_name: Optional[str] = None,
        port: Optional[int] = None,
        preferred_availability_zones: Optional[Sequence[str]] = None,
        preferred_outpost_arn: Optional[str] = None,
        replication_group_id: Optional[str] = None,
        security_group_ids: Optional[Sequence[str]] = None,
        snapshot_arns: Optional[str] = None,
        snapshot_name: Optional[str] = None,
        snapshot_retention_limit: Optional[int] = None,
        snapshot_window: Optional[str] = None,
        subnet_group_name: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        tags_all: Optional[Mapping[str, str]] = None,
        transit_encryption_enabled: Optional[bool] = None) -> Clusterfunc 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)public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)resources:  _:    type: aws:elasticache:Cluster    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- ApplyImmediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- Arn string
- The ARN of the created ElastiCache Cluster.
- AutoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- AzMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- CacheNodes List<ClusterCache Node> 
- List of node objects including id,address,portandavailability_zone.
- ClusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- ClusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- ConfigurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- Engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- EngineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- EngineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- FinalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- IpDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- LogDelivery List<ClusterConfigurations Log Delivery Configuration> 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- NetworkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- NodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- NotificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- NumCache intNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- OutpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- ParameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- PreferredAvailability List<string>Zones 
- 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, useavailability_zoneinstead, 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.
- PreferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- ReplicationGroup stringId 
- 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.
- SecurityGroup List<string>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- SnapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- SnapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- SnapshotRetention intLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- SnapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- SubnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Dictionary<string, string>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- TransitEncryption boolEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- ApplyImmediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- Arn string
- The ARN of the created ElastiCache Cluster.
- AutoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- AzMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- CacheNodes []ClusterCache Node Args 
- List of node objects including id,address,portandavailability_zone.
- ClusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- ClusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- ConfigurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- Engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- EngineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- EngineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- FinalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- IpDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- LogDelivery []ClusterConfigurations Log Delivery Configuration Args 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- NetworkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- NodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- NotificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- NumCache intNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- OutpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- ParameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- PreferredAvailability []stringZones 
- 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, useavailability_zoneinstead, 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.
- PreferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- ReplicationGroup stringId 
- 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.
- SecurityGroup []stringIds 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- SnapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- SnapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- SnapshotRetention intLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- SnapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- SubnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- map[string]string
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- map[string]string
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- TransitEncryption boolEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately Boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- arn String
- The ARN of the created ElastiCache Cluster.
- autoMinor StringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode String
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- cacheNodes List<ClusterCache Node> 
- List of node objects including id,address,portandavailability_zone.
- clusterAddress String
- (Memcached only) DNS name of the cache cluster without the port appended.
- clusterId String
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- configurationEndpoint String
- (Memcached only) Configuration endpoint to allow host discovery.
- engine String
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion String
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- engineVersion StringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- finalSnapshot StringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery String
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery List<ClusterConfigurations Log Delivery Configuration> 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType String
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType String
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic StringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache IntegerNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode String
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup StringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port Integer
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability List<String>Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost StringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup StringId 
- 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.
- securityGroup List<String>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns String
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName String
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention IntegerLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow String
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup StringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Map<String,String>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- transitEncryption BooleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- arn string
- The ARN of the created ElastiCache Cluster.
- autoMinor stringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode string
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- cacheNodes ClusterCache Node[] 
- List of node objects including id,address,portandavailability_zone.
- clusterAddress string
- (Memcached only) DNS name of the cache cluster without the port appended.
- clusterId string
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- configurationEndpoint string
- (Memcached only) Configuration endpoint to allow host discovery.
- engine string
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion string
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- engineVersion stringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- finalSnapshot stringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery string
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery ClusterConfigurations Log Delivery Configuration[] 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType string
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType string
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic stringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache numberNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode string
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup stringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability string[]Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost stringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup stringId 
- 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.
- securityGroup string[]Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns string
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName string
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention numberLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow string
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup stringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- {[key: string]: string}
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- transitEncryption booleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- apply_immediately bool
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- arn str
- The ARN of the created ElastiCache Cluster.
- auto_minor_ strversion_ upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availability_zone str
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- az_mode str
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- cache_nodes Sequence[ClusterCache Node Args] 
- List of node objects including id,address,portandavailability_zone.
- cluster_address str
- (Memcached only) DNS name of the cache cluster without the port appended.
- cluster_id str
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- configuration_endpoint str
- (Memcached only) Configuration endpoint to allow host discovery.
- engine str
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engine_version str
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- engine_version_ stractual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- final_snapshot_ stridentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ip_discovery str
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- log_delivery_ Sequence[Clusterconfigurations Log Delivery Configuration Args] 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- maintenance_window str
- Specifies the weekly time range for when maintenance
on the cache cluster is performed. The format is ddd:hh24:mi-ddd:hh24:mi(24H Clock UTC). The minimum maintenance window is a 60 minute period. Example:sun:05:00-sun:09:00.
- network_type str
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- node_type str
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notification_topic_ strarn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- num_cache_ intnodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpost_mode str
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameter_group_ strname 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferred_availability_ Sequence[str]zones 
- 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, useavailability_zoneinstead, 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.
- preferred_outpost_ strarn 
- The outpost ARN in which the cache cluster will be created.
- replication_group_ strid 
- 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_ Sequence[str]ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshot_arns str
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshot_name str
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshot_retention_ intlimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshot_window str
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnet_group_ strname 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Mapping[str, str]
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- transit_encryption_ boolenabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
- applyImmediately Boolean
- Whether any database modifications are applied immediately, or during the next maintenance window. Default is false. See Amazon ElastiCache Documentation for more information..
- arn String
- The ARN of the created ElastiCache Cluster.
- autoMinor StringVersion Upgrade 
- Specifies whether minor version engine upgrades will be applied automatically to the underlying Cache Cluster instances during the maintenance window.
Only supported for engine type "redis"and if the engine version is 6 or higher. Defaults totrue.
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- azMode String
- 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-azorcross-az, default issingle-az. If you want to choosecross-az,num_cache_nodesmust be greater than1.
- cacheNodes List<Property Map>
- List of node objects including id,address,portandavailability_zone.
- clusterAddress String
- (Memcached only) DNS name of the cache cluster without the port appended.
- clusterId String
- Group identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource.
- configurationEndpoint String
- (Memcached only) Configuration endpoint to allow host discovery.
- engine String
- Name of the cache engine to be used for this cache cluster. Valid values are memcachedandredis.
- engineVersion String
- Version number of the cache engine to be used.
If not set, defaults to the latest version.
See Describe Cache Engine Versions in the AWS Documentation for supported versions.
When engineisredisand the version is 7 or higher, the major and minor version should be set, e.g.,7.2. When the version is 6, the major and minor version can be set, e.g.,6.2, or the minor version can be unspecified which will use the latest version at creation time, e.g.,6.x. Otherwise, specify the full version desired, e.g.,5.0.6. The actual engine version used is returned in the attributeengine_version_actual, see Attribute Reference below. Cannot be provided withreplication_group_id.
- engineVersion StringActual 
- Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine.
- finalSnapshot StringIdentifier 
- Name of your final cluster snapshot. If omitted, no final snapshot will be made.
- ipDiscovery String
- The IP version to advertise in the discovery protocol. Valid values are ipv4oripv6.
- logDelivery List<Property Map>Configurations 
- Specifies the destination and format of Redis SLOWLOG or Redis Engine Log. See the documentation on Amazon ElastiCache. See Log Delivery Configuration below for more details.
- 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.
- networkType String
- The IP versions for cache cluster connections. IPv6 is supported with Redis engine 6.2onword or Memcached version1.6.6for all Nitro system instances. Valid values areipv4,ipv6ordual_stack.
- nodeType String
- The instance class used. See AWS documentation for information on supported node types for Redis and guidance on selecting node types for Redis. See AWS documentation for information on supported node types for Memcached and guidance on selecting node types for Memcached. For Memcached, changing this value will re-create the resource.
- notificationTopic StringArn 
- ARN of an SNS topic to send ElastiCache notifications to. Example: arn:aws:sns:us-east-1:012345678999:my_sns_topic.
- numCache NumberNodes 
- The initial number of cache nodes that the cache cluster will have. For Redis, this value must be 1. For Memcached, this value must be between 1 and 40. If this number is reduced on subsequent runs, the highest numbered nodes will be removed.
- outpostMode String
- Specify the outpost mode that will apply to the cache cluster creation. Valid values are "single-outpost"and"cross-outpost", however AWS currently only supports"single-outpost"mode.
- parameterGroup StringName 
- The name of the parameter group to associate with this cache cluster. - The following arguments are optional: 
- port Number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- preferredAvailability List<String>Zones 
- 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, useavailability_zoneinstead, 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.
- preferredOutpost StringArn 
- The outpost ARN in which the cache cluster will be created.
- replicationGroup StringId 
- 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.
- securityGroup List<String>Ids 
- One or more VPC security groups associated with the cache cluster. Cannot be provided with replication_group_id.
- snapshotArns String
- Single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. The object name cannot contain any commas. Changing snapshot_arnsforces a new resource.
- snapshotName String
- Name of a snapshot from which to restore data into the new node group. Changing snapshot_nameforces a new resource.
- snapshotRetention NumberLimit 
- Number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot_retention_limitis not supported on cache.t1.micro cache nodes
- snapshotWindow String
- Daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. Example: 05:00-09:00
- subnetGroup StringName 
- Name of the subnet group to be used for the cache cluster. Changing this value will re-create the resource. Cannot be provided with replication_group_id.
- Map<String>
- Map of tags to assign to the resource. If configured with a provider default_tagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Map<String>
- Map of tags assigned to the resource, including those inherited from the provider default_tagsconfiguration block.
- transitEncryption BooleanEnabled 
- Enable encryption in-transit. Supported only with Memcached versions 1.6.12and later, running in a VPC. See the ElastiCache in-transit encryption documentation for more details.
Supporting Types
ClusterCacheNode, ClusterCacheNodeArgs      
- Address string
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- Id string
- OutpostArn string
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- Address string
- AvailabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- Id string
- OutpostArn string
- Port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- address String
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- id String
- outpostArn String
- port Integer
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- address string
- availabilityZone string
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- id string
- outpostArn string
- port number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- address str
- availability_zone str
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- id str
- outpost_arn str
- port int
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
- address String
- availabilityZone String
- Availability Zone for the cache cluster. If you want to create cache nodes in multi-az, use preferred_availability_zonesinstead. Default: System chosen Availability Zone. Changing this value will re-create the resource.
- id String
- outpostArn String
- port Number
- The port number on which each of the cache nodes will accept connections. For Memcached the default is 11211, and for Redis the default port is 6379. Cannot be provided with replication_group_id. Changing this value will re-create the resource.
ClusterLogDeliveryConfiguration, ClusterLogDeliveryConfigurationArgs        
- Destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- DestinationType string
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- LogFormat string
- Valid values are jsonortext
- LogType string
- Valid values are slow-logorengine-log. Max 1 of each.
- Destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- DestinationType string
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- LogFormat string
- Valid values are jsonortext
- LogType string
- Valid values are slow-logorengine-log. Max 1 of each.
- destination String
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destinationType String
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- logFormat String
- Valid values are jsonortext
- logType String
- Valid values are slow-logorengine-log. Max 1 of each.
- destination string
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destinationType string
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- logFormat string
- Valid values are jsonortext
- logType string
- Valid values are slow-logorengine-log. Max 1 of each.
- destination str
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destination_type str
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- log_format str
- Valid values are jsonortext
- log_type str
- Valid values are slow-logorengine-log. Max 1 of each.
- destination String
- Name of either the CloudWatch Logs LogGroup or Kinesis Data Firehose resource.
- destinationType String
- For CloudWatch Logs use cloudwatch-logsor for Kinesis Data Firehose usekinesis-firehose.
- logFormat String
- Valid values are jsonortext
- logType String
- Valid values are slow-logorengine-log. Max 1 of each.
Import
Using pulumi import, import ElastiCache Clusters using the cluster_id. For example:
$ pulumi import aws:elasticache/cluster:Cluster my_cluster my_cluster
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the awsTerraform Provider.