Cette page explique comment restaurer Cassandra dans une seule région.
Dans un déploiement n'impliquant qu'une seule région, Apigee hybrid est déployé dans un centre de données ou une région. Si votre déploiement comporte plusieurs organisations Apigee, le processus de restauration restaure les données de toutes les organisations. Dans une configuration comportant plusieurs organisations, vous ne pouvez pas restaurer une organisation spécifique.
Restaurer une région à partir d'une sauvegarde
-
Mettez à jour les détails de restauration Cassandra dans le fichier
overrides.yaml
:namespace: YOUR_RESTORE_NAMESPACE # Use the same namespace as in your original cluster. cassandra: hostNetwork: false ... restore: enabled: true serviceAccountPath: "SA_JSON_FILE_PATH" dbStorageBucket: "CLOUD_STORAGE_BUCKET_NAME" cloudProvider: "GCP" # required verbatim "GCP" (all caps) snapshotTimestamp: "TIMESTAMP" ... backup: enabled: false ...
Où :
Propriété Description namespace
YOUR_RESTORE_NAMESPACE
Espace de noms à restaurer. Utilisez l'espace de noms de votre cluster d'origine.
cassandra:hostNetwork
hostNetwork
est obligatoire et doit toujours être défini surfalse
.restore:enabled
La restauration est désactivée par défaut. Vous devez définir cette propriété sur true
.restore:serviceAccountPath
SA_JSON_FILE_PATH
Le chemin d'accès, sur votre système de fichiers, au compte de service que vous avez créé pour la sauvegarde.
restore:dbStorageBucket
CLOUD_STORAGE_BUCKET_NAME
Nom d'un bucket Google Cloud Storage qui stocke les archives de sauvegarde à utiliser pour la restauration de données.
restore:cloudProvider
GCP
La propriété
cloudProvider: "GCP"
est obligatoire.restore:snapshotTimestamp
TIMESTAMP
Horodatage de l'instantané de sauvegarde à restaurer. Pour vérifier quels horodatages peuvent être utilisés, accédez à
dbStorageBucket
et examinez les fichiers présents dans le bucket. Chaque nom de fichier contient une valeur d'horodatage. Exemple :backup_20210203213003_apigee-cassandra-default-0.tgz
Où 20210203213003 correspond à la valeur
snapshotTimestamp
que vous utiliseriez si vous souhaitiez restaurer les sauvegardes créées à ce moment-là.backup:enabled
Vous devez définir cette propriété sur false
si elle a déjà été définie surtrue
. -
Si vous n'avez pas de cluster propre pour commencer, suivez la documentation Mettre hors service une région hybride pour Helm afin de rétablir l'état propre de votre installation hybride existante (vous pouvez laisser Cert Manager installé). Vous obtenez ainsi un état identique à celui que vous auriez utilisé pour suivre le manuel de configuration de l'environnement d'exécution Helm jusqu'au début de l'étape 11.
-
Vérifiez qu'il ne reste aucun pod dans les espaces de noms Apigee :
kubectl get pods -n APIGEE_NAMESPACE
-
Si vous utilisez la sauvegarde CSI, assurez-vous que vous pouvez afficher les instantanés de volume que vous souhaitez utiliser pour le processus de restauration en exécutant la commande suivante:
kubectl get volumesnapshot -n APIGEE_NAMESPACE
-
Installez tous les composants hybrides un par un, comme décrit à l'Étape 10 : Installer Apigee hybrid à l'aide de Helm. Notez que le pod
apigee-cassandra-restore
est créé une fois que vous avez exécuté la commande permettant d'installerdatastore
, mais il ne passe à l'étatrunning
qu'après l'installation du composantapigee-org
.
Pour en savoir plus sur la sauvegarde et la restauration Cassandra, consultez la page Présentation de la sauvegarde Cassandra.
Vérifiez la progression du job de restauration et vérifiez que apigeeds
et tous les autres pods sont opérationnels :
- Vérifiez
apigeeds
:kubectl get apigeeds -n APIGEE_NAMESPACE
- Vérifiez tous les autres pods :
kubectl get pods -n APIGEE_NAMESPACE
Une fois la restauration terminée et la confirmation que les composants d'exécution sont opérationnels, nous vous recommandons de configurer une sauvegarde sur le cluster :
- Supprimez la configuration
restore
du fichieroverrides-restore.yaml
. - Ajoutez la configuration
backup
au fichieroverrides-restore.yaml
. - Appliquez la configuration
backup
à l'aide de la commande suivante :helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides-restore.yaml