Instance provisioning on a VPC network

This page lists the gcloud CLI commands needed to set up prerequisites, provision an instance, describe an instance, and delete an instance on a standard VPC network. For instructions on performing these tasks on a Shared VPC network, see Instance provisioning on a Shared VPC network. In order to accomplish these tasks you should follow the instructions in each section of this page.

For more detailed guidance for these tasks, see the following pages:

Enable APIs

Begin by enabling the APIs in this section. These APIs are needed because Memorystore for Redis Cluster uses Private Service Connect service connectivity automation to automate connectivity for instances. For more information, see Networking.

To enable the APIs, run the following commands:

gcloud

gcloud services enable --project=PROJECT_ID networkconnectivity.googleapis.com
gcloud services enable --project=PROJECT_ID compute.googleapis.com
gcloud services enable --project=PROJECT_ID serviceconsumermanagement.googleapis.com
gcloud services enable --project=PROJECT_ID redis.googleapis.com

Replace the following:

  • PROJECT_ID is your project ID.

Create a service connection policy

You must create a service connection policy for the project, network, and region where you want to provision the Memorystore for Redis Cluster instance. A service connection policy lets you authorize the gcp-memorystore-redis service class to create a Private Service Connect connection between producer and consumer VPC networks in the region where the policy is defined.

To see the permission needed to create a service connection policy, see required roles.

This walkthrough uses the default network and default subnet.

To create the service connection policy, run the following command:

gcloud

gcloud network-connectivity service-connection-policies create POLICY_NAME \
  --network=default \
  --project=PROJECT_ID \
  --region=REGION \
  --service-class=gcp-memorystore-redis \
  --subnets=https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/default

Replace the following:

  • POLICY_NAME is your desired policy name.
  • PROJECT_ID is the project ID.
  • REGION is the same region where you want to provision your Memorystore for Redis Cluster instance.

Validate service connection policy creation

Validate if the policy was created successfully by running the list command:

gcloud

gcloud network-connectivity service-connection-policies list --region=REGION --project=PROJECT_ID

Replace the following:

  • PROJECT_ID is the project ID.
  • REGION is the region where the service connection policy is defined.

Create an instance

To create an instance, run the create command:

gcloud

gcloud redis clusters create INSTANCE_ID \
--project=PROJECT_ID \
--region=REGION \
--node-type=NODE_TYPE \
--shard-count=SHARD_COUNT \
--replica-count=REPLICA_COUNT \
--network=projects/PROJECT_ID/global/networks/default

Replace the following:

  • INSTANCE_ID is the instance ID.
  • PROJECT_ID is the project ID.
  • REGION is the region where you want to provision your instance.

  • NODE_TYPE is your chosen node type. Accepted values are:

    • redis-shared-core-nano
    • redis-standard-small
    • redis-highmem-medium
    • redis-highmem-xlarge

    For more details on node types and cluster configurations, see Cluster and node specification.

  • SHARD_COUNT determines the number of shards in your instance. Shard count determines the total memory capacity for storing cluster data. To see more details about cluster specification, see Cluster and node specification.

  • REPLICA_COUNT is your desired number of read replicas (per shard). Accepted values are 0, 1, and 2.

Describe the instance

To view instance details, run the describe command:

gcloud

gcloud redis clusters describe INSTANCE_ID \
--project=PROJECT_ID \
--region=REGION

Replace the following:

  • INSTANCE_ID is the instance ID.
  • PROJECT_ID is the project ID.
  • REGION is the region where your instance is located.

Delete the instance

To delete an instance, run the delete command:

gcloud

gcloud redis clusters delete INSTANCE_ID \
--project=PROJECT_ID \
--region=REGION

Replace the following:

  • INSTANCE_ID is the instance ID.
  • PROJECT_ID is the project ID.
  • REGION is the region where your instance is located.