ElastiCache
Terraform module to create AWS ElastiCache resources
Inputs
40 / 68
apply_immediatelyoptionalboolWhether any database modifications are applied immediately, or during the next maintenance window. Default is `false`
nullat_rest_encryption_enabledoptionalboolWhether to enable encryption at rest
trueauth_tokenoptionalstringThe password used to access a password protected server. Can be specified only if `transit_encryption_enabled = true`
nullauth_token_update_strategyoptionalstringStrategy to use when updating the `auth_token`. Valid values are `SET`, `ROTATE`, and `DELETE`. Defaults to `ROTATE`
nullauto_minor_version_upgradeoptionalboolSpecifies 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 `valkey` and if the engine version is 6 or higher. Defaults to `true`
nullautomatic_failover_enabledoptionalboolSpecifies whether a read-only replica will be automatically promoted to read/write primary if the existing primary fails. If true, Multi-AZ is enabled for this replication group. If false, Multi-AZ is disabled for this replication group. Must be enabled for Redis (cluster mode enabled) replication g…
nullavailability_zoneoptionalstringAvailability Zone for the cache cluster. If you want to create cache nodes in multi-az, use `preferred_availability_zones` instead
nullaz_modeoptionalstringWhether the nodes in this Memcached node group are created in a single Availability Zone or created across multiple Availability Zones in the cluster's region. Valid values for this parameter are `single-az` or `cross-az`, default is `single-az`
nullcluster_idoptionalstringGroup identifier. ElastiCache converts this name to lowercase. Changing this value will re-create the resource
""cluster_modeoptionalstringSpecifies whether cluster mode is enabled or disabled. Valid values are enabled or disabled or compatible
nullcluster_mode_enabledoptionalboolWhether to enable Redis [cluster mode https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Replication.Redis-RedisCluster.html]
falsecreateoptionalboolDetermines whether resources will be created (affects all resources)
truecreate_clusteroptionalboolDetermines whether an ElastiCache cluster will be created or not
falsecreate_parameter_groupoptionalboolDetermines whether the ElastiCache parameter group will be created or not
falsecreate_primary_global_replication_groupoptionalboolDetermines whether an primary ElastiCache global replication group will be created
falsecreate_replication_groupoptionalboolDetermines whether an ElastiCache replication group will be created or not
truecreate_secondary_global_replication_groupoptionalboolDetermines whether an secondary ElastiCache global replication group will be created
falsecreate_security_groupoptionalboolDetermines if a security group is created
truecreate_subnet_groupoptionalboolDetermines whether the Elasticache subnet group will be created or not
truedata_tiering_enabledoptionalboolEnables data tiering. Data tiering is only supported for replication groups using the `r6gd` node type. This parameter must be set to true when using `r6gd` nodes
nulldescriptionoptionalstringUser-created description for the replication group
nullengineoptionalstringName of the cache engine to be used for this cache cluster. Valid values are `memcached`, `redis`, or `valkey`
redisengine_versionoptionalstringVersion number of the cache engine to be used. If not set, defaults to the latest version
nullfinal_snapshot_identifieroptionalstring(Redis only) Name of your final cluster snapshot. If omitted, no final snapshot will be made
nullglobal_replication_group_idoptionalstringThe ID of the global replication group to which this replication group should belong
nullglobal_replication_group_id_suffixoptionalstringThe ID suffix of the global replication group
nullip_discoveryoptionalstringThe IP version to advertise in the discovery protocol. Valid values are `ipv4` or `ipv6`
nullkms_key_arnoptionalstringThe ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if `at_rest_encryption_enabled = true`
nulllog_delivery_configurationoptionalany(Redis OSS or Valkey) Specifies the destination and format of Redis OSS/Valkey SLOWLOG or Redis OSS/Valkey Engine Log
{…}maintenance_windowoptionalstringSpecifies 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)
nullmulti_az_enabledoptionalboolSpecifies whether to enable Multi-AZ Support for the replication group. If true, `automatic_failover_enabled` must also be enabled. Defaults to `false`
falsenetwork_typeoptionalstringThe IP versions for cache cluster connections. Valid values are `ipv4`, `ipv6` or `dual_stack`
nullnode_typeoptionalstringThe instance class used. For Memcached, changing this value will re-create the resource
nullnotification_topic_arnoptionalstringARN of an SNS topic to send ElastiCache notifications to
nullnum_cache_clustersoptionalnumberNumber of cache clusters (primary and replicas) this replication group will have. If Multi-AZ is enabled, the value of this parameter must be at least 2. Updates will occur before other modifications. Conflicts with `num_node_groups`. Defaults to `1`
nullnum_cache_nodesoptionalnumberThe 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
1num_node_groupsoptionalnumberNumber of node groups (shards) for this Redis replication group. Changing this number will trigger a resizing operation before other settings modifications
nulloutpost_modeoptionalstringSpecify 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
nullparameter_group_descriptionoptionalstringThe description of the ElastiCache parameter group. Defaults to `Managed by Terraform`
nullparameter_group_familyoptionalstringThe family of the ElastiCache parameter group
""All 68 are optional — the module deploys with none of them set. Showing 40, so the site stays a static download — the remaining 28 are in the source.
Outputs
25
cloudwatch_log_group_arnArn of cloudwatch log group created
cloudwatch_log_group_nameName of cloudwatch log group created
cloudwatch_log_groupsMap of CloudWatch log groups created and their attributes
cluster_address(Memcached only) DNS name of the cache cluster without the port appended
cluster_arnThe ARN of the ElastiCache Cluster
cluster_cache_nodesList of node objects including `id`, `address`, `port` and `availability_zone`
cluster_configuration_endpoint(Memcached only) Configuration endpoint to allow host discovery
cluster_engine_version_actualBecause ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine
global_replication_group_arnARN of the created ElastiCache Global Replication Group
global_replication_group_engine_version_actualThe full version number of the cache engine running on the members of this global replication group
global_replication_group_idID of the ElastiCache Global Replication Group
global_replication_group_node_groupsSet of node groups (shards) on the global replication group
parameter_group_arnThe AWS ARN associated with the parameter group
parameter_group_idThe ElastiCache parameter group name
replication_group_arnARN of the created ElastiCache Replication Group
replication_group_configuration_endpoint_addressAddress of the replication group configuration endpoint when cluster mode is enabled
replication_group_engine_version_actualBecause ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine
replication_group_idID of the ElastiCache Replication Group
replication_group_member_clustersIdentifiers of all the nodes that are part of this replication group
replication_group_portPort of the primary node in the replication group, if the cluster mode is disabled
replication_group_primary_endpoint_addressAddress of the endpoint for the primary node in the replication group, if the cluster mode is disabled
replication_group_reader_endpoint_addressAddress of the endpoint for the reader node in the replication group, if the cluster mode is disabled
security_group_arnAmazon Resource Name (ARN) of the security group
security_group_idID of the security group
subnet_group_nameThe ElastiCache subnet group name
What the agent wires into the next module. An edge on the architecture diagram is one of these consumed by something else.