vexxhost / vexxhost/migratekit
Feature Request: Detect and Optimize for Thin-Provisioned VMDKs
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 138
- Forks
- 40
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Description
Feature Summary:
Enhance MigrateKit to detect thin-provisioned VMDKs and optionally optimize data transfer by skipping unused or zeroed blocks, reducing migration time and storage usage.
Why It's Needed:
Currently, MigrateKit transfers all allocated blocks, regardless of actual usage. For thin-provisioned disks, this leads to inefficiencies, especially when most of the disk is unused. Detecting thin-provisioned disks and integrating sparse-aware copy logic would make migrations faster and more bandwidth-efficient.
Proposed Enhancements:
Detection of VMDK type (thin/thick):
Use pyVmomi to inspect VirtualDiskFlatVer2BackingInfo.thinProvisioned.
Log provisioning type during pre-migration checks.
Sparse-aware Copying (Optional Feature Flag):
Enable a --sparse-aware flag to:
Skip zeroed blocks,
Or use APIs that natively support sparse copies (if VDDK allows).
Logging & Warnings:
Warn when thick disks are encountered (optional),
Provide a report of total vs used disk space to visualize savings.
Benefits:
Reduced migration time,
Lower bandwidth usage,
Improved performance especially for large, thin-provisioned VMs.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the pre-migration checks and current VMDK transfer path, then review how pyVmomi exposes VirtualDiskFlatVer2BackingInfo.thinProvisioned and whether VDDK supports sparse copies. Done means thin and thick disks are detected and logged, the --sparse-aware behavior is defined and validated, and reporting or warnings match the agreed scope.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, python
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100