REST Resource: projects.locations.backupPlans

Recurso: BackupPlan

Define la configuración y la programación de una “línea” de copias de seguridad.

Representación JSON
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "description": string,
  "cluster": string,
  "retentionPolicy": {
    object (RetentionPolicy)
  },
  "labels": {
    string: string,
    ...
  },
  "backupSchedule": {
    object (Schedule)
  },
  "etag": string,
  "deactivated": boolean,
  "backupConfig": {
    object (BackupConfig)
  },
  "protectedPodCount": integer,
  "state": enum (State),
  "stateReason": string
}
Campos
name

string

Solo salida. El nombre completo del recurso BackupPlan. Formato: projects/*/locations/*/backupPlans/*

uid

string

Solo salida. Identificador único global generado por el servidor con formato UUID.

createTime

string (Timestamp format)

Solo salida. La marca de tiempo de la creación de este recurso de BackupPlan.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo salida. La marca de tiempo de la última actualización de este recurso de BackupPlan.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

description

string

Es la cadena descriptiva especificada por el usuario para esta BackupPlan.

cluster

string

Obligatorio. Inmutable. El clúster de origen desde el que se crearán las copias de seguridad a través de este BackupPlan. Formatos válidos:

  • projects/*/locations/*/clusters/*
  • projects/*/zones/*/clusters/*
retentionPolicy

object (RetentionPolicy)

RetenciónPolicy rige el ciclo de vida de las copias de seguridad creadas en este plan.

labels

map (key: string, value: string)

Un conjunto de etiquetas personalizadas proporcionadas por el usuario.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

backupSchedule

object (Schedule)

Define un programa para la creación automática de copias de seguridad a través de este BackupPlan.

etag

string

Solo salida. etag se usa para el control de simultaneidad optimista, como una forma de evitar que las actualizaciones simultáneas de una copia de seguridad se reemplacen entre sí. Se recomienda que los sistemas usen el ETag en el ciclo de lectura, modificación y escritura para realizar actualizaciones de BackupPlan a fin de evitar condiciones de carrera: se muestra una etag en la respuesta a backupPlans.get, y se espera que los sistemas incluyan esa ETag en la solicitud a backupPlans.patch o backupPlans.delete para garantizar que el cambio se aplique a la misma versión del recurso.

deactivated

boolean

Esta marca indica si se desactivó este BackupPlan. Si se establece este campo en verdadero, se bloqueará BackupPlan para que no se permitan más actualizaciones (excepto las eliminaciones), incluido el campo desactivado. También evita que se creen copias de seguridad nuevas a través de este BackupPlan (incluidas las copias de seguridad programadas).

Valor predeterminado: falso

backupConfig

object (BackupConfig)

Define la configuración de las copias de seguridad creadas a través de este BackupPlan.

protectedPodCount

integer

Solo salida. La cantidad de pods de Kubernetes de los que se creó una copia de seguridad en la última copia de seguridad exitosa que se creó a través de este BackupPlan.

state

enum (State)

Solo salida. Estado de BackupPlan. Este campo de estado refleja las diversas etapas en las que puede estar un BackupPlan durante la operación de creación. Se establecerá en "DEACTIVATED" si el BackupPlan se desactiva en una actualización

stateReason

string

Solo salida. Descripción legible de por qué BackupPlan está en el state actual

RetentionPolicy

RetentionPolicy define una política de retención de copias de seguridad para una BackupPlan.

Representación JSON
{
  "backupDeleteLockDays": integer,
  "backupRetainDays": integer,
  "locked": boolean
}
Campos
backupDeleteLockDays

integer

Antigüedad mínima para las copias de seguridad creadas a través de este BackupPlan (en días). Este campo DEBE ser un valor de número entero entre 0 y 90 (inclusive). Una copia de seguridad creada en este BackupPlan NO se podrá borrar hasta que alcance la copia de seguridad (createTime + backupDeleteLockDays). La actualización de este campo de un BackupPlan NO afecta las copias de seguridad existentes en él. Las copias de seguridad creadas DESPUÉS de una actualización exitosa heredarán el valor nuevo.

Predeterminado: 0 (sin bloqueo de eliminación)

backupRetainDays

integer

La antigüedad máxima predeterminada de una copia de seguridad creada a través de este BackupPlan. Este campo DEBE ser un valor de número entero >= 0 y <= 365. Si se especifica, una copia de seguridad creada en este BackupPlan se borrará automáticamente después de que alcance su antigüedad (createTime + backupRetainDays). Si no se especifica, las copias de seguridad creadas en este BackupPlan NO estarán sujetas a la eliminación automática. La actualización de este campo NO afecta las copias de seguridad existentes que contiene. Las copias de seguridad creadas DESPUÉS de una actualización exitosa tomarán de forma automática el valor nuevo. NOTA: backupRetainDays debe ser >= backupDeleteLockDays. Si se define cronSchedule, debe ser <= 360 * el intervalo de creación.

Predeterminado: 0 (sin eliminación automática)

locked

boolean

Esta marca indica si la política de retención de este BackupPlan está bloqueada. Si se establece como verdadera, no se permiten más actualizaciones sobre esta política, incluido el campo locked en sí.

Valor predeterminado: falso

Programa

Define los parámetros de programación para crear copias de seguridad de forma automática a través de este BackupPlan.

Representación JSON
{
  "cronSchedule": string,
  "paused": boolean
}
Campos
cronSchedule

string

Una cadena cron estándar que define un programa de repetición para crear copias de seguridad a través de este BackupPlan. Esto es mutuamente exclusivo con el campo rpoConfig, ya que se puede definir como máximo un programa para un BackupPlan. Si se define esto, también se debe definir backupRetainDays.

Predeterminado (vacío): No se creará una copia de seguridad automática.

paused

boolean

Esta marca indica si la creación automática de copias de seguridad está pausada para este BackupPlan.

Valor predeterminado: falso

BackupConfig

BackupConfig define la configuración de las copias de seguridad creadas a través de este BackupPlan.

Representación JSON
{
  "includeVolumeData": boolean,
  "includeSecrets": boolean,
  "encryptionKey": {
    object (EncryptionKey)
  },

  // Union field backup_scope can be only one of the following:
  "allNamespaces": boolean,
  "selectedNamespaces": {
    object (Namespaces)
  },
  "selectedApplications": {
    object (NamespacedNames)
  }
  // End of list of possible types for union field backup_scope.
}
Campos
includeVolumeData

boolean

Esta marca especifica si se debe crear una copia de seguridad de los datos del volumen cuando se incluyen los PVC en el alcance de una copia de seguridad.

Valor predeterminado: falso

includeSecrets

boolean

Esta marca especifica si los recursos de Secret de Kubernetes deben incluirse cuando estén dentro del alcance de las copias de seguridad.

Valor predeterminado: falso

encryptionKey

object (EncryptionKey)

Esto define una clave de encriptación administrada por el cliente que se usará para encriptar la parte de la configuración (los recursos de Kubernetes) de las copias de seguridad creadas a través de este plan.

Predeterminado (vacío): Los artefactos de copia de seguridad de configuración no se encriptarán.

Campo de unión backup_scope. Esto define el “alcance” de la copia de seguridad, qué recursos con espacio de nombres en el clúster se incluirán en una copia de seguridad. Exactamente uno de los campos de backup_scope DEBE especificarse. backup_scope puede ser solo uno de los siguientes:
allNamespaces

boolean

Si es verdadero, incluye todos los recursos con espacio de nombres

selectedNamespaces

object (Namespaces)

Si se configura, incluye solo los recursos en los espacios de nombres enumerados.

selectedApplications

object (NamespacedNames)

Si se establece, incluye solo los recursos a los que hacen referencia las ProtectedApplications enumeradas.

Estado

Estado

Enums
STATE_UNSPECIFIED El primer valor predeterminado para las enumeraciones.
CLUSTER_PENDING Espera a que el estado del clúster sea RUNNING.
PROVISIONING El BackupPlan está en proceso de creación.
READY El BackupPlan se creó correctamente y está listo para las copias de seguridad.
FAILED No se pudo crear BackupPlan.
DEACTIVATED Se desactivó BackupPlan.
DELETING El BackupPlan está en proceso de eliminación.

Métodos

create

Crea un nuevo BackupPlan en una ubicación determinada.

delete

Borra un BackupPlan existente.

get

Recupera los detalles de un solo BackupPlan.

getIamPolicy

Permite obtener la política de control de acceso de un recurso.

list

Muestra una lista de BackupPlans en una ubicación determinada.

patch

Actualiza un BackupPlan.

setIamPolicy

Permite configurar la política de control de acceso en el recurso especificado.

testIamPermissions

Permite mostrar los permisos que tiene un emisor para un recurso especificado.