-
Notifications
You must be signed in to change notification settings - Fork 2
Description
📝 Summary
A short one-sentence summary of the task
Design and create a container image with file system access and tools to handle different types of restored VM filesystems including data within VM image.
🎯 Goal
What problem does this solve / what do we want to achieve?
Provide a standardized container environment that can access and serve files from various filesystem types commonly used in VMs (ext4, xfs, ntfs, etc.) and VirtualMachineInstance disks (qcow2 and raw). This solves the problem of filesystem compatibility and provides a consistent interface for file access regardless of the underlying VM filesystem format.
✅ Acceptance Criteria
What should be true when this task is done?
- Design accepted
- Container image supports common VM filesystem types (ext4, xfs, ntfs, btrfs, other ...)
- (Optional) Plugin architecture similar to Velero's allows extensibility for above filesystem types
- Container includes necessary filesystem utilities and drivers
- Support for read-only mounting to ensure data safety
- Functionality works as described
- Tests are added/updated
- Documentation is updated
📋 Proposed Steps / Notes
Outline how it can be done, if known
- Research common VM filesystem types and their access requirements used within KubeVirt
- Design plugin architecture for extensible filesystem support and decide if the container should follow pluggable architecture or should be all in one tool
- Create base container image with essential filesystem utilities (check the virt-launcher image as a base)
- Add filesystem detection and automatic plugin selection logic
- Implement read-only mounting mechanisms for data safety
Note: Integration of this contrainer with VMFR controller is a different task
🔗 Related
- Task [Task] Implement VirtualMachineFileRestore Controller #4 depends on this one.
⚖️ Effort / Priority
- Effort: L
- Priority: High