- Representación JSON0
- VolumeDataRestorePolicy
- ClusterResourceConflictPolicy
- NamespacedResourceRestoreMode
- ClusterResourceRestoreScope
- GroupKind
- SubstitutionRule
- TransformationRule
- TransformationRuleAction
- Op
- ResourceFilter
Configuración de un restablecimiento. ID siguiente: 12
Representación JSON |
---|
{ "volumeDataRestorePolicy": enum ( |
Campos | |
---|---|
volumeDataRestorePolicy |
Especifica el mecanismo que se usará para restablecer los datos del volumen. Valor predeterminado: VOLUME_DATA_RESTORE_POLICY_UNSPECIFIED (se tratará como NO_VOLUME_DATA_RESTORATION). |
clusterResourceConflictPolicy |
Define el comportamiento para controlar la situación en la que los recursos con permisos de clúster que se restablecen ya existen en el clúster de destino. Esto DEBE establecerse en un valor distinto de CLUSTER_RESOURCE_CONFLICT_POLICY_UNSPECIFIED si |
namespacedResourceRestoreMode |
Define el comportamiento para controlar la situación en la que ya existen conjuntos de recursos con espacio de nombres que se restablecen en el clúster de destino. Esto DEBE establecerse en un valor distinto de NAMESPACED_RESOURCE_RESTORE_MODE_UNSPECIFIED. |
clusterResourceRestoreScope |
Identifica los recursos con permisos de clúster para restablecer desde la copia de seguridad. Si no se especifica, NO se restablecerá ningún recurso del clúster. |
substitutionRules[] |
Una lista de reglas de transformación que se aplicarán a los recursos de Kubernetes a medida que se seleccionan para restablecer desde una copia de seguridad. Las reglas se ejecutan en el orden definido. Este orden es importante, ya que los cambios que realiza una regla pueden afectar la lógica de filtrado de las reglas subsiguientes. Una lista vacía significa que no se producirá ninguna sustitución. |
transformationRules[] |
Una lista de reglas de transformación que se aplicarán a los recursos de Kubernetes a medida que se seleccionan para restablecer desde una copia de seguridad. Las reglas se ejecutan en el orden definido. Este orden es importante, ya que los cambios que realiza una regla pueden afectar la lógica de filtrado de las reglas subsiguientes. Una lista vacía significa que no se producirá ninguna transformación. |
Campo de unión Nota: Los recursos nunca se restablecerán en espacios de nombres administrados, como |
|
allNamespaces |
Restablece todos los recursos con espacio de nombres en la copia de seguridad si se configura como “Verdadero”. Especificar este campo como "Falso" es un error. |
selectedNamespaces |
Una lista de los recursos Namespace seleccionados para restablecer desde la copia de seguridad. Se restablecerán los Namespace enumerados y todos los recursos incluidos en ellos. |
selectedApplications |
Una lista de ProtectedApplications seleccionados para restablecer. Se restablecerán los ProtectedApplications enumerados y todos los recursos a los que hagan referencia. |
noNamespaces |
No restablecer ningún recurso con espacio de nombres si se configura como “Verdadero”. No se permite especificar este campo como “Falso”. |
excludedNamespaces |
Una lista de los espacios de nombres seleccionados que se excluyen del restablecimiento. Se restablecerán todos los espacios de nombres, excepto los de esta lista. |
VolumeDataRestorePolicy
Define cómo se deben restablecer los datos del volumen.
Enums | |
---|---|
VOLUME_DATA_RESTORE_POLICY_UNSPECIFIED |
Sin especificar (ilegal). |
RESTORE_VOLUME_DATA_FROM_BACKUP |
Para que se restablezca cada PVC, crea un volumen subyacente y un PV nuevos a partir del VolumeBackup correspondiente que se encuentra en la copia de seguridad. |
REUSE_VOLUME_HANDLE_FROM_BACKUP |
Para que se restablezca cada PVC, vuelve a usar el PV original incluido en la copia de seguridad (con su volumen subyacente original). Es probable que esta opción solo se pueda usar cuando se restablece una carga de trabajo a su clúster original. |
NO_VOLUME_DATA_RESTORATION |
Para cada PVC que se restablezca, crea un PVC sin ninguna acción en particular para restablecer los datos. En este caso, se activaría la lógica de aprovisionamiento normal de Kubernetes y es probable que esto provoque el aprovisionamiento dinámico de PV en blanco o la vinculación a PV aprovisionados de forma estática. |
ClusterResourceConflictPolicy
Define el comportamiento para controlar la situación en la que los recursos con permisos de clúster que se restablecen ya existen en el clúster de destino.
Enums | |
---|---|
CLUSTER_RESOURCE_CONFLICT_POLICY_UNSPECIFIED |
Sin especificar. Solo se permite si no se restablecerá ningún recurso con permiso de clúster. |
USE_EXISTING_VERSION |
No intentes restablecer el recurso en conflicto. |
USE_BACKUP_VERSION |
Borra la versión existente antes de volver a crearla desde la copia de seguridad. Esta es una opción peligrosa que puede causar una pérdida de datos involuntaria si se usa de forma inadecuada. Por ejemplo, si borras una CRD, hará que Kubernetes borre todos los CR de ese tipo. |
NamespacedResourceRestoreMode
Define el comportamiento para controlar la situación en la que ya existen conjuntos de recursos con espacio de nombres que se restablecen en el clúster de destino.
Enums | |
---|---|
NAMESPACED_RESOURCE_RESTORE_MODE_UNSPECIFIED |
Sin especificar (no válido). |
DELETE_AND_RESTORE |
Cuando se encuentran recursos en conflicto de nivel superior (ya sea Namespaces o ProtectedApplications, según el permiso), esto primero activará una eliminación del recurso en conflicto Y TODOS LOS RECURSOS REFERENCIADOS (p. ej., todos los recursos en el espacio de nombres o todos los recursos a los que hace referencia el ProtectedApplication) antes de restablecer los recursos desde la copia de seguridad. Este modo solo debe usarse cuando quieras revertir alguna parte de un clúster a un estado anterior. |
FAIL_ON_CONFLICT |
Si se encuentran recursos en conflicto de nivel superior (recursos Namespace o ProtectedApplications, según el permiso) al comienzo de un proceso de restablecimiento, el restablecimiento fallará. Si se produce un conflicto durante el proceso de restablecimiento (p. ej., porque un proceso fuera de banda crea recursos en conflicto), se informará un conflicto. |
ClusterResourceRestoreScope
Define el alcance de los recursos con permisos de clúster que se restablecerán.
Algunos tipos de grupos no son opciones razonables para un restablecimiento y provocarán un error si se seleccionan aquí. Cualquier selección de permiso que restablezca "todos los recursos válidos" excluye automáticamente estos tipos de grupos. - gkebackup.gke.io/BackupJob - gkebackup.gke.io/RestoreJob - metrics.k8s.io/NodeMetrics - migration.k8s.io/StorageState - migration.k8s.io/StorageVersionMigration - Node - snapshot.storage.k8s.io/VolumeSnapshotContent - storage.k8s.io/CSINode
Algunos tipos de grupos se controlan a través de la configuración de restablecimiento en otro lugar y provocarán un error si se seleccionan aquí. - Namespace - PersistentVolume
Representación JSON |
---|
{ "selectedGroupKinds": [ { object ( |
Campos | |
---|---|
selectedGroupKinds[] |
Una lista de tipos de grupos de recursos con permisos de clúster para restablecer desde la copia de seguridad. Si se especifica, solo se restablecerán los recursos seleccionados. Mutuamente excluyente para cualquier otro campo del mensaje. |
excludedGroupKinds[] |
Una lista de tipos de grupos de recursos con permisos de clúster para NO restablecer desde la copia de seguridad. Si se especifica, se restablecerán todos los recursos con permisos de clúster válidos, excepto los especificados en la lista. Mutuamente excluyente para cualquier otro campo del mensaje. |
allGroupKinds |
Si es verdadero, se restablecerán todos los recursos con permisos de clúster válidos. Mutuamente excluyente para cualquier otro campo del mensaje. |
noGroupKinds |
Si se configura como verdadero, no se restablecerán los recursos con permisos de clúster. Esto tiene el mismo alcance de restablecimiento que si el mensaje no estuviera definido. Mutuamente excluyente para cualquier otro campo del mensaje. |
GroupKind
Esta es una asignación directa al tipo GroupKind de Kubernetes y se usa para identificar los “tipos” específicos de recursos que se restablecerán.
Representación JSON |
---|
{ "resourceGroup": string, "resourceKind": string } |
Campos | |
---|---|
resourceGroup |
Cadena de grupo de API de un recurso de Kubernetes, p. ej., “apiextensions.k8s.io”, “storage.k8s.io”, entre otros. Nota: Usa una cadena vacía para el grupo de API principal |
resourceKind |
Tipo de recurso de Kubernetes, p. ej., "CustomResourceDefinition", "StorageClass", entre otros. |
SubstitutionRule
Una regla de transformación que se aplicará a los recursos de Kubernetes a medida que se seleccionan para restablecer desde una copia de seguridad. Una regla contiene la lógica de filtrado (qué recursos están sujetos a sustitución) y la lógica de sustitución.
Representación JSON |
---|
{
"targetNamespaces": [
string
],
"targetGroupKinds": [
{
object ( |
Campos | |
---|---|
targetNamespaces[] |
(Parámetro de filtro) Cualquier recurso sujeto a la sustitución debe incluirse en uno de los espacios de nombres de Kubernetes enumerados en la copia de seguridad. Si no se proporciona este campo, no se realizará ningún filtro de espacio de nombres (todos los recursos de todos los recursos Namespace, incluidos todos los recursos con permisos de clúster, serán candidatos para su sustitución). Para mezclar recursos con permisos de clúster y recursos con espacios de nombres en la misma regla, usa una cadena vacía ("") como uno de los espacios de nombres de destino. |
targetGroupKinds[] |
(Parámetro de filtro) Cualquier recurso sujeto a la sustitución debe pertenecer a uno de los "tipos" enumerados. Si no se proporciona este campo, no se aplicará ningún filtro de tipo (todos los recursos de todos los tipos que coincidan con los parámetros de filtro anteriores serán candidatos para su sustitución). |
targetJsonPath |
Obligatorio. Esta es una expresión JSONPath que coincide con campos específicos de recursos candidatos y funciona como un parámetro de filtro (los recursos que no coinciden con esta expresión no serán candidatos para su sustitución) y como un identificador de campo (identifica con exactitud qué campos de los recursos candidatos se modificarán). |
originalValuePattern |
(Parámetro de filtro) Esta es una expresión regular que se compara con los campos que coinciden con la expresión targetJsonPath (y que también debe haber pasado los filtros anteriores). No se realizará la sustitución en los campos cuyo valor no coincida con esta expresión. Si NO se especifica este campo, se sustituirán TODOS los campos que coincidan con la expresión targetJsonPath. Ten en cuenta que un valor vacío (p. ej., "", en lugar de un valor no especificado) para este campo solo coincidirá con campos vacíos. |
newValue |
Este es el nuevo valor que se debe establecer para los campos que pasan los criterios de filtrado y selección. Para quitar un valor de un recurso de Kubernetes, deja este campo sin especificar o configúralo como la cadena vacía (""). |
TransformationRule
Una regla de transformación que se aplicará a los recursos de Kubernetes a medida que se seleccionan para restablecer desde una copia de seguridad. Una regla contiene la lógica de filtrado (qué recursos están sujetos a transformación) y la lógica de transformación.
Representación JSON |
---|
{ "fieldActions": [ { object ( |
Campos | |
---|---|
fieldActions[] |
Obligatorio. Una lista de acciones de reglas de transformación que se deben realizar en los recursos candidatos. Las acciones se ejecutan en orden definido. Este orden es importante, ya que podrían interferir entre sí y la primera operación puede afectar el resultado de la segunda operación. |
resourceFilter |
Este campo se usa para especificar un conjunto de campos que se deben usar para determinar sobre qué recursos de la copia de seguridad deben actuar las acciones de la regla de transformación proporcionada, lo que garantizará que solo las acciones de las reglas de transformación afecten a los recursos específicos. |
description |
La descripción es una descripción de cadena especificada por el usuario de la regla de transformación. |
TransformationRuleAction
TransformationRuleAction define una acción TransformationRule basada en la RFC de parche JSON (https://www.rfc-editor.org/rfc/rfc6902).
Representación JSON |
---|
{
"op": enum ( |
Campos | |
---|---|
op |
Obligatorio. op especifica la operación que se realizará. |
fromPath |
Una cadena que contiene un valor de puntero JSON que hace referencia a la ubicación en el documento de destino desde la cual se moverá el valor. |
path |
Una cadena que contiene un valor de puntero JSON que hace referencia a una ubicación dentro del documento de destino donde se realiza la operación. |
value |
Una cadena que especifica el valor deseado en formato de cadena para usar en la transformación. |
Op
Valores posibles para las operaciones de una acción de regla de transformación.
Enums | |
---|---|
OP_UNSPECIFIED |
Operación no especificada |
REMOVE |
La operación "quitar" quita el valor de la ubicación de destino. |
MOVE |
La operación "mover" quita el valor de una ubicación especificada y lo agrega a la ubicación de destino. |
COPY |
La operación "copiar" copia el valor de una ubicación específica en la ubicación de destino. |
ADD |
La operación "agregar" realiza una de las siguientes funciones, según la referencia de la ubicación de destino: 1. Si la ubicación de destino especifica un índice de array, se inserta un valor nuevo en el array en el índice especificado. 2. Si la ubicación de destino especifica un miembro del objeto que aún no existe, se agrega un miembro nuevo al objeto. 3. Si la ubicación de destino especifica un miembro del objeto que existe, se reemplaza el valor de ese miembro. |
TEST |
La operación "probar" comprueba que un valor en la ubicación de destino sea igual a un valor especificado. |
REPLACE |
La operación “reemplazar” reemplaza el valor en la ubicación de destino por un valor nuevo. El objeto de operación DEBE contener un miembro “valor” cuyo contenido especifique el valor de reemplazo. |
ResourceFilter
ResourceFilter especifica los criterios de coincidencia para limitar el alcance de un cambio a un conjunto específico de recursos de Kubernetes que se seleccionan para restablecer desde una copia de seguridad.
Representación JSON |
---|
{
"namespaces": [
string
],
"groupKinds": [
{
object ( |
Campos | |
---|---|
namespaces[] |
(Parámetro de filtro) Cualquier recurso sujeto a la transformación debe incluirse en uno de los espacios de nombres de Kubernetes enumerados en la copia de seguridad. Si no se proporciona este campo, no se realizará ningún filtro de espacio de nombres (todos los recursos de todos los espacios de nombres, incluidos todos los recursos con permisos de clúster, serán candidatos para su transformación). Para mezclar recursos con permisos de clúster y recursos con espacios de nombres en la misma regla, usa una cadena vacía ("") como uno de los espacios de nombres de destino. |
groupKinds[] |
(Parámetro de filtro) Cualquier recurso sujeto a la transformación debe pertenecer a uno de los “tipos” enumerados. Si no se proporciona este campo, no se aplicará ningún filtro de tipo (todos los recursos de todos los tipos que coincidan con los parámetros de filtro anteriores serán candidatos para su transformación). |
jsonPath |
Esta es una expresión JSONPath que coincide con campos específicos de recursos candidatos y funciona como un parámetro de filtro (los recursos que no coinciden con esta expresión no serán candidatos para su transformación). |