Gestionar copias de seguridad
Esta guía cubre las cuatro operaciones principales de copias de seguridad: crear una copia de seguridad manual, generar un dump descargable desde un despliegue, descargar una copia de seguridad existente y restaurar una copia de seguridad en una rama.
Crear, restaurar e importar copias de seguridad requiere el rol de Admin en el proyecto. Cualquier miembro del proyecto puede descargar una copia de seguridad existente.
:::info Las copias de seguridad necesitan un destino de copia de seguridad Las copias de seguridad se almacenan en el destino de copia de seguridad configurado para tu proyecto (por ejemplo, una ruta del sistema de archivos en el host del agente, o un bucket de almacenamiento de objetos). Si no se ha configurado ningún destino de copia de seguridad, las copias de seguridad programadas no se ejecutan y las descargas fallan con un error de "no backup target".
Configura el destino de copia de seguridad en Project → Settings → Backup. :::
Copias de seguridad automáticas
Cuando un proyecto tiene configurado un destino de copia de seguridad, Skysize realiza automáticamente copias de seguridad de cada rama de producción.
- Las copias de seguridad se ejecutan solo para las ramas de producción, las ramas de staging y desarrollo no se respaldan automáticamente.
- Se toma una nueva copia de seguridad como máximo una vez cada 24 horas por rama, y solo mientras la rama esté en ejecución.
- La rama debe tener un despliegue exitoso y activo; las ramas detenidas o eliminadas se omiten.
Retención
Las copias de seguridad automáticas siguen una política de retención de tipo padre-hijo:
- Se conserva cada copia de seguridad de los últimos 7 días (el nivel diario).
- Se conserva una copia de seguridad por semana (un "ancla semanal") durante hasta 3 meses.
- En el nivel gratuito, solo se conservan los últimos 7 días, el nivel semanal se omite.
Para una rama de producción respaldada diariamente, esto conserva aproximadamente 7 copias diarias más unas 12 copias semanales.
Las copias de seguridad manuales y las copias de seguridad importadas se conservan durante 90 días y no están sujetas a la depuración diaria/semanal anterior.
Crear una copia de seguridad manual
Puedes activar una copia de seguridad en cualquier momento, por ejemplo, antes de un despliegue importante o una migración de datos.
- Abre tu proyecto y ve a la pestaña Despliegues.
- Busca el despliegue del que deseas hacer una copia de seguridad y haz clic en Crear copia de seguridad.
- En la ventana modal Crear copia de seguridad manual, opcionalmente completa Nota (opcional) para etiquetar la copia de seguridad (por ejemplo
before migration). - Haz clic en Crear copia de seguridad.
La copia de seguridad se pone en cola y aparece en la pestaña Copias de seguridad una vez que finaliza. Las copias de seguridad manuales se almacenan en el mismo destino de copia de seguridad que las automáticas.
Una copia de seguridad manual también requiere un destino de copia de seguridad configurado. Si no se ha establecido ninguno, el trabajo de copia de seguridad fallará.
Generar un dump descargable desde un despliegue
Puedes generar un dump puntual directamente desde un despliegue en ejecución. Esto es útil para el desarrollo local, exportaciones rápidas o para mover datos a otro host.
- Abre tu proyecto y ve a la pestaña Despliegues.
- Busca el despliegue del que deseas obtener el dump y haz clic en Descargar copia de seguridad.
- En la ventana modal Descargar un dump, elige tus opciones:
- Tipo: elige Dump de base de datos neutralizado para pruebas/solución de problemas (desactiva el correo saliente, las acciones programadas y otras integraciones en vivo para que el dump sea seguro de ejecutar en un entorno que no sea de producción) o Dump exacto de la base de datos (una copia sin modificar).
- Filestore: elige Con Filestore (incluye adjuntos e imágenes) o Sin Filestore (un dump más pequeño, solo de la base de datos).
- Haz clic en Crear dump.
El dump se pone en cola y se te notifica cuando está listo. Aparece en la pestaña Copias de seguridad, donde puedes descargarlo.
Descargar una copia de seguridad existente
- Abre tu proyecto y ve a la pestaña Copias de seguridad.
- Busca en la lista la copia de seguridad que deseas.
- Haz clic en Solicitar descarga. Skysize prepara el archivo, y luego la acción se convierte en Descargar copia de seguridad.
La copia de seguridad se proporciona como un archivo .zip (un dump de Odoo que contiene la base de datos SQL y, salvo que se excluya, el filestore).
La descarga lee desde el destino de copia de seguridad del proyecto. Si el proyecto no tiene un destino de copia de seguridad configurado, la descarga no puede servirse.
Restaurar una copia de seguridad
Puedes restaurar cualquier copia de seguridad en cualquier rama de tu proyecto, no solo en la rama de la que se tomó. Un caso de uso común es restaurar una copia de seguridad de producción en staging para obtener datos de prueba realistas.
- Abre tu proyecto y ve a la pestaña Copias de seguridad.
- Busca la copia de seguridad que deseas restaurar.
- Haz clic en Restaurar.
- En la ventana modal Restore backup (Restaurar copia de seguridad), selecciona el destino Restore to branch (Restaurar en la rama).
- Confirma.
Durante una restauración, el contenedor de destino se detiene, su base de datos se reemplaza y el contenedor se reinicia con los datos restaurados.
Restaurar reemplaza toda la base de datos de la rama de destino. Cualquier dato que haya actualmente en esa rama se pierde. Si necesitas conservarlo, crea primero una copia de seguridad manual de la rama de destino.
Restaurar en una rama de producción sobrescribe la base de datos de producción en vivo y no se puede deshacer. En este caso, la ventana modal de restauración muestra una advertencia explícita.
Copia externa automática
En los planes de pago, Skysize puede copiar tus copias de seguridad de producción de forma programada a un bucket que te pertenece: Amazon S3, Google Cloud Storage, Cloudflare R2 o cualquier almacenamiento compatible con S3. Así tienes una segunda copia de tus datos fuera de la plataforma. No está disponible en el nivel gratuito ni durante una prueba.
La copia externa no cambia nada más: las copias de seguridad diarias, su retención y las restauraciones funcionan exactamente como se describe más arriba. Skysize solo escribe en tu bucket. Nunca borra nada de él y nunca restaura desde él.
Qué se copia
- Según la frecuencia que elijas (semanal, cada 2 semanas o mensual), Skysize toma la última copia de seguridad completa de la rama de producción del proyecto y la sube a tu bucket.
- Cada copia es un archivo
.zipcon la base de datos y el filestore. Es el mismo archivo que obtienes con Descargar copia de seguridad en la pestaña Copias de seguridad. - Las copias se ejecutan durante la noche, después de la copia de seguridad nocturna, en la hora local de la región del proyecto.
- En los proyectos en modo SaaS, cada base de datos tiene su propio archivo.
Los archivos se guardan en el bucket con esta estructura:
<prefix>/<nombre del proyecto>/<base de datos>/<AAAA-MM-DD>_<id de la copia>.zip
Configuración
Necesitas el rol de Admin en el proyecto.
- Crea un bucket en tu proveedor de almacenamiento y una clave de acceso para él (consulta Clave de acceso recomendada más abajo).
- Abre tu proyecto y ve a Settings (Configuración), sección Copia externa.
- Elige adónde enviar las copias y completa lo que pide ese proveedor:
- Amazon S3: el Bucket, su Región y una clave de acceso.
- Google Cloud Storage: el Bucket y una clave HMAC. Créala en la consola de Google Cloud en Cloud Storage, Configuración, Interoperabilidad, para una cuenta de servicio que pueda escribir en el bucket.
- Cloudflare R2: tu ID de cuenta de Cloudflare (aparece en la página de resumen de R2), el Bucket y un token de API de R2 con el permiso Object Read & Write en el bucket.
- Otro compatible con S3 (por ejemplo Wasabi, Backblaze B2, MinIO, OVHcloud o Scaleway): la URL del endpoint del proveedor (debe empezar por
https://), el Bucket, la Región si tu proveedor la usa, y una clave de acceso. Activa el Direccionamiento de tipo ruta (path-style) si tu proveedor lo pide. - Opcionalmente, una Carpeta dentro del bucket.
- Haz clic en Probar la conexión para comprobar que Skysize puede escribir en el bucket antes de guardar.
- Elige la frecuencia y haz clic en Guardar. La sección se pliega en un breve resumen; haz clic en él para volver a abrir la configuración.
- Haz clic en Copiar ahora para lanzar una primera copia de inmediato y comprobar que el archivo llega a tu bucket.
Para cambiar más tarde el destino o la frecuencia, haz clic en Editar. El interruptor Activada pausa y reanuda las copias sin cambiar el destino.
La clave secreta se guarda cifrada y no se vuelve a mostrar después de guardarla. Para cambiarla, introduce una nueva.
:::note Archivo de prueba en tu bucket
Probar la conexión escribe un pequeño archivo llamado .skysize-connectivity-probe en el bucket y lo deja ahí, porque una clave de solo escritura no puede borrarlo. Puedes borrarlo tú mismo cuando quieras.
:::
Clave de acceso recomendada
Crea una clave de acceso dedicada que solo pueda escribir en este bucket y prefijo: sin listar, sin leer, sin borrar. Si la clave se filtra, no sirve para leer ni para borrar tus copias. Activa también el versionado o el object lock en el bucket para que los archivos existentes no se puedan sobrescribir ni eliminar.
En AWS, una política IAM para una clave así tiene este aspecto (sustituye your-bucket y your-prefix):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:AbortMultipartUpload"
],
"Resource": "arn:aws:s3:::your-bucket/your-prefix/*"
}
]
}
s3:PutObject basta para los archivos grandes, que se suben en varias partes. s3:AbortMultipartUpload es opcional y permite limpiar una subida interrumpida. En Google Cloud Storage, da a la cuenta de servicio de la clave HMAC solo el rol Storage Object Creator en el bucket. Otros proveedores ofrecen claves restringidas similares; consulta su documentación.
Retención en tu bucket
Skysize no aplica ninguna retención a tu bucket y nunca borra las copias antiguas. Para controlar el espacio ocupado, añade en el bucket una regla de ciclo de vida (lifecycle rule) que haga caducar las copias después del periodo que quieras.
Estado y errores
La sección Copia externa muestra:
- la última copia correcta,
- el último error, con el mensaje devuelto por tu proveedor,
- el historial de copias.
Si una copia falla, los administradores del proyecto reciben una notificación, en el panel y por correo electrónico según sus preferencias de notificación. La copia se reintenta automáticamente.
Restaurar desde una copia externa
Skysize nunca restaura directamente desde tu bucket. Para usar una copia externa, descarga el .zip desde tu bucket y súbelo con Importar copia de seguridad en la pestaña Copias de seguridad. Consulta Importar una copia de seguridad de Odoo existente.