Find and set maintenance windows

Memorystore for Redis Cluster updates clusters routinely to ensure that the service is reliable, performant, secure, and up-to-date. These updates are called maintenance.

Maintenance is managed fully by the service and is designed to have a zero downtime impact. However, in addition to Memorystore for Redis Cluster performing maintenance on your clusters, you can customize maintenance schedules to align with your application's needs and to minimize disruptions. To customize your maintenance schedule, you can configure maintenance windows for your clusters.

This page provides instructions on how to complete the following tasks for customizing maintenance windows:

For an overview of maintenance updates and maintenance windows, see About maintenance.

Create a cluster with maintenance windows

You can create a cluster in Memorystore for Redis Cluster with maintenance windows by using the gcloud CLI.

gcloud

To create a cluster with maintenance windows, use the gcloud redis clusters create command:

gcloud redis clusters create CLUSTER_ID \
--project=PROJECT_ID \
--region=REGION_ID \
--network=NETWORK \
--replica-count=REPLICA_COUNT \
--node-type=NODE_TYPE \
--shard-count=SHARD_COUNT \
--maintenance-window-day=MAINTENANCE_WINDOW_DAY \
--maintenance-window-hour=MAINTENANCE_WINDOW_HOUR

Make the following replacements:

  • CLUSTER_ID: the ID of the cluster that you're creating. The cluster ID must be 1 to 63 characters and use only lowercase letters, numbers, or hyphens. It must start with a lowercase letter and end with a lowercase letter or number.

  • PROJECT_ID: the project ID or number of the Google Cloud project where you want to create the cluster.

  • REGION_ID: the region where you want the cluster to be located.

  • NETWORK: the network that you want to use to create the cluster. It must use this format: projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID. The NETWORK_ID that you use here must match the network ID that the service connection policy uses. Otherwise, you can't create the cluster.

  • REPLICA_COUNT: the number of replicas (per shard). Accepted values are 0-5.

  • NODE_TYPE: the node type for the cluster. Accepted values are:

    • redis-shared-core-nano
    • redis-standard-small
    • redis-highmem-medium
    • redis-highmem-xlarge
  • SHARD_COUNT: the number of shards in the cluster. The shard count determines the total memory capacity for storing cluster data. For more information about cluster specifications, see Cluster and node specification.

  • MAINTENANCE_WINDOW_DAY: the day that you want maintenance to occur. Acceptable values are MONDAY - SUNDAY.

  • MAINTENANCE_WINDOW_HOUR: the hour of the day (in UTC time) when the maintenance window starts. Acceptable values are 0 - 23.

For example:

gcloud memorystore redis clusters my-cluster \
--project=my-project \
--region=us-central1 \
--network=projects/my-network-project/global/networks/default \
--replica-count=2 \
--node-type=redis-highmem-medium \
--shard-count=8 \
--maintenance-window-day=MONDAY \
--maintenance-window-hour=9

By default, when you create a cluster with maintenance windows, in-transit encryption is deactivated and the authorized network is default.

Set a preferred window for maintenance

You can set a maintenance window for a cluster in Memorystore for Redis Cluster by using the gcloud CLI.

gcloud

To set a maintenance window for a cluster, use the gcloud redis clusters update command:

gcloud redis clusters update CLUSTER_ID \
--project=PROJECT_ID \
--region=REGION_ID \
--maintenance-window-day=DAY
--maintenance-window-hour=HOUR

Make the following replacements:

  • CLUSTER_ID: the ID of the cluster.
  • PROJECT_ID: the project ID or number of the Google Cloud project that contains the cluster.
  • REGION_ID: the region where the cluster is located.
  • DAY: the day that you want maintenance to occur. Acceptable values are
    MONDAY - SUNDAY.
  • HOUR: the hour of the day (in UTC time) when the maintenance window starts. Acceptable values are 0 - 23.

Turn on maintenance notifications

You can turn on maintenance notifications for a cluster in Memorystore for Redis Cluster by using the Google Cloud console.

  1. In the Google Cloud console, go to the Communication page.

    Communication

  2. Click Product Notifications.

  3. From the menu, select your Google Cloud project.

  4. In the row for Memorystore, toggle the email button to ON.

A maintenance notification email uses this title: "Upcoming maintenance for your Cloud Memorystore cluster [your-cluster-name]". Each email address that needs to receive notifications must opt in separately.

You set maintenance notifications at the project level rather than on clusters. Memorystore for Redis Cluster sends notifications to the email address associated with your Google Account. You can't configure a custom email alias (for example, a team email alias).

Find scheduled maintenance

If you schedule maintenance for a cluster in Memorystore for Redis Cluster, then you can view the maintenance by using the gcloud CLI.

gcloud

To find the scheduled maintenance for a cluster, use the gcloud redis clusters describe command.

gcloud redis clusters describe CLUSTER_ID \
--project=PROJECT_ID \
--region=REGION_ID

Make the following replacements:

  • CLUSTER_ID: the ID of the cluster
  • PROJECT_ID: the project ID or number of the Google Cloud project that contains the cluster
  • REGION_ID: the region where the cluster is located

The output for scheduled maintenance is as follows:

maintenancePolicy:
createTime: 'CREATE_DATE_AND_TIME_STAMP'
updateTime: 'UPDATE_DATE_AND_TIME_STAMP'
maintenanceWindow:
- day: DAY
  duration: 60 minutes
  hour: HOUR
maintenanceSchedule:
 endTime: 'END_DATE_AND_TIME_STAMP'
 startTime: 'START_DATE_AND_TIME_STAMP'

Where:

  • maintenancePolicy displays information about the creation time of the preferred maintenance policy and the last time the policy is updated.
    • CREATE_DATE_AND_TIME_STAMP is when the maintenance policy is first created.
    • UPDATE_DATE_AND_TIME_STAMP is when the maintenance policy is last updated.
  • maintenanceWindow displays information about the maintenance window for the cluster.
    • DAY is the day of the week when maintenance occurs.
    • HOUR is the hour (in UTC time) when maintenance begins.
  • maintenanceSchedule displays information about the scheduled maintenance for the cluster.
    • END_DATE_AND_TIME_STAMP indicates when a scheduled maintenance update ends for the cluster.
    • START_DATE_AND_TIME_STAMP indicates when a scheduled maintenance update begins for the cluster.

Reschedule maintenance

You can use the gcloud CLI to reschedule maintenance for a cluster in Memorystore for Redis Cluster. As a result, you can defer a maintenance update for up to two weeks from when the update is scheduled originally for the cluster.

gcloud

To reschedule maintenance for a cluster, use the gcloud redis clusters reschedule-maintenance command.

gcloud redis clusters reschedule-maintenance CLUSTER_ID \
--project=PROJECT_ID \
--region=REGION_ID \
--reschedule-type=RESCHEDULE_TYPE [--schedule-time=RESHEDULE_TIME]

Make the following replacements:

  • CLUSTER_ID: the ID of the cluster.
  • PROJECT_ID: the project ID or number of the Google Cloud project that contains the cluster.
  • REGION_ID: the region where the cluster is located.
  • RESCHEDULE_TYPE: the type of rescheduled update. Available values are:

    • IMMEDIATE: start the maintenance update immediately.
    • SPECIFIC_TIME: designate a specific time for the update. This time must be no more than 14 days from the time of the original maintenance window.
  • RESCHEDULE_TIME: the date and time when Memorystore for Redis Cluster reschedules the maintenance update.

What's next

  • View the permissions that you need to manage maintenance windows for a cluster in Memorystore for Redis Cluster.