EXECUTE / FILE 19
19. Migration playbook
Draw the end state, then the path. Migration risk is the number one silent objection.
Phase 0: Assess (week 1)
- Inventory per source: TB, object count, average size, largest object, storage class (Glacier needs restore first), versioning, Object Lock, tags/ACLs in use.
- Network: available bandwidth, windows, egress costs at source.
- Apps: which read/write the data; how endpoints and keys are configured.
- Compliance: residency, encryption, retention locks at source (locked source objects cannot be deleted after copy).
Output: migration sheet with TB per lane and target dates.
Phase 1: Choose lanes
| Lane | When | Tool | Notes |
|---|---|---|---|
| Universal Data Migration (UDM) | Cloud, NAS, SAN, tape, drives, cloud drives (Dropbox, Box, Google Drive, M365), MAM/DAM | Backblaze-managed | Requires qualifying commitment; Backblaze helps offset egress and transfer costs; MD5 byte-for-byte verification; white-glove |
| Self-serve online | Under ~100 TB or good bandwidth | rclone, aws s3 sync, s5cmd, backup software re-seed | Parallelism is the main lever |
| Fireball | Slow links, 10s of TB per batch | 96 TB Synology NAS, 1GbE/10GbE RJ-45 | Security deposit + non-refundable shipping + per-30-day rental, not prorated; ships from US; Backblaze uploads and verifies, then wipes |
| Backup re-seed | Backup chains | Veeam/Commvault/etc. | Often better to start new chains on B2 and age out old |
Phase 2: Pilot (week 2)
- Move 1 to 5 percent including the largest and smallest objects.
- Validate: count, bytes, checksums, app read/write against B2 endpoint.
- Measure throughput; extrapolate.
Phase 3: Bulk move
- Run lanes in parallel. Track daily TB moved vs plan.
- For S3 sources, consider S3 Batch Operations or rclone from compute in the same region as the source to maximize throughput. [egress still applies unless UDM covers it]
Phase 4: Delta and dual-write
- Option A: app writes to both for N days.
- Option B: final delta sync during a short freeze.
- Option C: read-through: app reads B2 first, falls back to source.
Phase 5: Cutover
- Change endpoint and keys in config. Use DNS or config management, not hand edits.
- Keep source read-only 30 days. Then delete per policy.
Phase 6: Verify and close
rclone check --one-wayor manifest diff.- Sign-off document: counts, bytes, checksum sample, app tests.
Fireball mechanics (docs, checked 2026-10-14)
- Order through Support.
- Receive Synology NAS plus drives; install drives.
- Connect via ethernet; find with Synology Assistant.
- Copy data (some backup ISVs require loading with their tools).
- Remove drives, repack, ship back.
- Backblaze uploads to B2, verifies, clears the NAS. Email notices at each step. International: contact Support.
Risk register
| Risk | Mitigation |
|---|---|
| Source egress bill | UDM subsidy with commit; move from in-region compute |
| Glacier objects | Restore in advance; budget retrieval |
| Naming incompatibility | Check B2 naming rules; rename map |
| Tag/ACL dependency | Replace with prefixes/manifests; bucket-level public/private |
| App downtime | Dual-write / read-through |
| Integrity | MD5 verification (UDM), rclone check |
| Locked source data | Copy but cannot delete until expiry; budget overlap |
Proof
Segmed: 750 TB for AI medical imaging. Eagles: LTO to cloud. ACL: 4,000+ hours of tape. Jazz at Lincoln Center: 1.3 PB, 400+ hard drives.