Proteja las aplicaciones con Trident Protect
Puede proteger todas las aplicaciones administradas por Trident Protect tomando instantáneas y copias de seguridad mediante una política de protección automatizada o de forma ad hoc.
|
|
Puede configurar Trident Protect para congelar y descongelar sistemas de archivos durante operaciones de protección de datos. "Obtenga más información sobre cómo configurar la congelación del sistema de archivos con Trident Protect". |
Crea una instantánea bajo demanda
Puedes crear una instantánea bajo demanda en cualquier momento.
|
|
Los recursos con ámbito de clúster se incluyen en una copia de seguridad, instantánea o clon si se hace referencia a ellos explícitamente en la definición de la aplicación o si tienen referencias a cualquiera de los espacios de nombres de la aplicación. |
-
Crea el archivo de recursos personalizados (CR) y nómbralo.
trident-protect-snapshot-cr.yaml. -
En el archivo que creó, configure los siguientes atributos:
-
metadata.name: (Obligatorio) El nombre de este recurso personalizado; elija un nombre único y adecuado para su entorno.
-
spec.applicationRef: El nombre de Kubernetes de la aplicación a la que se va a crear una instantánea.
-
spec.appVaultRef: (Obligatorio) El nombre del AppVault donde se deben almacenar los contenidos de la instantánea (metadatos).
-
spec.reclaimPolicy: (Opcional) Define qué sucede con el AppArchive de una instantánea cuando se elimina el CR de la instantánea. Esto significa que incluso cuando se configura para
RetainLa instantánea será eliminada. Opciones válidas:-
Retain(por defecto) -
Delete--- apiVersion: protect.trident.netapp.io/v1 kind: Snapshot metadata: namespace: my-app-namespace name: my-cr-name spec: applicationRef: my-application appVaultRef: appvault-name reclaimPolicy: Delete
-
-
-
Después de rellenar el
trident-protect-snapshot-cr.yamlArchivo con los valores correctos, aplicar el CR:kubectl apply -f trident-protect-snapshot-cr.yaml
-
Crea la instantánea, reemplazando los valores entre corchetes con información de tu entorno. Por ejemplo:
tridentctl-protect create snapshot <my_snapshot_name> --appvault <my_appvault_name> --app <name_of_app_to_snapshot> -n <application_namespace>
Crea una copia de seguridad bajo demanda
Puedes realizar una copia de seguridad de una aplicación en cualquier momento.
|
|
Los recursos con ámbito de clúster se incluyen en una copia de seguridad, instantánea o clon si se hace referencia a ellos explícitamente en la definición de la aplicación o si tienen referencias a cualquiera de los espacios de nombres de la aplicación. |
Asegúrese de que la expiración del token de sesión de AWS sea suficiente para cualquier operación de copia de seguridad de S3 de larga duración. Si el token caduca durante la operación de copia de seguridad, la operación puede fallar.
-
Consulte el "Documentación de AWS API" Para obtener más información sobre cómo comprobar la caducidad del token de sesión actual.
-
Consulte el "Documentación de AWS IAM" Para obtener más información sobre las credenciales con los recursos de AWS.
-
Crea el archivo de recursos personalizados (CR) y nómbralo.
trident-protect-backup-cr.yaml. -
En el archivo que creó, configure los siguientes atributos:
-
metadata.name: (Obligatorio) El nombre de este recurso personalizado; elija un nombre único y adecuado para su entorno.
-
spec.applicationRef: (Obligatorio) El nombre de Kubernetes de la aplicación de la que se hará la copia de seguridad.
-
spec.appVaultRef: (Obligatorio) El nombre del AppVault donde se debe almacenar el contenido de la copia de seguridad.
-
spec.dataMover: (Opcional) Una cadena que indica qué herramienta de copia de seguridad se utilizará para la operación de copia de seguridad. Valores posibles (distingue entre mayúsculas y minúsculas):
-
Restic -
Kopia(por defecto)
-
-
spec.reclaimPolicy: (Opcional) Define qué sucede con una copia de seguridad cuando se libera de su reclamación. Valores posibles:
-
Delete -
Retain(por defecto)
-
-
spec.snapshotRef: (Opcional): Nombre de la instantánea que se utilizará como origen de la copia de seguridad. Si no se proporciona, se creará y copiará una instantánea temporal.
-
metadata.annotations.protect.trident.netapp.io/full-backup : (Opcional) Esta anotación se utiliza para especificar si una copia de seguridad no debe ser incremental. De forma predeterminada, todas las copias de seguridad son incrementales. Sin embargo, si esta anotación está configurada para
true, la copia de seguridad deja de ser incremental. Si no se especifica, la copia de seguridad sigue la configuración de copia de seguridad incremental predeterminada. La mejor práctica es realizar una copia de seguridad completa periódicamente y luego realizar copias de seguridad incrementales entre las copias de seguridad completas para minimizar el riesgo asociado con las restauraciones.Ejemplo de YAML:
--- apiVersion: protect.trident.netapp.io/v1 kind: Backup metadata: namespace: my-app-namespace name: my-cr-name annotations: protect.trident.netapp.io/full-backup: "true" spec: applicationRef: my-application appVaultRef: appvault-name dataMover: Kopia -
-
Después de rellenar el
trident-protect-backup-cr.yamlArchivo con los valores correctos, aplicar el CR:kubectl apply -f trident-protect-backup-cr.yaml
-
Crea la copia de seguridad, reemplazando los valores entre corchetes con información de tu entorno. Por ejemplo:
tridentctl-protect create backup <my_backup_name> --appvault <my-vault-name> --app <name_of_app_to_back_up> --data-mover <Kopia_or_Restic> -n <application_namespace>Opcionalmente, puede utilizar el
--full-backupBandera para especificar si una copia de seguridad debe ser no incremental. De forma predeterminada, todas las copias de seguridad son incrementales. Cuando se utiliza esta bandera, la copia de seguridad deja de ser incremental. La mejor práctica es realizar una copia de seguridad completa periódicamente y luego realizar copias de seguridad incrementales entre las copias de seguridad completas para minimizar el riesgo asociado con las restauraciones.
Crea un calendario de protección de datos.
Una política de protección protege una aplicación mediante la creación de instantáneas, copias de seguridad o ambas según un cronograma definido. Puede elegir crear instantáneas y copias de seguridad cada hora, día, semana o mes, y puede especificar la cantidad de copias que desea conservar. Puede programar una copia de seguridad completa no incremental mediante la anotación full-backup-rule. De forma predeterminada, todas las copias de seguridad son incrementales. Realizar una copia de seguridad completa periódicamente, junto con copias de seguridad incrementales entre ellas, ayuda a reducir el riesgo asociado con las restauraciones.
|
|
|
-
Crea el archivo de recursos personalizados (CR) y nómbralo.
trident-protect-schedule-cr.yaml. -
En el archivo que creó, configure los siguientes atributos:
-
metadata.name: (Obligatorio) El nombre de este recurso personalizado; elija un nombre único y adecuado para su entorno.
-
spec.dataMover: (Opcional) Una cadena que indica qué herramienta de copia de seguridad se utilizará para la operación de copia de seguridad. Valores posibles (distingue entre mayúsculas y minúsculas):
-
Restic -
Kopia(por defecto)
-
-
spec.applicationRef: El nombre de Kubernetes de la aplicación de la que se realizará la copia de seguridad.
-
spec.appVaultRef: (Obligatorio) El nombre del AppVault donde se debe almacenar el contenido de la copia de seguridad.
-
spec.backupRetention: La cantidad de copias de seguridad que se conservarán. Cero indica que no se deben crear copias de seguridad (solo instantáneas).
-
spec.snapshotRetention: El número de instantáneas que se conservarán. El valor cero indica que no se deben crear instantáneas.
-
spec.granularity: La frecuencia con la que debe ejecutarse la programación. Valores posibles, junto con los campos asociados obligatorios:
-
Hourly(requiere que especifiquespec.minute) -
Daily(requiere que especifiquespec.minuteyspec.hour) -
Weekly(requiere que especifiquespec.minute, spec.hour, yspec.dayOfWeek) -
Monthly(requiere que especifiquespec.minute, spec.hour, yspec.dayOfMonth) -
Custom
-
-
spec.dayOfMonth: (Opcional) El día del mes (1 - 31) en que debe ejecutarse la programación. Este campo es obligatorio si la granularidad está configurada en
Monthly. El valor debe proporcionarse como una cadena. -
spec.dayOfWeek: (Opcional) El día de la semana (0 - 7) en que debe ejecutarse la programación. Los valores de 0 o 7 indican domingo. Este campo es obligatorio si la granularidad está configurada en
Weekly. El valor debe proporcionarse como una cadena. -
spec.hour: (Opcional) La hora del día (0 - 23) en que debe ejecutarse el programa. Este campo es obligatorio si la granularidad está configurada en
Daily,Weekly, oMonthly. El valor debe proporcionarse como una cadena. -
spec.minute: (Opcional) El minuto de la hora (0 - 59) en que debe ejecutarse el programa. Este campo es obligatorio si la granularidad está configurada en
Hourly,Daily,Weekly, oMonthly. El valor debe proporcionarse como una cadena. -
metadata.annotations.protect.trident.netapp.io/full-backup-rule: (Opcional) Esta anotación se utiliza para especificar la regla para programar la copia de seguridad completa. Puedes configurarlo para
alwayspara copias de seguridad completas constantes o personalícelo según sus necesidades. Por ejemplo, si elige una granularidad diaria, puede especificar los días de la semana en los que se debe realizar la copia de seguridad completa.Ejemplo de YAML para programación de copias de seguridad y instantáneas:
--- apiVersion: protect.trident.netapp.io/v1 kind: Schedule metadata: namespace: my-app-namespace name: my-cr-name annotations: protect.trident.netapp.io/full-backup-rule: "Monday,Thursday" spec: dataMover: Kopia applicationRef: my-application appVaultRef: appvault-name backupRetention: "15" snapshotRetention: "15" granularity: Daily hour: "0" minute: "0"Ejemplo de YAML para una programación de solo instantáneas:
--- apiVersion: protect.trident.netapp.io/v1 kind: Schedule metadata: namespace: my-app-namespace name: my-snapshot-schedule spec: applicationRef: my-application appVaultRef: appvault-name backupRetention: "0" snapshotRetention: "15" granularity: Daily hour: "2" minute: "0" -
-
Después de rellenar el
trident-protect-schedule-cr.yamlArchivo con los valores correctos, aplicar el CR:kubectl apply -f trident-protect-schedule-cr.yaml
-
Cree el plan de protección, reemplazando los valores entre paréntesis con información de su entorno. Por ejemplo:
Puedes utilizar tridentctl-protect create schedule --helpPara ver información de ayuda detallada sobre este comando.tridentctl-protect create schedule <my_schedule_name> --appvault <my_appvault_name> --app <name_of_app_to_snapshot> --backup-retention <how_many_backups_to_retain> --data-mover <Kopia_or_Restic> --day-of-month <day_of_month_to_run_schedule> --day-of-week <day_of_month_to_run_schedule> --granularity <frequency_to_run> --hour <hour_of_day_to_run> --minute <minute_of_hour_to_run> --recurrence-rule <recurrence> --snapshot-retention <how_many_snapshots_to_retain> -n <application_namespace> --full-backup-rule <string>Puedes configurarlo
--full-backup-rulebandera aalwayspara copias de seguridad completas constantes o personalícelo según sus necesidades. Por ejemplo, si elige una granularidad diaria, puede especificar los días de la semana en los que debe realizarse la copia de seguridad completa. Por ejemplo, utilice--full-backup-rule "Monday,Thursday"Programar copias de seguridad completas los lunes y jueves.Para programaciones solo con instantáneas, configure
--backup-retention 0y especifique un valor mayor que 0 para--snapshot-retention.
Eliminar una instantánea
Elimine las instantáneas programadas o bajo demanda que ya no necesite.
-
Eliminar el CR de instantánea asociado con la instantánea:
kubectl delete snapshot <snapshot_name> -n my-app-namespace
Eliminar una copia de seguridad
Elimine las copias de seguridad programadas o bajo demanda que ya no necesite.
|
|
Asegúrese de que la política de reclamaciones esté configurada para Delete Eliminar todos los datos de copia de seguridad del almacenamiento de objetos. La configuración predeterminada de la política es Retain para evitar la pérdida accidental de datos. Si la política no se modifica a Delete Los datos de copia de seguridad permanecerán en el almacenamiento de objetos y requerirán eliminación manual.
|
-
Eliminar el CR de copia de seguridad asociado con la copia de seguridad:
kubectl delete backup <backup_name> -n my-app-namespace
Comprobar el estado de una operación de copia de seguridad
Puede utilizar la línea de comandos para comprobar el estado de una operación de copia de seguridad que esté en curso, haya finalizado o haya fallado.
-
Utilice el siguiente comando para recuperar el estado de la operación de copia de seguridad, reemplazando los valores entre corchetes con información de su entorno:
kubectl get backup -n <namespace_name> <my_backup_cr_name> -o jsonpath='{.status}'
Habilitar la copia de seguridad y la restauración para las operaciones de archivos de Azure NetApp (ANF).
Si ha instalado Trident Protect, puede habilitar la funcionalidad de copia de seguridad y restauración que ahorra espacio para los backends de almacenamiento que usan la clase de almacenamiento azure-netapp-files y se crearon antes de Trident 24.06. Esta funcionalidad funciona con volúmenes NFSv4 y no consume espacio adicional del grupo de capacidad.
Asegúrese de lo siguiente:
-
Ha instalado Trident Protect.
-
Ha definido una aplicación en Trident Protect. Esta aplicación tendrá una funcionalidad de protección limitada hasta que complete este procedimiento.
-
Tienes
azure-netapp-filesseleccionada como la clase de almacenamiento predeterminada para su backend de almacenamiento.
Expandir para ver los pasos de configuración
-
Realice lo siguiente en Trident si el volumen ANF se creó antes de actualizar a Trident 24.10:
-
Habilite el directorio de instantáneas para cada PV que esté basado en azure-netapp-files y asociado con la aplicación:
tridentctl update volume <pv name> --snapshot-dir=true -n trident -
Confirme que el directorio de instantáneas se ha habilitado para cada PV asociado:
tridentctl get volume <pv name> -n trident -o yaml | grep snapshotDirRespuesta:
snapshotDirectory: "true"
+
Cuando el directorio de instantáneas no está habilitado, se elige la funcionalidad de copia de seguridad regular, que consume temporalmente espacio en el grupo de capacidad durante el proceso de copia de seguridad. En este caso, asegúrese de que haya suficiente espacio disponible en el grupo de capacidad para crear un volumen temporal del tamaño del volumen del que se está realizando la copia de seguridad. -
La aplicación está lista para realizar copias de seguridad y restaurar mediante Trident Protect. Cada PVC también está disponible para ser utilizado por otras aplicaciones para copias de seguridad y restauraciones.