BackupPolicy¶
Una BackupPolicy básica presenta el siguiente aspecto:
apiVersion: k8sbackup.afi.ai/v1alpha1
kind: BackupPolicy
metadata:
name: gold
spec:
selectors: []
repoRef: cloud
schedule:
fixed:
hours: [4, 12, 20]
daysOfWeek: [0, 1, 2, 3, 4, 5, 6]
encryptionKey: default-encryption-key
selectorses una lista de reglas que seleccionan los manifiestos que se incluirán en una copia de seguridad. Una lista vacía de selectores indica que todos los archivos YAML de un espacio de nombres se incluyen en las copias de seguridad.`repoRefes el nombre de un repositorio que almacena archivos. Actualmente, durante la incorporación del inquilino se crea un repositorio predeterminado para los archivos de copia de seguridad (cloud), que se utiliza para almacenar datos en la nube de Afi. En próximas actualizaciones se añadirá compatibilidad con repositorios de copias de seguridad personalizados y gestionados por el usuario.schedulesolicita la ejecución periódica de copias de seguridad. Un valorschedulevacío indica que las copias solo se ejecutan cuando se inician manualmente. Al configurar una programación, puede definir un conjunto de ventanas de copia de seguridad durante el día (mediante la listahours) y un conjunto de días de la semana en los que deben realizarse las copias (mediante la listadaysOfWeek). La enumeración dehourscomienza en 0 para la medianoche (0–23) y la dedaysOfWeekcomienza en 0 para el domingo (0: domingo, 1: lunes, …, 6: sábado). Los valores dehoursse interpretan según la zona horaria especificada durante la incorporación del clúster. Se espera que las copias de seguridad programadas para una hora concreta se inicien dentro de una ventana de 15 minutos (es decir, que las copias programadas para la hora 0, medianoche, se inicien dentro de la ventana de 00:00 a 00:15).encryptionKeyes el nombre de la clave de cifrado que utiliza esta política de copia de seguridad. Las claves de cifrado de las copias de seguridad se muestran y gestionan en la pestaña Service → Settings → Secrets del portal de Afi. La clave de cifrado que Afi crea al incorporar un clúster se denominadefault-encryption-key(este es el nombre predeterminado, pero puede cambiarse posteriormente).
Puede mostrar las políticas de copia de seguridad configuradas dentro de un clúster de Kubernetes ejecutando el siguiente comando (backup-agent es el espacio de nombres donde está instalado el agente de copia de seguridad de Afi):
Puede crear una política de copia de seguridad nueva ejecutando el siguiente comando (arriba se muestra un ejemplo de configuración YAML de una política):
Selectores¶
Esta parte de una política de copia de seguridad es una lista de filtros que se aplican a los objetos de un espacio de nombres protegido para seleccionar los archivos YAML que se incluirán en las copias. Cada selector tiene una de las siguientes formas:
o
Un selector include añade objetos a una instantánea y un selector exclude los elimina. Los selectores se aplican en el orden en que están definidos.
Cada campo del selector (apiVersion, kind, etc.) es opcional. Si está vacío, coincide con cualquier objeto.
Los selectores se entienden mejor mediante algunos ejemplos reales.
Copiar únicamente Secret¶
Copiar Secret y ConfigMap¶
Copiar únicamente la configuración de la aplicación, sin incluir los datos persistentes¶
selectors:
- include: {} # primero, incluir todo
- exclude: # después, excluir lo que no sea necesario
apiVersion: v1
kind: PersistentVolumeClaim
O a la inversa: copiar únicamente los datos persistentes¶
Copiar únicamente los manifiestos que tengan la etiqueta app.kubernetes.io/name: apache-spark-0¶
Para obtener información detallada sobre los selectores de etiquetas, consulte https://kubernetes.io/es/docs/concepts/overview/working-with-objects/labels/ y https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#labelselector-v1-meta (en inglés).