All notes
Cloud & Linux

SupaAI.cloud — Production Backup Architecture

SupaAI.cloud — Production Backup Architecture

Updated: October 11, 2026
Server: vmsuperai
Platform: Microsoft Azure — Canada Central

1. Backup Architecture

Rendering diagram…

2. Backup Coverage

ComponentIncluded
PostgreSQL databaseYes
Uploaded images and filesYes
Production runtime configurationYes
Application source codeGit repository
Nginx configurationNot included
PM2 and systemd configurationNot included
Complete virtual machineNot included

3. Automatic Schedule

  • Backup time: Daily at 8:30 PM Toronto time
  • VM shutdown: 11:00 PM
  • Available window: 2 hours 30 minutes
  • Systemd timer: supaai-backup.timer
  • Service: supaai-backup.service
  • Authentication: Azure Managed Identity
  • Encryption: age

4. Azure Storage

Storage account: azureblogstorage20260526
Container: supaai-backups
Backup folder: daily/

The VM's system-assigned Managed Identity has the Storage Blob Data Contributor role scoped to the backup container.

5. First Successful Backup

Date: October 11, 2026
Time: 6:39 PM Toronto time

Archive:

supaai-20261011T223947Z-5LNcbrwT.tar.age

The encrypted archive was successfully uploaded, downloaded, and decrypted. Full checksum verification and an isolated database restore remain to be confirmed.

6. Operational Commands

Check the backup timer:

systemctl list-timers --all supaai-backup.timer

Check the latest successful backup:

sudo cat /var/lib/supaai-backup/last-success

Review backup logs:

sudo journalctl -u supaai-backup.service -n 50 --no-pager

Run a manual backup:

sudo systemctl start supaai-backup.service

7. Disaster Recovery Strategy

Layer 1 — Application Backup (Configured)

Recover PostgreSQL data, uploaded files, and production runtime configuration from an encrypted Azure Blob backup.

Layer 2 — Git Repository (Existing)

Redeploy the application source code and deployment scripts.

Layer 3 — Azure VM Backup (Recommended)

Protect the entire operating system, installed software, and server configuration. This additional backup layer is not yet configured.

8. Outstanding Tasks

  • Verify archive SHA-256 checksums.
  • Test PostgreSQL restoration in an isolated environment.
  • Secure an off-VM copy of the age private recovery key.
  • Configure Azure Blob soft delete and lifecycle retention.
  • Consider enabling Azure VM Backup.
  • Verify the first scheduled 8:30 PM backup.
Back to the notebook