Skip to content

docs: Add volume-level snapshot workflow walkthrough#38

Closed
Copilot wants to merge 2 commits intofeature/CSTACKEX-18_2from
copilot/workflow-volume-snapshots
Closed

docs: Add volume-level snapshot workflow walkthrough#38
Copilot wants to merge 2 commits intofeature/CSTACKEX-18_2from
copilot/workflow-volume-snapshots

Conversation

Copy link

Copilot AI commented Mar 9, 2026

CloudStack's volume snapshot orchestration spans many layers and classes with non-obvious branching — this adds a single reference document that traces the full path from API call to storage execution.

What's added

docs/volume-snapshot-workflow.md — 11-step sequential walkthrough of the snapshot lifecycle:

  • API → Allocation: CreateSnapshotCmd two-phase async create/execute; allocSnapshot() sets up DB record and resource limits
  • Validation & dispatch: takeSnapshotInternal() resolves policies, zones, pool IDs; branches on VM attachment — attached volumes serialize through VmWorkTakeVolumeSnapshot job queue, detached volumes execute directly
  • Orchestration: orchestrateTakeVolumeSnapshot() builds CreateSnapshotPayload; special-cases live encrypted volumes on StorPool primary storage
  • Strategy selection: SnapshotManagerImpl queries StorageStrategyFactory — priority-ordered across StorPoolSnapshotStrategy, StorageSystemSnapshotStrategy, DefaultSnapshotStrategy, Ceph, ScaleIO
  • Primary storage execution: SnapshotServiceImpl drives async PrimaryDataStoreDriver.takeSnapshot() via AsyncCallFuture; handles volume state transitions
  • Backup path: configurable sync/async secondary backup; StorPool cross-zone copy via native export → remote-copy → reconcile cycle with partial-failure recovery persisted in snapshot_details
  • Post-processing: snapshot policy retention, zone/pool replication, delta size resource limit correction, usage events
  • Rollback: resource limit rollback on any exception; async backup retry exhaustion triggers cleanupOnSnapshotBackupFailure(); StorPool exports persisted under SP_RECOVERED_SNAPSHOT for cleanup recovery

Also includes a text-form sequence diagram, class/role reference table, and key configuration parameters.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: sandeeplocharla <85344604+sandeeplocharla@users.noreply.github.com>
Copilot AI changed the title [WIP] Add workflow for volume level snapshots in Cloudstack docs: Add volume-level snapshot workflow walkthrough Mar 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants