Crea una instancia de Memorystore for Redis Cluster con Terraform
En esta guía de inicio rápido, se supone que comenzarás un archivo de Terraform nuevo y se incluye el recurso de Terraform para configurar el proveedor Google Cloud . Sin embargo, omite los pasos para autenticar tu archivo de Terraform con el proveedor Google Cloud .
Para obtener instrucciones sobre cómo autenticar Terraform con el proveedor de Google Cloud , consulta Comienza a usar el proveedor de Google Cloud .
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
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
- Si aún no lo hiciste, instala el SDK de Google Cloud.
Cuando se te solicite, elige el proyecto que seleccionaste o creaste anteriormente.
Si ya tienes instalado el SDK de Google Cloud, actualízalo.
gcloud components update
-
Habilita la API de Memorystore for Redis Cluster.
Memorystore for Redis Cluster Es la configuración del proveedor Google Cloud .
Es la configuración de una instancia de Memorystore. En esta guía, es un clúster de 39 GB con tres nodos
redis-highmem-medium
en la regiónus-central1
.Una política de conexión de servicio de Private Service Connect
Una subred para tu instancia
Una red para tu instancia.
Agrega los siguientes recursos al archivo de configuración de Terraform:
provider "google" { project = "PROJECT_ID" } resource "google_redis_cluster" "cluster-ha" { name = "CLUSTER_ID" shard_count = 3 psc_configs { network = google_compute_network.producer_net.id } region = "us-central1" replica_count = 1 depends_on = [ google_network_connectivity_service_connection_policy.default ] } resource "google_network_connectivity_service_connection_policy" "default" { name = "POLICY_NAME" location = "us-central1" service_class = "gcp-memorystore-redis" description = "my basic service connection policy" network = google_compute_network.producer_net.id psc_config { subnetworks = [google_compute_subnetwork.producer_subnet.id] } } resource "google_compute_subnetwork" "producer_subnet" { name = "SUBNET_ID" ip_cidr_range = "10.0.0.248/29" region = "us-central1" network = google_compute_network.producer_net.id } resource "google_compute_network" "producer_net" { name = "NETWORK_ID" auto_create_subnetworks = false }
Reemplaza lo siguiente:
- PROJECT_ID es el ID del proyecto de tu instancia.
- CLUSTER_ID es el ID que elegiste para la instancia de Memorystore para Redis Cluster que estás creando. El ID debe tener entre 1 y 63 caracteres, y solo debe usar letras en minúscula, números o guiones. Debe comenzar con una letra minúscula y terminar con una letra minúscula o un número.
- POLICY_NAME es el nombre que elegiste para la política de conexión de servicio de Private Service Connect de tu proyecto. Para obtener más información sobre la política de conexión de servicio, consulta Herramientas de redes.
- SUBNET_ID es el ID que elegiste para la subred creada en este ejemplo y que usa el clúster de Memorystore.
- NETWORK_ID es el ID que elegiste para la red creada en este ejemplo y que usa el clúster de Memorystore.
Ejecuta
terraform init
.Ejecuta
terraform plan
.Ejecuta
terraform apply
.Si aún no tienes una VM de Compute Engine que use la misma red autorizada que tu instancia, crea una y conéctate a ella siguiendo la Guía de inicio rápido sobre el uso de una VM de Linux.
Instala
telnet
medianteapt-get
:sudo apt-get install telnet
Desde la terminal, ejecuta telnet a la dirección IP de la instancia y reemplaza VARIABLES por los valores adecuados.
telnet CLUSTER_DISCOVERY_ENDPOINT_IP_ADDRESS CLUSTER_DISCOVERY_ENDPOINT_PORT_NUMBER
En la sesión de telnet, ingresa algunos comandos de Redis:
Ingrese:
PING
Resultado:
PONG
- Quita el recurso
google_redis_instance
de tu archivo de configuración de Terraform. - Ejecuta Terraform
init
,plan
yapply
para destruir el recurso de Redis. - Borra las VMs de Compute Engine que creaste para esta guía de inicio rápido.
Configura Terraform para Memorystore
En esta sección, se muestran ejemplos de cinco recursos de Terraform necesarios para crear una instancia de Memorystore para Redis Cluster:
Las instrucciones para agregar estos recursos de Terraform son las siguientes:
Implementa el archivo de configuración de Terraform
Conéctate a la instancia desde una VM de Compute Engine
A continuación, conéctate a la instancia de Memorystore for Redis Cluster recién creada.
Puedes conectarte a la instancia desde cualquier VM de Compute Engine que use la red autorizada de la instancia.
Limpia
Para evitar que se apliquen cargos a tu Google Cloud cuenta por los recursos que usaste en esta guía de inicio rápido, borra la instancia de Redis siguiendo estos pasos:
Configura Terraform para establecer varias redes de VPC
En las secciones de esta página, se muestran ejemplos de cómo crear una instancia de Memorystore para Redis Cluster y configurar la conectividad en una red de nube privada virtual (VPC). Para encontrar instrucciones y ejemplos sobre cómo usar Terraform para configurar la conectividad en varias redes de VPC, consulta la página google_redis_cluster_user_created_connections.
¿Qué sigue?
- Obtén más información para crear instancias.
- Obtén más información sobre la alta disponibilidad y las réplicas.
- Obtén más información sobre las prácticas recomendadas para el clúster de Memorystore para Redis.