Backups
OPanel respalda los sitios con restic: instantáneas incrementales, deduplicadas y cifradas. El backup de cada sitio vive en su propio repositorio cifrado, así que la filtración de una credencial de un destino nunca expone en claro los datos de otro cliente.
Destinos
Sección titulada «Destinos»En Admin → Backups, agrega uno o más destinos:
| Tipo | Qué es |
|---|---|
| Local | Una carpeta en el propio nodo (o un volumen montado) |
| S3-compatible | Cualquier bucket compatible con S3 — AWS S3, Backblaze B2, Wasabi, MinIO y similares |
El primer destino que agregas se vuelve el predeterminado. Un destino no se puede eliminar mientras un plan o un sitio lo sigan usando; sus repositorios de restic permanecen en el almacenamiento de todos modos.
Políticas por plan
Sección titulada «Políticas por plan»Cada plan lleva una política de backups: si están activados, un horario cron en UTC, la retención, y si se incluyen volcados de bases de datos junto con los archivos.
| Campo | Para qué sirve |
|---|---|
schedule |
Expresión cron en UTC; las corridas van separadas por al menos una hora |
retention |
Cuántas instantáneas conservar, según keepLast, keepHourly, keepDaily, keepWeekly, keepMonthly, keepYearly |
includeDatabases |
Respaldar las bases de datos del sitio (mariadb-dump --single-transaction) junto con sus archivos |
manualPerDay |
Cuántos backups pueden iniciar a mano los propios usuarios del sitio en 24 horas |
features.backups y features.backupRetentionDays del plan deciden si el plan incluye backups y
el tope externo de cuánto se conservan las instantáneas. Los operadores pueden sobrescribir
cualquiera de estos campos para un sitio individual sin tocar el plan.
Ejecutar y restaurar
Sección titulada «Ejecutar y restaurar»Los clientes con permiso ven el estado de backup de su sitio, disparan un backup manual (dentro del límite diario de su plan) y restauran por su cuenta:
- El sitio completo
- Solo archivos, o un archivo o carpeta puntual
- Solo la base de datos
Las restauraciones corren como una tarea que el cliente puede seguir en tiempo real. Lo que una
restauración reemplaza no se borra — se mueve primero a la papelera del servidor, así que una
restauración hecha por error también es recuperable dentro de la ventana de retención de la
papelera del clúster (trashRetentionHours en la configuración de la plataforma, 72 horas por
defecto).
Ajustes que puede hacer el operador
Sección titulada «Ajustes que puede hacer el operador»El personal puede respaldar cualquier sitio bajo demanda, sin el límite diario del cliente, y puede sobrescribir el horario, la retención o el destino de un sitio de forma independiente de su plan — útil para un cliente que pagó retención extra, o una migración que quieres respaldar de forma más agresiva durante el corte.
| Tarea | Solicitud |
|---|---|
| Listar destinos de backup | GET /api/v1/backup-destinations |
| Agregar/editar un destino | POST / PATCH /api/v1/backup-destinations/{id} |
| Leer/fijar la política de un plan | GET, PUT /api/v1/plans/{id}/backup-policy |
| Sobrescribir la política de un sitio | PATCH /api/v1/sites/{id}/backup-policy |
| Iniciar un backup | POST /api/v1/sites/{id}/backups |
| Listar instantáneas | GET /api/v1/sites/{id}/backups/snapshots |
| Restaurar | POST /api/v1/sites/{id}/restores |
Ver Backups y cron para la versión de esta página orientada al cliente.