{"id":46337289,"url":"https://github.com/squareops/terraform-aws-elasticache-redis","last_synced_at":"2026-03-04T19:05:37.264Z","repository":{"id":174599909,"uuid":"590744350","full_name":"squareops/terraform-aws-elasticache-redis","owner":"squareops","description":"Terraform module for simplified provisioning and management of AWS ElastiCache Redis.","archived":false,"fork":false,"pushed_at":"2025-02-06T06:39:34.000Z","size":68,"stargazers_count":16,"open_issues_count":0,"forks_count":8,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-13T09:53:59.919Z","etag":null,"topics":["aws","database","elasticache","elasticache-redis","redis","redis-cluster","terraform"],"latest_commit_sha":null,"homepage":"https://squareops.com","language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/squareops.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-01-19T05:05:32.000Z","updated_at":"2025-05-08T04:06:07.000Z","dependencies_parsed_at":"2023-07-30T01:46:28.720Z","dependency_job_id":"560807ad-03cd-4a00-aedd-d65f26f327e1","html_url":"https://github.com/squareops/terraform-aws-elasticache-redis","commit_stats":null,"previous_names":["squareops/terraform-aws-elasticache-redis"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/squareops/terraform-aws-elasticache-redis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareops%2Fterraform-aws-elasticache-redis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareops%2Fterraform-aws-elasticache-redis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareops%2Fterraform-aws-elasticache-redis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareops%2Fterraform-aws-elasticache-redis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/squareops","download_url":"https://codeload.github.com/squareops/terraform-aws-elasticache-redis/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/squareops%2Fterraform-aws-elasticache-redis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30090042,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T18:31:08.343Z","status":"ssl_error","status_checked_at":"2026-03-04T18:31:07.708Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","database","elasticache","elasticache-redis","redis","redis-cluster","terraform"],"created_at":"2026-03-04T19:05:36.491Z","updated_at":"2026-03-04T19:05:37.237Z","avatar_url":"https://github.com/squareops.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Redis\n![squareops_avatar]\n\n[squareops_avatar]: https://squareops.com/wp-content/uploads/2022/12/squareops-logo.png\n\n### [SquareOps Technologies](https://squareops.com/) Your DevOps Partner for Accelerating cloud journey.\n\u003cbr\u003e\nThis module is a Terraform module that provides an easy and efficient way to deploy and manage an Amazon ElastiCache Redis cluster in AWS. It simplifies the process of setting up a Redis cluster with customizable configurations, allowing you to focus on your application development and performance optimization.\nFeatures\n\n  1. Simple Configuration: The module offers a simple and intuitive configuration interface, allowing you to define your Redis cluster's properties, such as instance type, node count, subnet, security groups, and more.\n\n  2. Scalability: Easily scale your Redis cluster up or down by modifying the number of cache nodes, enabling you to meet the changing demands of your application.\n\n  3. High Availability: Enable multi-AZ deployment to achieve high availability and automatic failover in case of a node or zone failure. This ensures that your Redis cluster remains accessible and your data stays protected.\n\n  4. Flexible Networking: Choose the VPC and subnets where you want to deploy your Redis cluster, providing you with control over network access and integration with other resources in your AWS environment.\n\n  5. Encryption and Security: Enable encryption at rest with your own KMS key or use AWS-managed encryption. Control access to your Redis cluster using CIDR blocks and security groups, ensuring secure communication and data protection.\n\n  6. Backup and Recovery: Configure automated daily snapshots and set the retention period for backups. You can also specify a final snapshot for a smooth and controlled cluster termination process.\n\n  7. Logging and Monitoring: Easily configure logging destinations for slow logs and engine logs, allowing you to monitor the performance and troubleshoot any issues efficiently.\n\n  8. CloudWatch Alerts: Set up CloudWatch alarms to monitor the health and performance of your Redis cluster. Integrate these alarms with AWS Simple Notification Service (SNS) to receive real-time alerts. Use AWS Lambda functions to customize your alerting logic, and send notifications to Slack channels for immediate visibility into your Redis cluster's status.\n\n\n## Uses Example\n\n```hcl\n\nmodule \"redis\" {\n  source          = \"squareops/elasticache-redis/aws\"  \n  environment     = \"production\"\n  name            = \"redis\"\n  family          = \"redis6.x\"\n  vpc_id                           = \"vpc-06eb7eskaf\"\n  subnets                          = [\"subnet-0bfa3eskaf\",\"subnet-0140bskaf\"]\n  node_type                        = \"cache.t3.small\"\n  kms_key_arn                      = \"arn:aws:kms:us-east-2:222222222222:key/kms_key_arn\"\n  num_cache_nodes                  = 2\n  engine_version                   = \"6.x\"\n  multi_az_enabled                 = false\n  availability_zones               = 2\n  automatic_failover_enabled       = true\n  snapshot_retention_limit         = 7\n  transit_encryption_enabled       = false\n  notification_topic_arn           = null\n  allowed_security_groups          = [sg-0132a18skaf]\n  snapshot_window                  = \"07:00-08:00\"\n  maintenance_window               = \"sun:09:00-sun:10:00\"\n  cloudwatch_metric_alarms_enabled = true  # For enabling basic alerting\n  alarm_cpu_threshold_percent      = 70\n  alarm_memory_threshold_bytes     = \"10000000\" # in bytes\n  slack_notification_enabled       = true\n  slack_username                   = \"john\"\n  slack_channel                    = \"redis-alerts\"\n  slack_webhook_url                = \"https://hooks.slack.com/services/xxxxxxxxx\"\n}\n\n```\nRefer [examples](https://github.com/squareops/terraform-aws-elasticache-redis/tree/main/examples/complete) for more details.\n\n ## IAM Permissions\nThe required IAM permissions to create resources from this module can be found [here](https://github.com/squareops/terraform-aws-elasticache-redis/blob/main/IAM.md)\n\n## Important Note\n1. By default, the variable `create_random_password` is set to true. Therefore, even if the user provides a password, it will not be read. The `create_random_password` variable should be set to false and the `password` variable should have a non-null value to be read and used.\n\n## Security \u0026 Compliance [\u003cimg src=\"\thttps://prowler.pro/wp-content/themes/prowler-pro/assets/img/logo.svg\" width=\"250\" align=\"right\" /\u003e](https://prowler.pro/)\n\nSecurity scanning is graciously provided by Prowler. Proowler is the leading fully hosted, cloud-native solution providing continuous cluster security and compliance.\n\n| Benchmark | Description |\n|--------|---------------|\n| Ensure that encryption is enabled for RDS instances | Enabled for RDS created using this module. |\n\n\u003c!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n## Requirements\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"requirement_terraform\"\u003e\u003c/a\u003e [terraform](#requirement\\_terraform) | \u003e= 1.0 |\n| \u003ca name=\"requirement_aws\"\u003e\u003c/a\u003e [aws](#requirement\\_aws) | \u003e= 4.23 |\n| \u003ca name=\"requirement_random\"\u003e\u003c/a\u003e [random](#requirement\\_random) | \u003e= 3.0.0 |\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_archive\"\u003e\u003c/a\u003e [archive](#provider\\_archive) | n/a |\n| \u003ca name=\"provider_aws\"\u003e\u003c/a\u003e [aws](#provider\\_aws) | \u003e= 4.23 |\n| \u003ca name=\"provider_random\"\u003e\u003c/a\u003e [random](#provider\\_random) | \u003e= 3.0.0 |\n\n## Modules\n\n| Name | Source | Version |\n|------|--------|---------|\n| \u003ca name=\"module_cw_sns_slack\"\u003e\u003c/a\u003e [cw\\_sns\\_slack](#module\\_cw\\_sns\\_slack) | ./lambda | n/a |\n| \u003ca name=\"module_security_group_redis\"\u003e\u003c/a\u003e [security\\_group\\_redis](#module\\_security\\_group\\_redis) | terraform-aws-modules/security-group/aws | 4.13.0 |\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [aws_cloudwatch_metric_alarm.cache_connections](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_cpu](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_evictions](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_hits](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_memory](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_misses](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_cloudwatch_metric_alarm.cache_replication_lag](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_metric_alarm) | resource |\n| [aws_elasticache_cluster.redis](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticache_cluster) | resource |\n| [aws_elasticache_parameter_group.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticache_parameter_group) | resource |\n| [aws_elasticache_replication_group.redis](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticache_replication_group) | resource |\n| [aws_elasticache_subnet_group.elasticache](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticache_subnet_group) | resource |\n| [aws_kms_ciphertext.slack_url](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/kms_ciphertext) | resource |\n| [aws_kms_key.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/kms_key) | resource |\n| [aws_lambda_permission.sns_lambda_slack_invoke](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission) | resource |\n| [aws_secretsmanager_secret.secret_redis](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/secretsmanager_secret) | resource |\n| [aws_secretsmanager_secret_version.redis_credentials](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/secretsmanager_secret_version) | resource |\n| [aws_security_group_rule.cidr_ingress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_security_group_rule.default_ingress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group_rule) | resource |\n| [aws_sns_topic.slack_topic](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/sns_topic) | resource |\n| [aws_sns_topic_subscription.slack-endpoint](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/sns_topic_subscription) | resource |\n| [random_password.password](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/password) | resource |\n| [archive_file.lambdazip](https://registry.terraform.io/providers/hashicorp/archive/latest/docs/data-sources/file) | data source |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_alarm_actions\"\u003e\u003c/a\u003e [alarm\\_actions](#input\\_alarm\\_actions) | Alarm action list | `list(string)` | `[]` | no |\n| \u003ca name=\"input_alarm_cache_hits_threshold\"\u003e\u003c/a\u003e [alarm\\_cache\\_hits\\_threshold](#input\\_alarm\\_cache\\_hits\\_threshold) | Cache hits threshold alarm level | `number` | `1000` | no |\n| \u003ca name=\"input_alarm_cache_misses_threshold\"\u003e\u003c/a\u003e [alarm\\_cache\\_misses\\_threshold](#input\\_alarm\\_cache\\_misses\\_threshold) | Cache misses threshold alarm level | `number` | `50` | no |\n| \u003ca name=\"input_alarm_connections_threshold\"\u003e\u003c/a\u003e [alarm\\_connections\\_threshold](#input\\_alarm\\_connections\\_threshold) | Connections threshold alarm level | `number` | `100` | no |\n| \u003ca name=\"input_alarm_cpu_threshold_percent\"\u003e\u003c/a\u003e [alarm\\_cpu\\_threshold\\_percent](#input\\_alarm\\_cpu\\_threshold\\_percent) | CPU threshold alarm level | `number` | `75` | no |\n| \u003ca name=\"input_alarm_eviction_threshold\"\u003e\u003c/a\u003e [alarm\\_eviction\\_threshold](#input\\_alarm\\_eviction\\_threshold) | Eviction threshold alarm level | `number` | `20` | no |\n| \u003ca name=\"input_alarm_memory_threshold_bytes\"\u003e\u003c/a\u003e [alarm\\_memory\\_threshold\\_bytes](#input\\_alarm\\_memory\\_threshold\\_bytes) | Ram threshold alarm level in bytes | `number` | `10000000` | no |\n| \u003ca name=\"input_alarm_replication_lag_threshold\"\u003e\u003c/a\u003e [alarm\\_replication\\_lag\\_threshold](#input\\_alarm\\_replication\\_lag\\_threshold) | Replication lag threshold alarm level | `number` | `10` | no |\n| \u003ca name=\"input_allowed_cidr_blocks\"\u003e\u003c/a\u003e [allowed\\_cidr\\_blocks](#input\\_allowed\\_cidr\\_blocks) | A list of CIDR blocks which are allowed to access the database | `list(any)` | `[]` | no |\n| \u003ca name=\"input_allowed_security_groups\"\u003e\u003c/a\u003e [allowed\\_security\\_groups](#input\\_allowed\\_security\\_groups) | A list of Security Group ID's to allow access to | `list(any)` | `[]` | no |\n| \u003ca name=\"input_at_rest_encryption_enabled\"\u003e\u003c/a\u003e [at\\_rest\\_encryption\\_enabled](#input\\_at\\_rest\\_encryption\\_enabled) | (Optional) Whether to enable encryption at rest | `bool` | `true` | no |\n| \u003ca name=\"input_automatic_failover_enabled\"\u003e\u003c/a\u003e [automatic\\_failover\\_enabled](#input\\_automatic\\_failover\\_enabled) | Enable automatic failover | `bool` | `false` | no |\n| \u003ca name=\"input_availability_zones\"\u003e\u003c/a\u003e [availability\\_zones](#input\\_availability\\_zones) | The no. of AZs | `list(string)` | `[]` | no |\n| \u003ca name=\"input_cloudwatch_metric_alarms_enabled\"\u003e\u003c/a\u003e [cloudwatch\\_metric\\_alarms\\_enabled](#input\\_cloudwatch\\_metric\\_alarms\\_enabled) | Boolean flag to enable/disable CloudWatch metrics alarms | `bool` | `false` | no |\n| \u003ca name=\"input_cluster_mode_enabled\"\u003e\u003c/a\u003e [cluster\\_mode\\_enabled](#input\\_cluster\\_mode\\_enabled) | Whether to enable/disable creation of a native redis cluster. | `bool` | `false` | no |\n| \u003ca name=\"input_cluster_mode_num_node_groups\"\u003e\u003c/a\u003e [cluster\\_mode\\_num\\_node\\_groups](#input\\_cluster\\_mode\\_num\\_node\\_groups) | Number of node groups (shards) for this Redis replication group. | `number` | `0` | no |\n| \u003ca name=\"input_cluster_mode_replicas_per_node_group\"\u003e\u003c/a\u003e [cluster\\_mode\\_replicas\\_per\\_node\\_group](#input\\_cluster\\_mode\\_replicas\\_per\\_node\\_group) | Number of replica nodes in each node group. Valid values are between 0 to 5. | `number` | `0` | no |\n| \u003ca name=\"input_cw_sns_topic_arn\"\u003e\u003c/a\u003e [cw\\_sns\\_topic\\_arn](#input\\_cw\\_sns\\_topic\\_arn) | The username to use when sending notifications to Slack. | `string` | `\"\"` | no |\n| \u003ca name=\"input_engine_log_destination\"\u003e\u003c/a\u003e [engine\\_log\\_destination](#input\\_engine\\_log\\_destination) | The destination for engine logs(eg. Cloudwatch log-group name or kinesis firehose stream name) | `string` | `null` | no |\n| \u003ca name=\"input_engine_log_destination_type\"\u003e\u003c/a\u003e [engine\\_log\\_destination\\_type](#input\\_engine\\_log\\_destination\\_type) | The type of destination for engine logs(eg . cloudwatch-logs or kinesis-firehose) | `string` | `\"\"` | no |\n| \u003ca name=\"input_engine_log_format\"\u003e\u003c/a\u003e [engine\\_log\\_format](#input\\_engine\\_log\\_format) | the format for logs eg. json/text | `string` | `\"json\"` | no |\n| \u003ca name=\"input_engine_version\"\u003e\u003c/a\u003e [engine\\_version](#input\\_engine\\_version) | The redis engine version | `string` | `\"\"` | no |\n| \u003ca name=\"input_environment\"\u003e\u003c/a\u003e [environment](#input\\_environment) | The name of environment | `string` | `\"\"` | no |\n| \u003ca name=\"input_family\"\u003e\u003c/a\u003e [family](#input\\_family) | Redis family | `string` | `\"redis4.0\"` | no |\n| \u003ca name=\"input_final_snapshot_identifier\"\u003e\u003c/a\u003e [final\\_snapshot\\_identifier](#input\\_final\\_snapshot\\_identifier) | The name of your final node group (shard) snapshot. ElastiCache creates the snapshot from the primary node in the cluster. If omitted, no final snapshot will be made. | `string` | `null` | no |\n| \u003ca name=\"input_kms_key_arn\"\u003e\u003c/a\u003e [kms\\_key\\_arn](#input\\_kms\\_key\\_arn) | The ARN of the key that you wish to use if encrypting at rest. If not supplied, uses service managed encryption. Can be specified only if at\\_rest\\_encryption\\_enabled = true | `string` | `\"\"` | no |\n| \u003ca name=\"input_maintenance_window\"\u003e\u003c/a\u003e [maintenance\\_window](#input\\_maintenance\\_window) | 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 | `string` | `\"fri:08:00-fri:09:00\"` | no |\n| \u003ca name=\"input_multi_az_enabled\"\u003e\u003c/a\u003e [multi\\_az\\_enabled](#input\\_multi\\_az\\_enabled) | Enable multi az | `bool` | `false` | no |\n| \u003ca name=\"input_name\"\u003e\u003c/a\u003e [name](#input\\_name) | The name of the redis cluster | `string` | `\"\"` | no |\n| \u003ca name=\"input_node_type\"\u003e\u003c/a\u003e [node\\_type](#input\\_node\\_type) | The instance size of the redis cluster | `string` | `\"cache.t3.micro\"` | no |\n| \u003ca name=\"input_notification_topic_arn\"\u003e\u003c/a\u003e [notification\\_topic\\_arn](#input\\_notification\\_topic\\_arn) | (Optional) ARN of an SNS topic to send ElastiCache notifications | `string` | `null` | no |\n| \u003ca name=\"input_num_cache_nodes\"\u003e\u003c/a\u003e [num\\_cache\\_nodes](#input\\_num\\_cache\\_nodes) | The number of cache nodes | `number` | n/a | yes |\n| \u003ca name=\"input_ok_actions\"\u003e\u003c/a\u003e [ok\\_actions](#input\\_ok\\_actions) | The list of actions to execute when this alarm transitions into an OK state from any other state. Each action is specified as an Amazon Resource Number (ARN) | `list(string)` | `[]` | no |\n| \u003ca name=\"input_parameter\"\u003e\u003c/a\u003e [parameter](#input\\_parameter) | A list of Redis parameters to apply. It can be different based on mode slection. | \u003cpre\u003elist(object({\u003cbr/\u003e    name  = string\u003cbr/\u003e    value = string\u003cbr/\u003e  }))\u003c/pre\u003e | `[]` | no |\n| \u003ca name=\"input_parameter_group_description\"\u003e\u003c/a\u003e [parameter\\_group\\_description](#input\\_parameter\\_group\\_description) | Parameter group | `string` | `null` | no |\n| \u003ca name=\"input_port\"\u003e\u003c/a\u003e [port](#input\\_port) | The redis port | `number` | `6379` | no |\n| \u003ca name=\"input_recovery_window_aws_secret\"\u003e\u003c/a\u003e [recovery\\_window\\_aws\\_secret](#input\\_recovery\\_window\\_aws\\_secret) | Number of days that AWS Secrets Manager waits before it can delete the secret. This value can be 0 to force deletion without recovery or range from 7 to 30 days. | `number` | `0` | no |\n| \u003ca name=\"input_slack_channel\"\u003e\u003c/a\u003e [slack\\_channel](#input\\_slack\\_channel) | The Slack channel where notifications will be posted. | `string` | `\"\"` | no |\n| \u003ca name=\"input_slack_notification_enabled\"\u003e\u003c/a\u003e [slack\\_notification\\_enabled](#input\\_slack\\_notification\\_enabled) | Whether to enable/disable slack notification. | `bool` | `false` | no |\n| \u003ca name=\"input_slack_username\"\u003e\u003c/a\u003e [slack\\_username](#input\\_slack\\_username) | The username to use when sending notifications to Slack. | `string` | `\"\"` | no |\n| \u003ca name=\"input_slack_webhook_url\"\u003e\u003c/a\u003e [slack\\_webhook\\_url](#input\\_slack\\_webhook\\_url) | The Slack Webhook URL where notifications will be sent. | `string` | `\"\"` | no |\n| \u003ca name=\"input_slow_log_destination\"\u003e\u003c/a\u003e [slow\\_log\\_destination](#input\\_slow\\_log\\_destination) | The destination for slow logs(eg. Cloudwatch log-group name or kinesis firehose stream name.) | `string` | `null` | no |\n| \u003ca name=\"input_slow_log_destination_type\"\u003e\u003c/a\u003e [slow\\_log\\_destination\\_type](#input\\_slow\\_log\\_destination\\_type) | The type of destination for slow logs(eg . cloudwatch-logs or kinesis-firehose) | `string` | `\"\"` | no |\n| \u003ca name=\"input_slow_log_format\"\u003e\u003c/a\u003e [slow\\_log\\_format](#input\\_slow\\_log\\_format) | the format for logs eg. json/text | `string` | `\"json\"` | no |\n| \u003ca name=\"input_snapshot_arns\"\u003e\u003c/a\u003e [snapshot\\_arns](#input\\_snapshot\\_arns) | (Optional) A single-element string list containing an Amazon Resource Name (ARN) of a Redis RDB snapshot file stored in Amazon S3. Example: arn:aws:s3:::my\\_bucket/snapshot1.rdb . This will be used to add data to a fresh new instance. | `list(string)` | `[]` | no |\n| \u003ca name=\"input_snapshot_retention_limit\"\u003e\u003c/a\u003e [snapshot\\_retention\\_limit](#input\\_snapshot\\_retention\\_limit) | The number of days for which ElastiCache will retain automatic cache cluster snapshots before deleting them. For example, if you set SnapshotRetentionLimit to 5, then a snapshot that was taken today will be retained for 5 days before being deleted. If the value of SnapshotRetentionLimit is set to zero (0), backups are turned off. Please note that setting a snapshot\\_retention\\_limit is not supported on cache.t1.micro or cache.t2.* cache nodes | `number` | `7` | no |\n| \u003ca name=\"input_snapshot_window\"\u003e\u003c/a\u003e [snapshot\\_window](#input\\_snapshot\\_window) | The daily time range (in UTC) during which ElastiCache will begin taking a daily snapshot of your cache cluster. The minimum maintenance window is a 60 minute period. Example: 05:00-09:00 | `string` | `\"03:00-05:00\"` | no |\n| \u003ca name=\"input_subnets\"\u003e\u003c/a\u003e [subnets](#input\\_subnets) | The subnets where the redis cluster is deployed | `list(string)` | `[]` | no |\n| \u003ca name=\"input_transit_encryption_enabled\"\u003e\u003c/a\u003e [transit\\_encryption\\_enabled](#input\\_transit\\_encryption\\_enabled) | (Optional) Whether to enable encryption in transit | `bool` | `false` | no |\n| \u003ca name=\"input_vpc_id\"\u003e\u003c/a\u003e [vpc\\_id](#input\\_vpc\\_id) | The vpc where we will put the redis cluster | `string` | `\"\"` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_auth_token_password\"\u003e\u003c/a\u003e [auth\\_token\\_password](#output\\_auth\\_token\\_password) | Elasticache-redis auth token password(redis password may be old, because Terraform doesn't track it after initial creation) |\n| \u003ca name=\"output_cluster_address\"\u003e\u003c/a\u003e [cluster\\_address](#output\\_cluster\\_address) | (Memcached only) DNS name of the cache cluster without the port appended |\n| \u003ca name=\"output_cluster_arn\"\u003e\u003c/a\u003e [cluster\\_arn](#output\\_cluster\\_arn) | The ARN of the ElastiCache Cluster |\n| \u003ca name=\"output_cluster_cache_nodes\"\u003e\u003c/a\u003e [cluster\\_cache\\_nodes](#output\\_cluster\\_cache\\_nodes) | List of node objects including `id`, `address`, `port` and `availability_zone` |\n| \u003ca name=\"output_cluster_configuration_endpoint\"\u003e\u003c/a\u003e [cluster\\_configuration\\_endpoint](#output\\_cluster\\_configuration\\_endpoint) | (Memcached only) Configuration endpoint to allow host discovery |\n| \u003ca name=\"output_cluster_engine_version_actual\"\u003e\u003c/a\u003e [cluster\\_engine\\_version\\_actual](#output\\_cluster\\_engine\\_version\\_actual) | Because ElastiCache pulls the latest minor or patch for a version, this attribute returns the running version of the cache engine |\n| \u003ca name=\"output_elastic_cache_redis_cluster_id\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_cluster\\_id](#output\\_elastic\\_cache\\_redis\\_cluster\\_id) | ID of the elasticache-redis cluster |\n| \u003ca name=\"output_elastic_cache_redis_member_clusters\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_member\\_clusters](#output\\_elastic\\_cache\\_redis\\_member\\_clusters) | ID of the elasticache-redis cluster |\n| \u003ca name=\"output_elastic_cache_redis_port\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_port](#output\\_elastic\\_cache\\_redis\\_port) | Port number of Redis |\n| \u003ca name=\"output_elastic_cache_redis_primary_endpoint_address\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_primary\\_endpoint\\_address](#output\\_elastic\\_cache\\_redis\\_primary\\_endpoint\\_address) | Primary endpoint address of redis |\n| \u003ca name=\"output_elastic_cache_redis_security_group\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_security\\_group](#output\\_elastic\\_cache\\_redis\\_security\\_group) | The security group ID of the cluster |\n| \u003ca name=\"output_elastic_cache_redis_subnet_group_name\"\u003e\u003c/a\u003e [elastic\\_cache\\_redis\\_subnet\\_group\\_name](#output\\_elastic\\_cache\\_redis\\_subnet\\_group\\_name) | Subnet group name of the elasticache\\_redis cluster |\n| \u003ca name=\"output_reader_endpoint_address\"\u003e\u003c/a\u003e [reader\\_endpoint\\_address](#output\\_reader\\_endpoint\\_address) | The address of the endpoint for the reader node in the replication group, if the cluster mode is disabled. |\n\u003c!-- END OF PRE-COMMIT-TERRAFORM DOCS HOOK --\u003e\n\n## Contribute \u0026 Issue Report\n\nTo report an issue with a project:\n\n  1. Check the repository's [issue tracker](https://github.com/squareops/terraform-aws-elasticache-redis/issues) on GitHub\n  2. Search to check if the issue has already been reported\n  3. If you can't find an answer to your question in the documentation or issue tracker, you can ask a question by creating a new issue. Make sure to provide enough context and details.\n\n## License\n\nApache License, Version 2.0, January 2004 (https://www.apache.org/licenses/LICENSE-2.0)\n\n## Support Us\n\nTo support our GitHub project by liking it, you can follow these steps:\n\n  1. Visit the repository: Navigate to the [GitHub repository](https://github.com/squareops/terraform-aws-elasticache-redis)\n\n  2. Click the \"Star\" button: On the repository page, you'll see a \"Star\" button in the upper right corner. Clicking on it will star the repository, indicating your support for the project.\n\n  3. Optionally, you can also leave a comment on the repository or open an issue to give feedback or suggest changes.\n\nStaring a repository on GitHub is a simple way to show your support and appreciation for the project. It also helps to increase the visibility of the project and make it more discoverable to others.\n\n## Who we are\n\nWe believe that the key to success in the digital age is the ability to deliver value quickly and reliably. That’s why we offer a comprehensive range of DevOps \u0026 Cloud services designed to help your organization optimize its systems \u0026 Processes for speed and agility.\n\n  1. We are an AWS Advanced consulting partner which reflects our deep expertise in AWS Cloud and helping 100+ clients over the last 5 years.\n  2. Expertise in Kubernetes and overall container solution helps companies expedite their journey by 10X.\n  3. Infrastructure Automation is a key component to the success of our Clients and our Expertise helps deliver the same in the shortest time.\n  4. DevSecOps as a service to implement security within the overall DevOps process and helping companies deploy securely and at speed.\n  5. Platform engineering which supports scalable,Cost efficient infrastructure that supports rapid development, testing, and deployment.\n  6. 24*7 SRE service to help you Monitor the state of your infrastructure and eradicate any issue within the SLA.\n\nWe provide [support](https://squareops.com/contact-us/) on all of our projects, no matter how small or large they may be.\n\nTo find more information about our company, visit [squareops.com](https://squareops.com/), follow us on [Linkedin](https://www.linkedin.com/company/squareops-technologies-pvt-ltd/), or fill out a [job application](https://squareops.com/careers/). If you have any questions or would like assistance with your cloud strategy and implementation, please don't hesitate to [contact us](https://squareops.com/contact-us/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquareops%2Fterraform-aws-elasticache-redis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsquareops%2Fterraform-aws-elasticache-redis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsquareops%2Fterraform-aws-elasticache-redis/lists"}