En esta página, se describe cómo crear y administrar planes de copias de seguridad para cargas de trabajo de clústeres en Google Distributed Cloud (GDC) aislado.
Los planes de copias de seguridad proporcionan las funciones de configuración, ubicación y administración de una secuencia de copias de seguridad. Un plan de copia de seguridad contiene una configuración de copia de seguridad, incluido el clúster de origen y la selección de las cargas de trabajo de las que se creará una copia de seguridad. Google recomienda que cada clúster tenga al menos un plan de copia de seguridad.
Puedes crear uno o más planes de copia de seguridad para cada clúster. Es posible que desees particionar las copias de seguridad de tu clúster por uno de los siguientes motivos:
- En lugar de una copia de seguridad muy grande tomada en un solo momento del día, quieres tener varias copias de seguridad más pequeñas distribuidas durante todo el día.
- Deseas crear copias de seguridad de algunas partes del clúster con más frecuencia que otras, como las copias de seguridad diarias de algunos espacios de nombres y las copias de seguridad por hora de otros.
Un solo clúster o máquina virtual (VM) puede pertenecer a uno o más planes de copia de seguridad. Un plan de copia de seguridad no puede abarcar más de un clúster. Sin embargo, un solo plan de copia de seguridad puede capturar varias VMs si existen en el mismo clúster. Debes asociar todos los recursos de copia de seguridad y restablecimiento con un nombre de proyecto.
Antes de comenzar
Para crear un plan de copias de seguridad, debes tener lo siguiente:
- El rol de identidad y acceso necesario:
- Administrador de copias de seguridad del clúster de usuario: Administra recursos de copias de seguridad, como planes de copias de seguridad y restablecimiento en clústeres de usuario. Pídele al administrador de IAM de la organización que te otorgue el rol de administrador de copias de seguridad de clústeres de usuarios (
user-cluster-backup-admin). Para obtener más información, consulta Definiciones de roles.
- Administrador de copias de seguridad del clúster de usuario: Administra recursos de copias de seguridad, como planes de copias de seguridad y restablecimiento en clústeres de usuario. Pídele al administrador de IAM de la organización que te otorgue el rol de administrador de copias de seguridad de clústeres de usuarios (
- Si eres operador de aplicaciones, pídele a tu administrador, que tiene privilegios de administrador de copias de seguridad del clúster de usuario, que cree un plan de copias de seguridad para ti.
- Cuando crees una copia de seguridad de un clúster de usuario, asegúrate de adjuntar a ese clúster el proyecto que se usó para crear el plan de copias de seguridad.
Crear un plan de creación de copias de seguridad
Te recomendamos que definas un programa cron para el plan de copia de seguridad, de modo que las copias de seguridad se creen automáticamente según ese programa. También puedes crear una copia de seguridad manual de tus cargas de trabajo. Para obtener más información, consulta Crea una copia de seguridad manual.
Crea planes de copia de seguridad con la consola o la API de GDC.
Console
- Accede a la consola de GDC.
- En el menú de navegación, haz clic en Copia de seguridad para clústeres.
- Haz clic en Crear plan de copia de seguridad.
- En la sección Detalles del plan, completa los siguientes pasos y haz clic en Continuar:
- En la lista Clúster, selecciona el clúster del que deseas crear una copia de seguridad.
- En la lista Proyecto, selecciona el proyecto.
- En el campo Nombre del plan de copia de seguridad, ingresa el nombre del plan de copia de seguridad que elegiste.
- En Descripción del plan de creación de copias de seguridad, ingresa una descripción para el plan de creación de copias de seguridad (opcional).
- En el campo Backup repo, selecciona un repositorio de copias de seguridad. Los repositorios de copias de seguridad son un conjunto de implementaciones de almacenamiento de objetos.
- Haz clic en Siguiente.
En la sección Alcance y encriptación, completa los siguientes pasos y haz clic en Continuar:
Selecciona uno de los siguientes alcances para el plan de copia de seguridad:
- Haz clic en Todo el clúster para crear una copia de seguridad de todos los recursos del espacio de nombres.
- Haz clic en Selected namespaces within the cluster para elegir los espacios de nombres del clúster de los que deseas crear una copia de seguridad.
- Haz clic en Edit Cluster Namespace y, luego, en Add Cluster Namespace para ingresar un Namespace.
- Haz clic en Selected protected applications within this cluster para agregar recursos especificando el espacio de nombres y el nombre de la aplicación.
- Haz clic en Edit Protected Applications y, luego, en Add Protected Application para ingresar un espacio de nombres y una aplicación protegida.
Haz clic en Include Secrets para incluir recursos de
Secretde Kubernetes.Haz clic en Incluir datos de volumen persistente si deseas que los datos de volumen se incluyan en tu copia de seguridad. Desmarca esta casilla de verificación si deseas crear volúmenes vacíos durante la copia de seguridad.
En la sección Schedule and retention, completa los siguientes pasos y haz clic en Continuar:
- Para definir un programa, ingresa una expresión con sintaxis cron estándar en el campo Cadena CRON. Por ejemplo, la expresión
10 3 * * *crea una copia de seguridad a las 0310 todos los días. Todas las horas se interpretan como UTC. El intervalo mínimo entre las copias de seguridad programadas es de 10 minutos. - En el campo Borrar copias de seguridad después de, configura la cantidad de días durante los que se retendrá la copia de seguridad. Una vez que se alcanza la cantidad de días, la copia de seguridad se borra automáticamente.
- Configura la cantidad de días durante los cuales no se pueden borrar las copias de seguridad.
- Para bloquear la política de retención, haz clic en el ícono de bloqueo para cambiar el estado de Desactivado a Activado.
- Para definir un programa, ingresa una expresión con sintaxis cron estándar en el campo Cadena CRON. Por ejemplo, la expresión
Revisa los detalles del plan de copia de seguridad y haz clic en Crear plan.
API
Crea un recurso personalizado de ClusterBackupPlan en el clúster para programar copias de seguridad. Un plan de creación de copias de seguridad programa periódicamente copias de seguridad según el backupSchedule.
Los recursos ClusterBackupPlan son recursos de espacio de nombres. Este es un ejemplo de ClusterBackupPlan:
apiVersion: backup.gdc.goog/v1
kind: ClusterBackupPlan
metadata:
name: CLUSTER_BACKUP_PLAN
namespace: PROJECT_NAME
spec:
targetCluster:
targetClusterType: UserCluster
targetClusterName:
kind: "Cluster"
name: CLUSTER_NAME
backupSchedule:
cronSchedule: CRON_SCHEDULE
paused: BACKUP_SCHEDULE_STATUS
clusterBackupConfig:
backupScope:
selectedNamespaces:
namespaces: [NAME_SPACE]
clusterBackupRepositoryName: CLUSTER_BACKUP_REPOSITORY
includeVolumeData: VOLUME_DATA_INCLUDED
volumeStrategy: VOLUME_STRATEGY
includeSecrets: SECRETS_INCLUDED
retentionPolicy:
backupDeleteLockDays: BACKUP_DELETE_LOCK_DAYS
backupRetainDays: BACKUP_RETAIN_DAYS
description: BACKUP_PLAN_DESCRIPTION
Reemplaza lo siguiente:
CLUSTER_BACKUP_PLAN: Es el nombre de tu plan de copia de seguridad del clúster.PROJECT_NAME: Es el nombre de tu proyecto de GDC.CLUSTER_NAME: el nombre del clúster del que se creará una copia de seguridad. El campotargetClusterque lo incluye tiene los siguientes componentes:targetClusterType: Es el tipo de clúster del que se creará una copia de seguridad, comoUserClusteroManagementAPI. En este ejemplo, se usaUserCluster.targetClusterName: Contienename, que se establece conCLUSTER_NAME.
CRON_SCHEDULE: Es una programación de crontab que indica cuándo programar copias de seguridad, como"*/30 * * * *". El intervalo mínimo entre las copias de seguridad programadas es de 10 minutos.BACKUP_SCHEDULE_STATUS: Si estrue, no se programan copias de seguridad periódicas.NAME_SPACE: Es una lista de espacios de nombres que se incluirán en la copia de seguridad. El campoclusterBackupConfigque lo incluye contiene detalles de configuración para las copias de seguridad:backupScope: Indica qué recursos se incluyen en la copia de seguridad. En este ejemplo, se usaselectedNamespaces. Entre los valores posibles, se incluyen los siguientes:allNamespaces: Captura todos los recursos en todos los espacios de nombres.selectedNamespaces: Captura recursos en la lista de espacios de nombres especificados.selectedApplication: Captura los recursos definidos porprotectedApplications.
namespaces: Se aplica sibackupScopeesselectedNamespaces.
CLUSTER_BACKUP_REPOSITORY: Valor declusterBackupRepositoryNameenclusterBackupConfig. Este es el repositorio de destino que almacena las copias de seguridad y se debe importar comoReadWrite.VOLUME_DATA_INCLUDED: Especifica si se deben crear copias de seguridad de los datos de volumen. Este valor esfalsede forma predeterminada. Si deseas incluir datos de volumen en tu copia de seguridad, establece este parámetro entrue.VOLUME_STRATEGY: Es el tipo de copia de seguridad del volumen que se realizará. Entre los valores posibles, se incluyen los siguientes:ProvisionerSpecific: Aprovecha las capacidades de copia de seguridad y restablecimiento del aprovisionador de almacenamiento subyacente. Usa esta opción siincludeVolumeDataestrue.LocalSnapshotOnly: Crea una copia del volumen en un momento determinado solo en el sistema de almacenamiento local.Portable: Proporciona una forma de crear copias de seguridad de los datos de volumen que no depende del almacenamiento.
SECRETS_INCLUDED: Especifica si se deben crear copias de seguridad de los secretos. Este valor esfalsede forma predeterminada. Si quieres incluir recursos deSecretde Kubernetes en tu copia de seguridad, configura este parámetro comotrue.BACKUP_DELETE_LOCK_DAYS: Evita que se borre la copia de seguridad durante la cantidad de días especificada después de la creación de la copia de seguridad, por ejemplo,10 days.BACKUP_RETAIN_DAYS: Define la cantidad total de días que se retendrá la copia de seguridad. Después de este período, la copia de seguridad se borra automáticamente. Si se establece este valor en un número más alto, es posible que se agote el almacenamiento, mientras que, si se establece en un valor más bajo, puede aumentar el riesgo de pérdida de datos. Si no se especifica, este valor se establece en 35 de forma predeterminada. Las políticas de retención no anulan las políticas de retención de la ubicación de almacenamiento ni pueden exceder los 90 días.BACKUP_PLAN_DESCRIPTION: Es una descripción del plan de copia de seguridad.
Después de crear un plan de copia de seguridad, las copias de seguridad se crean automáticamente con la configuración especificada según el programa de copias de seguridad.
Visualiza un plan de copia de seguridad
Visualiza un plan de copia de seguridad con la consola de GDC o la API.
Console
- Accede a la consola de GDC.
- En el menú de navegación, haz clic en Copia de seguridad para clústeres.
- Haz clic en Seleccionar proyecto y elige una organización o un proyecto según tu rol:
- Administrador de copias de seguridad del clúster de usuario: Selecciona una organización para ver todos los planes de copias de seguridad en una organización o selecciona un proyecto para ver todos los planes de copias de seguridad en un proyecto.
- Backup Creator: Selecciona un proyecto para ver todos los planes de copias de seguridad en un proyecto.
- Haz clic en la pestaña Backup Plans.
- Haz clic en un plan de copia de seguridad de la lista para ver sus detalles. Los usuarios con privilegios de administrador de copias de seguridad del clúster de usuarios pueden ver todos los planes de copias de seguridad de la organización. Los usuarios con el rol de creador de copias de seguridad pueden ver todos los planes de copias de seguridad en el proyecto seleccionado.
API
Para ver un plan de copia de seguridad, usa el comando kubectl get:
kubectl get clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME -o yaml
Reemplaza lo siguiente:
CLUSTER_BACKUP_PLAN: El nombre del plan de copia de seguridad que se debe ver.PROJECT_NAME: Es el nombre de tu proyecto de GDC.
Cómo editar un plan de copias de seguridad
Edita un plan de copia de seguridad con la consola de GDC o la API.
Console
- Accede a la consola de GDC.
- En el menú de navegación, haz clic en Copia de seguridad para clústeres.
- Haz clic en Seleccionar proyecto y elige una organización o un proyecto según tu rol:
- Administrador de copias de seguridad del clúster de usuario: Selecciona una organización para ver todos los planes de copias de seguridad en una organización o selecciona un proyecto para ver todos los planes de copias de seguridad en un proyecto.
- Backup Creator: Selecciona un proyecto para ver todos los planes de copias de seguridad en él.
- Haz clic en la pestaña Backup Plans.
- Haz clic en el nombre del plan de copias de seguridad que deseas editar.
- Haz clic en la pestaña Configuración del plan para ver los campos que se pueden modificar.
Haz clic en el ícono de edición edit de Programación y retención para editar ese recurso:
- Para actualizar un programa, ingresa una expresión con sintaxis cron estándar en el campo Cadena CRON. Por ejemplo, la expresión
10 3 * * *crea una copia de seguridad a las 0310 todos los días. Todas las horas se interpretan como UTC. El intervalo mínimo entre las copias de seguridad programadas es de 10 minutos. - En el campo Borrar copias de seguridad después de, configura la cantidad de días durante los que se retendrá la copia de seguridad. Una vez que se alcanza la cantidad de días, la copia de seguridad se borra automáticamente.
En el campo Evitar el borrado durante, configura la cantidad de días durante los cuales no se pueden borrar las copias de seguridad.
Para bloquear la política de retención, haz clic en el ícono de bloqueo para cambiar el estado de Desactivado a Activado.
Haz clic en el botón Guardar para confirmar los cambios.
- Para actualizar un programa, ingresa una expresión con sintaxis cron estándar en el campo Cadena CRON. Por ejemplo, la expresión
API
Para editar un plan de copia de seguridad, usa el comando kubectl edit para modificar el recurso personalizado ClusterBackupPlan. Este comando abre la configuración en YAML del recurso en tu editor de texto predeterminado.
kubectl edit clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME
Reemplaza lo siguiente:
CLUSTER_BACKUP_PLAN: Es el nombre del plan de copia de seguridad que se editará.PROJECT_NAME: Es el nombre de tu proyecto de GDC.
En el editor, puedes modificar campos como los siguientes:
spec.backupSchedule.cronSchedule: Actualiza la frecuencia de la copia de seguridad.spec.backupSchedule.paused: Habilita o inhabilita la programación de copias de seguridad.spec.retentionPolicy.backupRetainDays: Cambiar el tiempo que se conservan las copias de seguridadspec.retentionPolicy.backupDeleteLockDays: Cambia el período de bloqueo por eliminación.spec.retentionPolicy.locked: Bloquea la política de retención.spec.deactivated: Desactiva el plan de copia de seguridad. Si se establece este campo en "true", se impide la creación de copias de seguridad y otras actualizaciones.
Desactiva un plan de copia de seguridad
Sigue estos pasos para desactivar un plan de copia de seguridad con la consola de GDC o la API:
Console
- Accede a la consola de GDC.
- En el menú de navegación, haz clic en Copia de seguridad para clústeres.
- Haz clic en Seleccionar proyecto y elige una organización o un proyecto según tu rol:
- Administrador de copias de seguridad del clúster de usuario: Selecciona una organización para ver todos los planes de copias de seguridad en una organización o selecciona un proyecto para ver todos los planes de copias de seguridad en un proyecto.
- Backup Creator: Selecciona un proyecto para ver todos los planes de copias de seguridad en un proyecto.
- Haz clic en la pestaña Backup Plans.
- Haz clic en el nombre del plan de copias de seguridad que deseas desactivar.
- Haz clic en el botón Desactivar plan.
- Ingresa en el campo el nombre del plan de copia de seguridad que deseas desactivar.
Haz clic en el botón Desactivar para completar la desactivación de este plan de copias de seguridad.
API
Para desactivar un plan de copia de seguridad, establece el campo deactivated en true:
kubectl patch clusterbackupplan CLUSTER_BACKUP_PLAN -n PROJECT_NAME -p '{"spec":{"deactivated":true}}' --type=merge
Reemplaza lo siguiente:
CLUSTER_BACKUP_PLAN: Es el nombre del plan de copia de seguridad que se desactivará.PROJECT_NAME: Es el nombre de tu proyecto de GDC.