. If the "Other Features" column for the provisioner contains the word "SNAPSHOT", then the storage class using the provisioner supports CSI snapshots.
Add these parameters in the storage group. Both values are required.
Once the CSI snapshot capability has been verified, modify the overrides file to use CSI backup and restore:
cloudProvider
in backup
and restore
to CSI
.overrides.yaml
file. cassandra:hostNetwork:falsereplicaCount:3storage:storageclass:standard-rwocapacity:100Giimage:pullPolicy:Alwaysbackup:enabled:trueimage:pullPolicy:AlwaysserviceAccountPath:"/Users/myuser/apigee-hybrid/hybrid-files/service-accounts/mycompany-hybrid-apigee-cassandra.json"cloudProvider:"CSI"schedule:"0 * * 11 *"
CSI backups generate automatically according to the cron schedule set in the overrides.yaml
file.
To initiate a manual CSI backup, use this command:
kubectl create job -n apigee --from=cronjob/apigee-cassandra-backup backup-pod-name
backup-pod-name
is the name of the backup pod that will be created. One way to verify a backup was successfully created is to check the volume snapshots on the Kubernetes cluster, using this command:
kubectl get volumesnapshot -n apigee
The output shows the current list of snapshots on the cluster. The CSI backup process creates a snapshot of each Cassandra disk. The number of generated snapshots should match the total number of cassandra pods in the cluster.
Use this process to restore a previously generated CSI backup. For general information on restoring backups and an overview of the process, see the restore overview page.
To initiate a restore of a CSI backup, follow the instructions for the hybrid non-CSI single region restore, but use these values in the restore
block in your overrides.yaml
. See the backup properties reference table for more information about each value and the example restore configuration for an example.
true
to enable restore for the backup referenced with the snapshotTimestamp
timestamp.Always
.To find the snapshotTimestamp
value to restore, run this command to get the list of available snapshots:
kubectl get volumesnapshot -n apigee
pvc-us-west2-b-20220803004907-47beff0e306d8861
20220803004907
. overrides.yaml
file. cassandra:hostNetwork:falsereplicaCount:3storage:storageclass:standard-rwocapacity:100Giimage:pullPolicy:Alwaysrestore:enabled:truesnapshotTimestamp:"20220908222130"serviceAccountPath:"/Users/myuser/apigee-hybrid/hybrid-files/service-accounts/mycompany-hybrid-apigee-cassandra.json"cloudProvider:"CSI"image:pullPolicy:Always
If you have not previously used hybrid backup and restore, you can follow the instructions in Set up CSI backups to create a new CSI backups without the steps in this section. These steps guide you through migrating from the non-CSI backup and restore solution to CSI backups.
overrides.yaml
file to use the CSI backup overrides as shown in the example backup config.overrides.yaml
file:$APIGEECTL_HOME/apigeectl apply -f YOUR_OVERRIDES_FILE
kubectl get cronjob -n apigee
kubectl get volumesnapshot -n apigee
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-04-24 UTC.