Memorystore for Redis Cluster-Instanz mit Terraform erstellen

In dieser Kurzanleitung wird beschrieben, wie Sie mit Terraform eine neue Memorystore for Redis-Clusterinstanz erstellen. Außerdem erfahren Sie, wie Sie mithilfe von Telnet eine Verbindung zur Instanz herstellen.

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

  1. 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.
  2. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. 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 the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. 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.

  7. Wenn Sie das Google Cloud SDK bereits installiert haben, aktualisieren Sie es.

    gcloud components update
  8. Aktivieren Sie die Memorystore for Redis Cluster API
    Memorystore for Redis Cluster
  9. 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:

    1. 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.

    Terraform-Konfigurationsdatei bereitstellen

    1. Führen Sie terraform init aus.

    2. Führen Sie terraform plan aus.

    3. Führen Sie terraform apply aus.

    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.

    1. 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.

    2. Installieren Sie telnet mit apt-get:

      sudo apt-get install telnet
      
    3. 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
      
    4. Geben Sie in der Telnet-Sitzung einige Redis-Befehle ein:

      Geben Sie Folgendes ein:

      PING
      

      Ergebnis:

      PONG
      

    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:

    1. Entfernen Sie die Ressource google_redis_instance aus der Terraform-Konfigurationsdatei.
    2. Führen Sie Terraform init, plan und apply aus, um die Redis-Ressource zu löschen.
    3. Löschen Sie alle Compute Engine-VMs, die Sie für diese Kurzanleitung erstellt haben.

    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.

Nächste Schritte