Módulo Terraform para criar clusters AWS MemoryDB for Redis seguindo o padrão de módulos internos RocketBus.
Adaptado de terraform-valkey .
module "memorydb" {
source = " git@github.com:RocketBus/terraform-memorydb.git?ref=v1.0.0"
project = var. project
app_env = var. app_env
aws_region = var. aws_region
tags = local. tags
}
Com SG existente e nome explícito
module "memorydb" {
source = " git@github.com:RocketBus/terraform-memorydb.git?ref=v1.0.0"
project = var. project
app_env = var. app_env
aws_region = var. aws_region
tags = local. tags
cluster_name = " gds-redis-use1"
node_type = " db.t4g.medium"
engine_version = " 7.1"
num_shards = 1
security_group_ids = [" sg-000185d0bcff5d7aa" ]
}
Diferenças em relação ao terraform-valkey
terraform-valkey
terraform-memorydb
Serviço AWS
ElastiCache
MemoryDB for Redis
Resource principal
aws_elasticache_replication_group
aws_memorydb_cluster
Node type prefix
cache.
db.
Persistência
Não (in-memory)
Sim (transaction log)
Endpoint
primary + configuration
cluster_endpoint
Cluster mode
configurável
sempre cluster
TLS
opcional
default true
Nome
Descrição
Tipo
Default
project
Nome do projeto
string
obrigatório
app_env
Ambiente (live/stg/dev/shared)
string
obrigatório
aws_region
Região AWS
string
obrigatório
cluster_name
Nome explícito do cluster
string
null (usa project-app_env)
node_type
Tipo do node
string
db.t4g.medium
engine_version
Versão Redis
string
7.1
num_shards
Número de shards
number
1
num_replicas_per_shard
Réplicas por shard
number
1
tls_enabled
Habilitar TLS
bool
true
acl_name
ACL do MemoryDB
string
open-access
security_group_ids
SGs existentes (null = cria próprio)
list(string)
null
allowed_cidrs
CIDRs permitidos (quando cria SG próprio)
list(string)
["10.0.0.0/8", "172.0.0.0/8"]
vpc_id
VPC ID (null = default da org)
string
null
tags
Tags
map(any)
{}
Nome
Descrição
cluster_name
Nome do cluster
arn
ARN do cluster
port
Porta
cluster_endpoint_address
Endpoint TLS do cluster
security_group_id
ID do SG criado (null se security_group_ids foi fornecido)