Crea un restablecimiento detallado

En este documento, se describe cómo crear un restablecimiento detallado para una copia de seguridad en Google Distributed Cloud (GDC) air-gapped.

La función de restablecimiento detallado te permite restablecer un subconjunto de recursos de una copia de seguridad. Esta función proporciona la flexibilidad para refinar el alcance de restablecimiento definido en el plan de restablecimiento.

Antes de comenzar

Asegúrate de tener una copia de seguridad existente. Para obtener más información, consulta Planifica un conjunto de copias de seguridad.

Solicita roles de IAM

Para crear un restablecimiento detallado para una copia de seguridad, pídele al administrador de IAM de tu organización o al administrador de IAM del proyecto que te otorgue uno de los siguientes roles:

  • Administrador de copias de seguridad de clústeres de usuario (user-cluster-backup-admin): Crea, obtiene, enumera, observa, actualiza, aplica parches y borra recursos de copia de seguridad, como planes de copia de seguridad y restablecimiento en clústeres de usuario. Comunícate con el administrador de IAM de tu organización para solicitar este rol.

  • Creador de copias de seguridad (backup-creator): Crea, obtiene, enumera, observa, actualiza, aplica parches y borra solicitudes de copia de seguridad manuales y solicitudes de restablecimiento manuales. Comunícate con el administrador de IAM de tu proyecto para solicitar este rol.

Crea un restablecimiento detallado

Para crear un restablecimiento con un filtro detallado, sigue estos pasos:

  1. Crea los filtros de restablecimiento detallados. Puedes usar el siguiente ejemplo de YAML.

    inclusionFilters:
      - groupKind:
          group: foo.io
          kind: Bar
        name: name1
        namespace: ns1
    exclusionFilters:
      - labels:
          key1: value1
          key2: value2
    
  2. Crea un recurso personalizado ManualRestoreRequest para planificar restablecimientos desde un Backups existente. Este es un ejemplo de ManualRestoreRequest:

    apiVersion: backup.gdc.goog/v1
    kind: ManualRestoreRequest
    metadata:
      name: RESTORE_NAME
      namespace: PROJECT_NAMESPACE
    spec:
      restoreName: RESTORE_NAME
      restorePlanName: RESTORE_PLAN
      backupName: BACKUP_NAME
      filter:
        FINE_GRAINED_RESTORE_FILTERS
    

Reemplaza lo siguiente:

  • RESTORE_NAME: Es el nombre del restablecimiento que deseas crear.
  • PROJECT_NAMESPACE: Es el nombre de tu proyecto de GDC.
  • RESTORE_PLAN: Es el nombre del plan de restablecimiento del que deriva el restablecimiento.
  • BACKUP_NAME: Es la copia de seguridad que se debe restablecer. Esta copia de seguridad debe estar asociada con el plan de copia de seguridad al que hace referencia el plan de restablecimiento. Para obtener más información, consulta Planifica un conjunto de restablecimientos.
  • FINE_GRAINED_RESTORE_FILTER: Son los filtros de restablecimiento detallados. Para ver ejemplos, consulta Ejemplos de filtros de restablecimiento detallados.

Ejemplos de filtros de restablecimiento detallados

Los siguientes ejemplos se proporcionan en el formato YAML que usa Google Cloud CLI.

Restablece un solo recurso con permiso de espacio de nombres

En este ejemplo, se restablece un recurso ConfigMap con el nombre nginx-vars en el espacio de nombres webserver, mediante el restablecimiento detallado inclusionFilters para seleccionar el recurso. Si deseas elegir recursos en el grupo principal, usa una cadena vacía para el campo group.

filter:
  inclusionFilters:
  - groupKind:
      kind: ConfigMap
    name: nginx-vars
    namespace: webserver

Excluye un solo recurso con permiso de clúster

En este ejemplo, se restablecen todos los recursos disponibles, excepto un recurso groupKind con el nombre sc1, mediante el restablecimiento detallado exclusionFilters para excluir el recurso.

filter:
  exclusionFilters:
  - groupKind:
      group: storage.k8s.io
      kind: StorageClass
    name: sc1

Restablece recursos con dos etiquetas

En este ejemplo, se restablecen los recursos que tienen las etiquetas key1:value1 y key2:value2, mediante el restablecimiento detallado inclusionFilters para seleccionar los recursos.

filter:
  inclusionFilters:
  - labels:
      key1: value1
      key2: value2

Excluye todos los recursos de algunos GroupKinds

En este ejemplo, se restablecen todos los recursos disponibles, excepto los recursos groupKind de ConfigMap y storage.k8s.io/StorageClass, mediante el restablecimiento detallado exclusionFilters para excluir estos dos GroupKinds.

filter:
  exclusionFilters:
  - groupKind:
      kind: ConfigMap
  - groupKind:
      group: storage.k8s.io
      kind: StorageClass

¿Qué sigue?