Crea una instancia de Memorystore para Redis con Terraform
Aprende a crear una instancia de Memorystore para Redis, conectarte a ella y, luego, borrarla.
En esta guía de inicio rápido, se usa el proveedor de Google Cloud Platform para Terraform.
Antes de comenzar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Si usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Memorystore for Redis API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Si usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Memorystore for Redis API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles. - Si aún no lo hiciste, instala el SDK de Google Cloud.
Cuando se te solicite, elige el proyecto que seleccionaste o creaste.
Si ya tienes instalado el SDK de Google Cloud, actualízalo.
gcloud components update
-
Habilita la API de Memorystore para Redis.
Memorystore para Redis - Tener un archivo de Terraform al que puedas agregar el recurso de Memorystore Para obtener instrucciones sobre cómo configurar Terraform con Google Cloud, consulta Comienza a usar el proveedor de Google Cloud.
-
Administrador de Cloud Memorystore para Redis (
roles/redis.admin) -
Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1) -
Usuario de cuenta de servicio (
roles/iam.serviceAccountUser)
Roles obligatorios
Para obtener los permisos que necesitas para crear una instancia de Memorystore para Redis, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto:
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.
Crea una instancia de Memorystore para Redis
En esta sección, crearás una instancia de Memorystore para Redis de 2 GB ubicada en la región us-central1 y en el nivel Básico. Para obtener más información sobre los niveles, consulta Funciones de los niveles de Redis.
Agrega el siguiente recurso al archivo de configuración de Terraform:
resource "google_redis_instance" "my_memorystore_redis_instance" { name = "myinstance" tier = "BASIC" memory_size_gb = 2 region = "us-central1" redis_version = "REDIS_6_X" }Agrega el siguiente valor de salida a tu archivo de configuración de Terraform para imprimir la dirección IP de la instancia. Necesitas esta dirección para conectarte a tu instancia.
output "host" { description = "The IP address of the instance." value = "${google_redis_instance.my_memorystore_redis_instance.host}" }Ejecuta el comando
terraform init.Ejecuta el comando
terraform plany, luego, revisa la instancia que se creará.Para crear la instancia, ejecuta el comando
terraform apply.
Conéctate a la instancia de Memorystore para Redis desde una VM de Compute Engine
Puedes conectarte a la instancia de Memorystore para Redis desde cualquier VM de Compute Engine que use la red autorizada de la instancia con una dirección IP RFC 1918 compatible.
Si no tienes una VM de Compute Engine que use la misma red autorizada que tu instancia, crea una y conéctate a ella con SSH. Para ello, sigue los pasos que se indican en Crea una instancia de VM de Linux en Compute Engine.
Usa
apt-getpara instalartelnet:sudo apt-get install telnetDesde la terminal, ejecuta telnet a la dirección IP de la instancia. Reemplaza VARIABLES por los valores adecuados.
telnet INSTANCE_IP_ADDRESS 6379
Si puedes conectarte a la instancia, el comando mostrará este resultado:
Trying INSTANCE_IP_ADDRESS… Connected to INSTANCE_IP_ADDRESS
En la sesión de telnet, ingresa algunos comandos de Redis:
Ingrese:
PING
Resultado:
PONG
Ingresa:
SET HELLO WORLD
Resultado:
+OK
Ingrese:
GET HELLO
Resultado:
$5 WORLD
Realiza una limpieza
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
- Quita el recurso
google_redis_instancede tu archivo de configuración de Terraform. - Para borrar el recurso, ejecuta los comandos
terraform init,terraform planyterraform apply. - Opcional. Si creaste una VM de Compute Engine para esta guía de inicio rápido, bórrala.
¿Qué sigue?
- Conoce más acerca de crear y administrar instancias.
- Conoce más acerca de otras maneras de conectar tu instancia de Redis.
- Conoce más acerca de las características de una instancia de Redis.