Passer au contenu principal

Stockage et sauvegardes

Kanera contient deux éléments que vous ne pouvez pas régénérer : la base de données PostgreSQL et les fichiers téléchargés. Décidez où chacun vit avant d'inviter des gens à entrer.

Stockage de téléchargement​

Par défaut, les fichiers téléchargés sont stockés dans le kanera_uploads Volume Docker.

Pour un stockage compatible S3, définissez :

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

Lorsque les valeurs S3 requises sont définies, S3 a priorité sur le stockage de téléchargement local.

Les administrateurs de l'organisation peuvent également choisir un disque local ou S3 parmi Paramètres -> Organisation -> Stockage dans l'application, sous Back-end de stockage. Les valeurs d'environnement sont prioritaires et la page marque les contrôles en lecture seule lorsqu'ils sont définis.

Kanera auto-hébergé n'a pas de quota de stockage, donc la capacité des pièces jointes est celle fournie par le volume ou le compartiment. Le volume et la conservation des fichiers déterminent généralement davantage les besoins en disque que Kanera lui-même, alors soyez vigilant sur la croissance du disque. La même page de stockage indique la quantité utilisée par chaque espace de travail et permet aux administrateurs de rechercher et de supprimer des fichiers volumineux ou anciens, y compris ceux des cartes archivées. Voir Stockage.

Sauvegardes​

Sauvegardez les deux :

DonnéesEmplacement
Données PostgreSQLkanera_pgdata Volume Docker.
Fichiers téléchargéskanera_uploads Volume Docker, sauf si le stockage S3 est configuré.

Sauvegarde manuelle PostgreSQL :

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

Kanera peut également exécuter des sauvegardes PostgreSQL complètes chiffrées sur un stockage compatible 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

Le service de sauvegarde compresse le dump, le chiffre avec GPG AES-256 symétrique, le télécharge sur S3 et efface les anciennes sauvegardes après des téléchargements réussis. Magasin DB_BACKUP_ENCRYPTION_PASSPHRASE un endroit durable en dehors du déploiement également ; il est nécessaire de restaurer les sauvegardes.

Conservez les sauvegardes de la base de données et des fichiers téléchargés hors du disque principal du serveur. Une sauvegarde sur le même volume que les données ne survit pas à la panne pour laquelle elle existe.

Des secrets à garder​

La perte de ces coûts vous coûte des données plutôt que du temps de disponibilité :

ValeurS'il change ou est perdu
DB_BACKUP_ENCRYPTION_PASSPHRASELes sauvegardes chiffrées existantes ne peuvent pas être restaurées.
SECRETS_ENCRYPTION_KEYLes informations d'identification d'intégration stockées, telles que la destination du chat et les secrets personnels du webhook, ne peuvent plus être déchiffrées.
MFA_ENCRYPTION_KEYLes authentifiants inscrits et les défis MFA en suspens deviennent invalides.
MEDIA_SIGNING_SECRETLes URL de médias signés existants ne sont plus résolus.
JWT_SECRETTout le monde est déconnecté.