-
Feature Request
-
Resolution: Unresolved
-
Undefined
-
None
-
False
-
False
-
Feature Request Overview (mandatory - Complete while in New status)
- What user goal or problem do you need to solve? The user goal is to perform a parallel cloud migration using os-migrate with external mechanisms for VM disk and volume data copy. The current process is fragmented, requiring the cloud administrator to manually perform critical, error-prone steps outside of the os-migrate tool. This manual intervention for unmanaging and managing volumes, and coordinating the data copy, adds significant complexity and risk to the migration. We need to solve the problem of this disjointed workflow by integrating and automating these manual steps directly into os-migrate.
Current Cloud Migration Workflow
The current process for a parallel cloud migration using os-migrate with external data copy is a multi-step workflow that requires manual intervention from the cloud administrator. This flow, as shown in the attached diagram, is as follows:
Conversion Host Deployment: The user deploys a conversion host, either manually via OpenStack APIs or using os-migrate playbooks.
- Credentials Provisioning: The user provides the necessary OpenStack credentials for both the source and destination clouds.
- Virtual Machine List: A list of virtual machines to be migrated is provided to the system.
- Pre-Workload Migration: os-migrate performs a pre-workload migration, copying applicable resources (e.g., networks, security groups, images) to the destination cloud while workloads continue to run in the source environment.
- Manual Volume Unmanagement: The cloud administrator manually unmanages the volumes in the source cloud using the cinder unmanage command.
- External Data Copy: The cloud administrator uses an external tool or mechanism to copy the volume data from the source to the destination.
- Manual Volume Management: The cloud administrator manually manages the volumes in the target cloud using the cinder manage command, obtaining new volume UUIDs in the process.
- Workload Migration: Finally, os-migrate performs the workload migration, which involves stopping usage of applicable resources in the source cloud and moving them to the destination, including the VMs and the newly managed volumes.

Business justification (mandatory - Complete while in New status)
- How would this feature benefit the customer? This feature would provide a massive improvement in the user experience for cloud administrators by delivering a streamlined, automated, and more reliable migration process. By consolidating the manual steps into os-migrate, customers will save considerable time and effort, reducing the potential for human error that could lead to data loss or migration failures. A more reliable and efficient tool increases customer confidence, accelerates project timelines, and reduces operational overhead. This directly translates to lower costs and faster completion of complex migration projects, enhancing the overall value proposition of os-migrate.
Functional requirements (mandatory - Complete while in New status)
- What do you want the result of this feature to be? Add as many requirements as needed.
- Automated Volume Unmanagement: os-migrate must be able to automatically unmanage volumes from the source cloud's Cinder service as part of its execution flow.
- Orchestrated Data Copy: The tool must be able to orchestrate the external data copy process. This includes pausing its own execution to wait for the external copy mechanism to complete and providing a clear status to the user.
- Automated Volume Management: os-migrate must be able to automatically manage the copied volumes on the destination cloud's Cinder service, assigning new UUIDs and making them available for the final workload migration.
- UUID Mapping and Tracking: The tool needs to automatically generate and maintain a persistent mapping between the original source volume UUIDs and the new destination volume UUIDs for all volumes being migrated. This mapping must be accessible for the final workload migration step to ensure correct volume attachment.
- Simplified Playbook/Command: The new functionality should be exposed via a simple, single command or playbook that handles all steps (unmanage, copy orchestration, manage) in the correct sequence.
- Configurable External Copy Hook: The tool should include a configurable parameter or hook in its playbook to allow the user to define and execute their preferred external data copy command or script.