Inhaltsverzeichnis
Runbook: Config-Backup
Trajanje: ~5 minut
Vloga: Sistemski administrator
Pogostost: Po vsaki spremembi, tedensko
Varnostna kopija konfiguracije Gateway in certifikatov.
Potek dela
flowchart TD
A[Začetek] --> B[Identificiraj datoteke]
B --> C[Ustvari arhiv]
C --> D[Kopiraj na varnostno shrambo]
D --> E[Preveri celovitost]
E --> F{V redu?}
F -->|Da| G[Dokumentiraj]
F -->|Ne| H[Ponovno shrani]
style G fill:#e8f5e9
style H fill:#ffebee
1. Datoteke za varnostno kopijo
| Datoteka/Mapa | Opis | Kritično |
| ————– | ————– | ———- |
appsettings.json | Glavna konfiguracija | V |
appsettings.Production.json | Produkcijska povozitev | V |
certs/ | TLS certifikati | V |
data/*.db | SQLite podatkovne baze | V |
.env | Okoljske spremenljivke (če obstajajo) | V |
2. Ročna varnostna kopija
Linux:
#!/bin/bash # backup-gateway.sh GATEWAY_DIR="/opt/data-gateway" BACKUP_DIR="/backup/gateway" DATE=$(date +%Y%m%d_%H%M%S) BACKUP_FILE="gateway-config-${DATE}.tar.gz" # Ustvari arhiv tar -czvf "${BACKUP_DIR}/${BACKUP_FILE}" \ -C "${GATEWAY_DIR}" \ appsettings.json \ appsettings.Production.json \ certs/ \ data/ # Ustvari kontrolno vsoto sha256sum "${BACKUP_DIR}/${BACKUP_FILE}" > "${BACKUP_DIR}/${BACKUP_FILE}.sha256" # Izbriši stare varnostne kopije (starejše od 30 dni) find "${BACKUP_DIR}" -name "gateway-config-*.tar.gz" -mtime +30 -delete echo "Varnostna kopija ustvarjena: ${BACKUP_FILE}"
Windows (PowerShell):
# backup-gateway.ps1 $GatewayDir = "%GATEWAY_ROOT%" $BackupDir = "D:\Backup\Gateway" $Date = Get-Date -Format "yyyyMMdd_HHmmss" $BackupFile = "gateway-config-$Date.zip" # Ustvari arhiv Compress-Archive -Path @( "$GatewayDir\appsettings.json", "$GatewayDir\appsettings.Production.json", "$GatewayDir\certs", "$GatewayDir\data" ) -DestinationPath "$BackupDir\$BackupFile" # Kontrolna vsota Get-FileHash "$BackupDir\$BackupFile" -Algorithm SHA256 | Select-Object Hash | Out-File "$BackupDir\$BackupFile.sha256" # Izbriši stare varnostne kopije (starejše od 30 dni) Get-ChildItem "$BackupDir\gateway-config-*.zip" | Where-Object { $_.LastWriteTime -lt (Get-Date).AddDays(-30) } | Remove-Item Write-Host "Varnostna kopija ustvarjena: $BackupFile"
3. Avtomatizirana varnostna kopija
Linux (Cron):
# /etc/cron.d/gateway-backup 0 2 * * * root /opt/scripts/backup-gateway.sh >> /var/log/gateway-backup.log 2>&1
Windows (Task Scheduler):
# Ustvari nalogo $Action = New-ScheduledTaskAction -Execute "PowerShell.exe" ` -Argument "-File %SCRIPTS_PATH%\backup-gateway.ps1" $Trigger = New-ScheduledTaskTrigger -Daily -At 2:00AM $Principal = New-ScheduledTaskPrincipal -UserId "SYSTEM" -RunLevel Highest Register-ScheduledTask -TaskName "Gateway Backup" ` -Action $Action -Trigger $Trigger -Principal $Principal
4. Varnostna kopija na oddaljeno shrambo
Rsync (Linux → NAS):
rsync -avz --delete \ /backup/gateway/ \ user@nas.example.com:/volume1/backups/gateway/
AWS S3:
aws s3 cp /backup/gateway/gateway-config-*.tar.gz \ s3://my-backups/gateway/ \ --storage-class STANDARD_IA
Azure Blob:
az storage blob upload \
--account-name mybackups \
--container-name gateway \
--file /backup/gateway/gateway-config-*.tar.gz \
--name gateway-config-$(date +%Y%m%d).tar.gz
5. Obnovitev
# Linux cd /opt/data-gateway tar -xzvf /backup/gateway/gateway-config-20241215.tar.gz # Obnovi dovoljenja chown -R datagateway:datagateway /opt/data-gateway chmod 600 /opt/data-gateway/certs/* # Ponovno zaženi Gateway sudo systemctl restart data-gateway
# Windows Expand-Archive -Path "D:\Backup\Gateway\gateway-config-20241215.zip" ` -DestinationPath "%GATEWAY_ROOT%" -Force Restart-Service -Name "DataGateway"
6. Kontrolni seznam
| # | Točka preverjanja | V |
| — | ———– | — |
| 1 | appsettings.json shranjen | |
| 2 | Certifikati shranjeni | |
| 3 | SQLite baze shranjene | |
| 4 | Kontrolna vsota ustvarjena | |
| 5 | Kopirano na oddaljeno shrambo | |
| 6 | Obnovitev testirana |
Odpravljanje težav
| Težava | Vzrok | Rešitev |
| ——— | ——— | ——– |
Permission denied | Manjkajoče pravice | Izvedi kot root/Admin |
No space left | Shramba polna | Izbriši stare varnostne kopije |
Checksum mismatch | Pokvarjen arhiv | Ponovno shrani |
| Obnovitev neuspešna | Napačna dovoljenja | Izvedi chown/chmod |
Najboljše prakse
Pravilo 3-2-1 za varnostne kopije:
- 3 kopije podatkov
- 2 različna medija (lokalno + oblak)
- 1 kopija izven lokacije
Povezani Runbooks
- DSN-Export - Varnostna kopija DSN definicij
- Obnova certifikata - Shrani pred obnovo
- Zagon strežnika - Po obnovitvi
« <- Varnostne kopije | -> DSN-Export »
Wolfgang van der Stille @ EMSR DATA d.o.o. - Data Gateway Professional
Zuletzt geändert: dne 29.01.2026 ob 23:35