Publish curated Knowledge Hub source from 2ed833f290b439a7bc91e5fd19b042c269e3bee9
This commit is contained in:
1 parent
10f2edcd29
commit
59f15b2d08
218 files changed
+23995
-1849
No files matched your search
@@ -65,20 +65,46 @@ af.
|
||||
|
||||
### Stap 2 — herstellen
|
||||
|
||||
Maak eerst een **beschrijfbare herstelkopie** van de gekozen back-up; herstel neemt een
|
||||
exclusieve opslaglease en schrijft achteraf een herstelbewijs naast het manifest. Geef
|
||||
de CLI de doelconnectie via een door de operator beheerd geheimenbestand, niet via een
|
||||
argument met het wachtwoord erin. Op Unix moet dat bestand alleen voor de restoregebruiker
|
||||
leesbaar zijn (`chmod 600` of `chmod 400`); op Windows beperk je de ACL tot de restore-
|
||||
operator/serviceaccount. Het bestand bevat één PostgreSQL-connectiereeks. De
|
||||
integriteitssleutel moet eveneens beschikbaar zijn in de geconfigureerde Keys-map.
|
||||
Haal de exacte `backup-integrity.key` uit beschermde externe escrow; herstel vertrouwt
|
||||
geen sleutel die alleen in de back-upkopie zit. De restore verifieert de manifest-
|
||||
handtekening en kopieert de vermelde bestanden eerst naar een privé-stagingmap binnen
|
||||
het lege doelbijlagenvolume. Reserveer daar vrije ruimte voor ten minste de volledige
|
||||
back-upinhoud. De restore gebruikt uitsluitend die geverifieerde snapshot.
|
||||
|
||||
```bash
|
||||
docker run --rm \
|
||||
--network itworx-knowledge-hub_knowledge-hub-internal \
|
||||
-v knowledge-hub-backups:/var/lib/knowledge-hub/backups:ro \
|
||||
-v <beschrijfbare-herstelkopie>:/var/lib/knowledge-hub/backups:rw \
|
||||
-e KnowledgeHub__Paths__Backups=/var/lib/knowledge-hub/backups \
|
||||
-v <map-met-backup-integriteitssleutel>:/var/lib/knowledge-hub/keys:ro \
|
||||
-e KnowledgeHub__Paths__Keys=/var/lib/knowledge-hub/keys \
|
||||
-v <beveiligd-doelconnectiebestand>:/run/secrets/restore-target-connection:ro \
|
||||
-v <doel-bijlagen-volume>:/var/lib/knowledge-hub/attachments \
|
||||
itworx/knowledge-hub:local \
|
||||
dotnet ItWorx.KnowledgeHub.Api.dll \
|
||||
--restore \
|
||||
--backup-id=<back-up-id> \
|
||||
--target-connection="Host=<doel-db-host>;Port=5432;Database=<doel-db>;Username=<gebruiker>;Password=<wachtwoord>" \
|
||||
--target-connection-file=/run/secrets/restore-target-connection \
|
||||
--target-attachments=/var/lib/knowledge-hub/attachments
|
||||
```
|
||||
|
||||
De echte herstel-drill haalt de back-up via SSH op, maar leest de integriteitssleutel
|
||||
uit een lokaal door de operator beheerd escrowbestand. Geef alleen het bestandspad mee;
|
||||
de drill maakt tijdens uitvoering een tijdelijke kopie met modus `0600` en verwijdert
|
||||
die bij opruimen:
|
||||
|
||||
```bash
|
||||
KNOWLEDGE_HUB_BACKUP_INTEGRITY_KEY_FILE=/secure/escrow/backup-integrity.key \
|
||||
bash scripts/v2-r4-real-backup-restore-drill.sh <back-up-id>
|
||||
```
|
||||
|
||||
De doeldatabase moet **leeg** zijn — herstel weigert expliciet als er al rijen in
|
||||
staan, om nooit per ongeluk bestaande gegevens te vermengen met herstelde gegevens.
|
||||
|
||||
@@ -86,7 +112,8 @@ Het proces rapporteert per tabel het aantal herstelde versus verwachte rijen, he
|
||||
aantal herstelde bijlagen, en sluit af met `GESLAAGD` of `MISLUKT`
|
||||
(afsluitcode 0 respectievelijk 1). Een `MISLUKT`-resultaat laat expliciet zien welke
|
||||
tabel niet overeenkomt — er wordt nooit stilzwijgend een onvolledig herstel als
|
||||
geslaagd gerapporteerd.
|
||||
geslaagd gerapporteerd. Providerfoutdetails worden niet afgedrukt omdat die
|
||||
connectiegegevens kunnen bevatten.
|
||||
|
||||
## Opstartgedrag en migraties
|
||||
|
||||
|
||||
Reference in new issue
Block a user