- v1.15 (última)
- v1.14
- v1.13
- Lista de versiones admitidas
- v1.12
- v1.11
- v1.10
- v1.9
- v1.8
- v1.7
- Versión 1.6
- v1.5
- Versión 1.4
- Versión 1.3
- v1.2
- v1.1
Versiones compatibles:
Versiones no compatibles:
En esta página se describe cómo programar copias de seguridad de Cassandra en Cloud Storage. En este método, las copias de seguridad se almacenan en el segmento de Cloud Storage especificado.
Para programar copias de seguridad de Cassandra, sigue estos pasos:
- Ejecuta el siguiente comando
create-service-account
para crear una cuenta de servicio (SA) de Google Cloud con el rol estándarroles/storage.objectAdmin
. Este rol de SA te permite escribir datos de copias de seguridad en Cloud Storage. Ejecuta el comando en el directorio$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/
../tools/create-service-account --env non-prod --dir ./
Este comando crea una cuenta de servicio llamada
apigee-non-prod
para usarla en entornos que no son de producción y coloca el archivo de claves descargado en el directorio./
.Para obtener más información sobre las cuentas de servicio de Google Cloud, consulta el artículo sobre cómo crear y gestionar cuentas de servicio.
- El comando
create-service-account
guarda un archivo JSON que contiene la clave privada de la cuenta de servicio. El archivo se guarda en el mismo directorio en el que se ejecuta el comando. Necesitarás la ruta a este archivo en los pasos siguientes. - Crea un segmento de Cloud Storage. Especifica una política de conservación de datos razonable para el segmento. Apigee recomienda una política de conservación de datos de 15 días.
- Abre el archivo
overrides.yaml
. - Añade las siguientes propiedades de
cassandra.backup
para habilitar la copia de seguridad. No elimine ninguna de las propiedades que ya estén configuradas.Parámetros
cassandra: ... backup: enabled: true serviceAccountPath: SA_JSON_FILE_PATH dbStorageBucket: CLOUD_STORAGE_BUCKET_NAME schedule: BACKUP_SCHEDULE_CODE cloudProvider: "GCP" # For remote server backup set this to HYBRID (all caps) ...
Ejemplo
... cassandra: storage: type: gcepd capacity: 50Gi gcepd: replicationType: regional-pd auth: default: password: "abc123" admin: password: "abc234" ddl: password: "abc345" dml: password: "abc456" nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-data backup: enabled: true serviceAccountPath: "my-cassandra-backup-sa.json" dbStorageBucket: "myname-cassandra-backup" schedule: "45 23 * * 6" cloudProvider: "GCP" ...
Donde:
- Aplica los cambios de configuración al nuevo clúster. Por ejemplo:
helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f OVERRIDES_FILE.yaml
Donde OVERRIDES_FILE es la ruta del archivo de anulaciones que acabas de editar.
- Verifica el trabajo de copia de seguridad. Por ejemplo:
kubectl get cronjob -n APIGEE_NAMESPACE
NAME SCHEDULE SUSPEND ACTIVE LAST SCHEDULE AGE apigee-cassandra-backup 33 * * * * False 0 <none> 94s
Propiedad | Descripción |
---|---|
backup:enabled |
La copia de seguridad está inhabilitada de forma predeterminada. Debe asignar el valor true a esta propiedad. |
backup:serviceAccountPath |
SA_JSON_FILE_PATH La ruta del archivo JSON de la cuenta de servicio en tu sistema de archivos. Este archivo se descargó cuando ejecutaste el comando La ruta debe ser relativa al directorio del gráfico apigee-datastore. Por ejemplo, |
backup:dbStorageBucket |
CLOUD_STORAGE_BUCKET_NAME Nombre de un segmento de Google Cloud Storage que se usará para almacenar archivos de copias de seguridad. Consulta Crear segmentos si necesitas crear uno. |
backup:cloudProvider |
Para una copia de seguridad de Cloud Storage, asigna el valor Para crear una copia de seguridad de un servidor remoto, asigna el valor |
backup:schedule |
BACKUP_SCHEDULE_CODE Hora en la que se inicia la copia de seguridad, especificada en la sintaxis estándar de crontab. Predeterminado: |
Iniciar una copia de seguridad manual
Las copias de seguridad de Cassandra se generan automáticamente según la programación cron definida en el archivo overrides.yaml
.
Para iniciar una copia de seguridad manual, usa este comando:
kubectl create job -n APIGEE_NAMESPACE --from=cronjob/apigee-cassandra-backup BACKUP_POD_NAME