Criar uma instância do cluster do Memorystore para Redis usando o Terraform
Este guia de início rápido pressupõe que você está começando um novo arquivo do Terraform e inclui o recurso do Terraform para configurar o provedor Google Cloud . No entanto, ele omite as etapas para autenticar seu arquivo do Terraform com o provedor Google Cloud .
Para instruções sobre como autenticar o Terraform com o provedor Google Cloud , consulte Primeiros passos com o provedor Google Cloud
Antes de começar
- 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.
- Instale o SDK Google Cloud, caso ainda não tenha feito isso.
Quando solicitado, escolha o projeto que você selecionou ou criou acima.
Se você já tiver o SDK Google Cloud instalado, atualize-o.
gcloud components update
-
Ativar a API do Memorystore para Redis Cluster
Memorystore para Redis Cluster A configuração do provedor Google Cloud .
Uma configuração de instância do Memorystore. Neste guia, é um cluster de 39 GB com três nós
redis-highmem-medium
na regiãous-central1
.Uma política de conexão de serviço do Private Service Connect.
Uma sub-rede para sua instância.
Uma rede para sua instância.
Adicione os seguintes recursos ao seu arquivo de configuração do 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 }
Substitua:
- PROJECT_ID é o ID do projeto da instância.
- CLUSTER_ID é o ID escolhido da instância do cluster do Memorystore para Redis que você está criando. O ID precisa ter de 1 a 63 caracteres e usar apenas letras minúsculas, números ou hifens. Ele precisa começar com uma letra minúscula e terminar com uma letra minúscula ou um número.
- POLICY_NAME é o nome escolhido para a política de conexão de serviço do Private Service Connect do seu projeto. Para mais informações sobre a política de conexão de serviço, consulte Rede.
- SUBNET_ID é o ID escolhido da sub-rede criada neste exemplo e usada pelo cluster do Memorystore.
- NETWORK_ID é o ID escolhido da rede criada neste exemplo e usada pelo cluster do Memorystore.
Execute
terraform init
.Execute
terraform plan
.Execute
terraform apply
.Se você ainda não tem uma VM do Compute Engine que usa a mesma rede autorizada que sua instância, crie uma e conecte-se a ela seguindo o Guia de início rápido sobre como usar uma VM do Linux.
Instale
telnet
usandoapt-get
:sudo apt-get install telnet
No terminal, use o telnet para o endereço IP da instância, substituindo VARIABLES pelos valores apropriados.
telnet CLUSTER_DISCOVERY_ENDPOINT_IP_ADDRESS CLUSTER_DISCOVERY_ENDPOINT_PORT_NUMBER
Na sessão telnet, digite alguns comandos do Redis:
Insira:
PING
Result:
PONG
- Remova o recurso
google_redis_instance
do arquivo de configuração do Terraform. - Execute o Terraform
init
,plan
eapply
para destruir o recurso Redis. - Exclua as VMs do Compute Engine que você criou para este guia de início rápido.
Configurar o Terraform para o Memorystore
Esta seção mostra exemplos de cinco recursos do Terraform necessários para criar uma instância do cluster do Memorystore para Redis:
As instruções para adicionar esses recursos do Terraform são as seguintes:
Implantar o arquivo de configuração do Terraform
Como se conectar à instância usando uma VM do Compute Engine
Em seguida, conecte-se à instância do cluster do Memorystore para Redis recém-criada.
É possível se conectar à instância de qualquer VM do Compute Engine que use a rede autorizada da instância.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste guia de início rápido, exclua a instância do Redis seguindo estas etapas:
Configurar o Terraform para criar várias redes VPC
As seções desta página mostram exemplos de como criar uma instância do cluster do Memorystore para Redis e configurar a conectividade em uma rede de nuvem privada virtual (VPC). Para encontrar instruções e exemplos de como usar o Terraform para configurar a conectividade em várias redes VPC, consulte a página google_redis_cluster_user_created_connections.
A seguir
- Saiba mais sobre Como criar instâncias.
- Saiba mais sobre alta disponibilidade e réplicas.
- Saiba mais sobre as práticas recomendadas para o cluster do Memorystore para Redis.