Saltar al contenido principal

Almacenamiento y copias de seguridad

Kanera contiene dos cosas que no puedes regenerar: la base de datos PostgreSQL y los archivos cargados. Decide dónde vive cada uno antes de invitar a otras personas.

Cargar almacenamiento​

De forma predeterminada, los archivos cargados se almacenan en el kanera_uploads Volumen acoplable.

Para almacenamiento compatible con S3, configure:

S3_REGION=auto
S3_BUCKET=kanera
S3_ACCESS_KEY_ID=...
S3_SECRET_ACCESS_KEY=...
S3_ENDPOINT=https://s3.example.com
S3_PUBLIC_URL_PREFIX=https://cdn.example.com/kanera

Cuando se establecen los valores de S3 requeridos, S3 tiene prioridad sobre el almacenamiento de carga local.

Los administradores de la organización también pueden elegir el disco local o S3 desde Configuración -> Organización -> Almacenamiento en la aplicación, debajo back-end de almacenamiento. Los valores del entorno tienen prioridad y la página marca los controles como de solo lectura cuando están configurados.

Kanera autohospedado no tiene cuota de almacenamiento, por lo que la capacidad de los archivos adjuntos es cualquiera que proporcione el volumen o depósito. El volumen y la retención de archivos generalmente aumentan los requisitos de disco más que el propio Kanera, por lo que debe estar alerta sobre el crecimiento del disco. La misma página de Almacenamiento muestra cuánto usa cada espacio de trabajo y permite a los administradores buscar y eliminar archivos grandes o antiguos, incluidos los de tarjetas archivadas. Ver Almacenamiento.

Copias de seguridad​

Haga una copia de seguridad de ambos:

DatosUbicación
datos postgresqlkanera_pgdata Volumen acoplable.
Archivos cargadoskanera_uploads Volumen de Docker, a menos que esté configurado el almacenamiento S3.

Copia de seguridad manual de PostgreSQL:

docker compose exec -T postgres pg_dump -U kanera kanera | gzip > kanera-$(date +%F).sql.gz

Kanera también puede ejecutar copias de seguridad completas cifradas de PostgreSQL en un almacenamiento compatible con S3:

DB_BACKUPS_ENABLED=true
DB_BACKUP_ENCRYPTION_PASSPHRASE=<openssl rand -hex 32>
DB_BACKUP_TIMES_UTC=00:15,12:15,16:45
DB_BACKUP_RETENTION_DAYS=14
DB_BACKUP_S3_PREFIX=backups/postgres

El servicio de copia de seguridad comprime el volcado, lo cifra con GPG AES-256 simétrico, lo carga en S3 y elimina las copias de seguridad antiguas después de cargas exitosas. Tienda DB_BACKUP_ENCRYPTION_PASSPHRASE también en algún lugar duradero fuera del despliegue; es necesario restaurar las copias de seguridad.

Mantenga las copias de seguridad de la base de datos y de los archivos cargados fuera del disco principal del servidor. Una copia de seguridad en el mismo volumen que los datos no sobrevive al fallo por el que existe.

Secretos que vale la pena guardar​

Perder estos le cuesta datos en lugar de tiempo de actividad:

ValorSi cambia o se pierde
DB_BACKUP_ENCRYPTION_PASSPHRASELas copias de seguridad cifradas existentes no se pueden restaurar.
SECRETS_ENCRYPTION_KEYLas credenciales de integración almacenadas, como el destino del chat y los secretos del webhook personal, ya no se pueden descifrar.
MFA_ENCRYPTION_KEYLos autenticadores inscritos y las impugnaciones de MFA pendientes dejan de ser válidos.
MEDIA_SIGNING_SECRETLas URL de medios firmadas existentes dejan de resolverse.
JWT_SECRETTodos han cerrado sesión.