Memorystore for Redis Cluster-Instanz mit Terraform erstellen
In dieser Kurzanleitung wird davon ausgegangen, dass Sie eine neue Terraform-Datei erstellen. Sie enthält die Terraform-Ressource zum Einrichten des Google Cloud -Anbieters. Die Schritte zum Authentifizieren Ihrer Terraform-Datei mit dem Google Cloud -Anbieter werden jedoch ausgelassen.
Eine Anleitung zum Authentifizieren von Terraform mit dem Google Cloud -Anbieter finden Sie unter Erste Schritte mit dem Google Cloud -Anbieter.
Hinweise
- 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.
- Installieren Sie das Google Cloud SDK, falls noch nicht geschehen.
Wählen Sie bei Aufforderung das Projekt aus, das Sie oben ausgewählt bzw. erstellt haben.
Wenn Sie das Google Cloud SDK bereits installiert haben, aktualisieren Sie es.
gcloud components update
-
Aktivieren Sie die Memorystore for Redis Cluster API
Memorystore for Redis Cluster Die Google Cloud Anbieterkonfiguration.
Eine Memorystore-Instanzkonfiguration. In dieser Anleitung ist es ein 39 GB-Cluster mit drei
redis-highmem-medium
-Knoten in der Regionus-central1
.Ein Subnetz für Ihre Instanz.
Ein Netzwerk für Ihre Instanz.
Fügen Sie Ihrer Terraform-Konfigurationsdatei die folgenden Ressourcen hinzu:
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 }
Ersetzen Sie Folgendes:
- PROJECT_ID ist die Projekt-ID Ihrer Instanz.
- CLUSTER_ID ist die von Ihnen ausgewählte ID der Memorystore for Redis-Clusterinstanz, die Sie erstellen. Die ID muss 1 bis 63 Zeichen lang sein und darf nur Kleinbuchstaben, Ziffern oder Bindestriche enthalten. Er muss mit einem Kleinbuchstaben beginnen und mit einem Kleinbuchstaben oder einer Ziffer enden.
- POLICY_NAME ist der Name, den Sie für die Richtlinie für Private Service Connect-Dienstverbindungen für Ihr Projekt ausgewählt haben. Weitere Informationen zur Richtlinie für Dienstverbindungen finden Sie unter Netzwerk.
- SUBNET_ID ist die von Ihnen ausgewählte ID des in diesem Beispiel erstellten Subnetzes, das vom Memorystore-Cluster verwendet wird.
- NETWORK_ID ist die von Ihnen ausgewählte ID des in diesem Beispiel erstellten Netzwerks, das vom Memorystore-Cluster verwendet wird.
Führen Sie
terraform init
aus.Führen Sie
terraform plan
aus.Führen Sie
terraform apply
aus.Wenn Sie noch keine Compute Engine-VM haben, die dasselbe autorisierte Netzwerk wie Ihre Instanz verwendet, erstellen Sie eine VM und stellen Sie eine Verbindung zu ihr her: Folgen Sie dazu der Kurzanleitung: Linux-VM verwenden.
Installieren Sie
telnet
mitapt-get
:sudo apt-get install telnet
Stellen Sie über das Terminal eine Telnet-Verbindung zur IP-Adresse der Instanz her und ersetzen Sie VARIABLES durch die entsprechenden Werte.
telnet CLUSTER_DISCOVERY_ENDPOINT_IP_ADDRESS CLUSTER_DISCOVERY_ENDPOINT_PORT_NUMBER
Geben Sie in der Telnet-Sitzung einige Redis-Befehle ein:
Geben Sie Folgendes ein:
PING
Ergebnis:
PONG
- Entfernen Sie die Ressource
google_redis_instance
aus der Terraform-Konfigurationsdatei. - Führen Sie Terraform
init
,plan
undapply
aus, um die Redis-Ressource zu löschen. - Löschen Sie alle Compute Engine-VMs, die Sie für diese Kurzanleitung erstellt haben.
Terraform für Memorystore konfigurieren
In diesem Abschnitt finden Sie Beispiele für fünf Terraform-Ressourcen, die zum Erstellen einer Memorystore for Redis-Clusterinstanz erforderlich sind:
So fügen Sie diese Terraform-Ressourcen hinzu:
Terraform-Konfigurationsdatei bereitstellen
Verbindung zur Instanz über eine Compute Engine-VM herstellen
Stellen Sie als Nächstes eine Verbindung zur neu erstellten Memorystore for Redis-Clusterinstanz her.
Sie können eine Verbindung zur Instanz über eine Compute Engine-VM herstellen, die das autorisierte Netzwerk der Instanz verwendet.
Bereinigen
Löschen Sie die Redis-Instanz so, um zu vermeiden, dass Ihrem Google Cloud -Konto die in dieser Kurzanleitung verwendeten Ressourcen in Rechnung gestellt werden:
Terraform zum Einrichten mehrerer VPC-Netzwerke konfigurieren
In den Abschnitten auf dieser Seite finden Sie Beispiele für das Erstellen einer Memorystore for Redis Cluster-Instanz und das Einrichten der Verbindung in einem VPC-Netzwerk (Virtual Private Cloud). Eine Anleitung und Beispiele für die Verwendung von Terraform zum Einrichten von Verbindungen in mehreren VPC-Netzwerken finden Sie auf der Seite google_redis_cluster_user_created_connections.