Backups Kubernetes con Velero: prueba la restauración

Índice de contenido
  1. Define las capas de recuperación
  2. Instala versiones compatibles
  3. Comprueba ubicaciones y alcance
  4. Respalda un namespace de práctica
  5. Restaura con otro nombre o en un entorno aislado
  6. Programación y retención
  7. Documenta y repite
  8. Preguntas frecuentes
    1. ¿Respaldar etcd recupera todas mis bases de datos?
    2. ¿Un snapshot siempre es consistente?
    3. ¿Un backup Completed basta para estar tranquilo?
  9. En pocas palabras
  10. Conclusión
  11. Fuentes y documentación

Velero puede ayudar a respaldar recursos Kubernetes y datos mediante mecanismos compatibles con tu almacenamiento. El diseño depende del proveedor, plugins, permisos y necesidades de la aplicación. No basta con ejecutar backup create y ver que existe un registro.

Utiliza un clúster de práctica y un destino protegido. Los backups pueden incluir secretos, configuraciones y datos personales.

Define las capas de recuperación

Los manifiestos describen objetos del clúster. Los volúmenes guardan datos. Una base puede necesitar un respaldo consistente de aplicación además de un snapshot.

etcd conserva estado del plano de control en clústeres que lo utilizan, pero no sustituye los datos de todos los volúmenes. En un servicio administrado como EKS, no asumas acceso al etcd del proveedor.

Instala versiones compatibles

Obtén Velero desde sus releases oficiales y verifica el archivo y arquitectura. Los nombres de assets incluyen versión; no inventes una URL genérica latest que puede no existir.

Consulta la matriz del plugin del proveedor. Configura bucket o destino, permisos y regiones según su documentación. Prefiere credenciales temporales o identidad de carga cuando el diseño lo permita.

La instalación es específica del entorno: debes terminarla antes de utilizar los comandos de este ejemplo.

Comprueba ubicaciones y alcance

velero version
velero backup-location get
kubectl -n velero get pods

Una ubicación disponible no demuestra que los snapshots o la copia de datos de todos los volúmenes estén configurados. Revisa el método elegido y sus limitaciones.

Respalda un namespace de práctica

velero backup create practica-uno --include-namespaces practica --wait
velero backup describe practica-uno --details
velero backup logs practica-uno

Revisa advertencias, fallos parciales y recursos incluidos. Un estado general no sustituye investigar un volumen omitido.

Antes de programar, crea datos de prueba que puedas comprobar después de recuperar. Una aplicación vacía demuestra poco sobre la utilidad del respaldo.

Restaura con otro nombre o en un entorno aislado

Velero ofrece mapeo de namespaces en restauraciones compatibles. Por ejemplo:

velero restore create prueba-restauracion \
  --from-backup practica-uno \
  --namespace-mappings practica:practica-restaurada
velero restore get

Revisa dependencias y colisiones de recursos de ámbito clúster. No uses la única instalación importante como destino de una prueba.

Comprueba acceso, permisos y datos. Deshabilita efectos externos de la copia, como pagos, correos o tareas que modifiquen otros sistemas.

Programación y retención

Define frecuencia según cuánto dato puedes perder y duración de recuperación aceptable. Vigila espacio, permisos y fallos del destino.

La retención debe conservar copias útiles y permitir cumplir políticas de datos. No elimines la última copia antes de comprobar otra.

Documenta y repite

Anota versiones, alcance, tiempo y problemas encontrados. Repite la prueba cuando cambies almacenamiento, proveedor o versión de la aplicación.

Preguntas frecuentes

¿Respaldar etcd recupera todas mis bases de datos?

No. Los datos de volúmenes y las necesidades de consistencia de aplicaciones requieren procedimientos adicionales.

¿Un snapshot siempre es consistente?

Depende de cómo se realiza y de la aplicación. Revisa quiescing, hooks o respaldos lógicos cuando correspondan.

¿Un backup Completed basta para estar tranquilo?

Es una señal que debes complementar con detalle, logs y una restauración funcional comprobada.

En pocas palabras

Un backup Kubernetes debe considerar manifiestos, volúmenes y consistencia de las aplicaciones. Un snapshot y un respaldo de etcd cubren partes diferentes y no son intercambiables.

Conclusión

Define qué necesitas recuperar y pruébalo en un entorno separado. Considera exitoso el proceso solo cuando la aplicación y sus datos cumplan las comprobaciones acordadas.

Para continuar, revisa Instalar Kubernetes en Ubuntu desde cero: guía completa y Docker: qué es y cómo usarlo para ejecutar contenedores.

Fuentes y documentación

Documentación de velero.io.

Documentación de github.com.

Subir

Descubre más de Sergio Caballero

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Continuar leyendo