XenAPI: migrate ephemeral disks instead of re-creating
When migrating, the xenapi driver currently drops the ephemeral disk, and re-creates it on the destination. This doesn't really fit the use cases properly, we should migrate both the root and ephemeral disks.
If machine is dead, use evacuate:
* volume root disk: reattach
* other disks: re-create, or download from glance
if machine is alive, use migrate:
* attempt to move disks to new host
* optionally turn off the VM to reduce stress on server
Where machine can still run a VM, as failure is not iminent, attempt live-migrate:
* only works with VM running (XenAPI limitation)
* does put a lot of stress on servers with mirroring the disk while copying the disk
Note: currently in the above middle migrate case, the ephemeral disk is deleted, rather than migrated. This blueprint aims to fix this, so the above use cases all make more sense.
Snapshots still do not backup the ephemeral disk, but this data should be kept during migrates, as this should just be a "maintenance" operation that is as transparent to the user as possible.
For consistency, this also means we should correctly resize ephemeral disk, rather than delete then re-create them on the destination.
Blueprint information
- Status:
- Complete
- Approver:
- Russell Bryant
- Priority:
- Low
- Drafter:
- John Garbutt
- Direction:
- Approved
- Assignee:
- John Garbutt
- Definition:
- Approved
- Series goal:
- Accepted for icehouse
- Implementation:
- Implemented
- Milestone target:
- 2014.1
- Started by
- John Garbutt
- Completed by
- John Garbutt
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
xenapi: migrate multiple ephemeral disks
Addressed by: https:/
xenapi: make _migrate_
Addressed by: https:/
xenapi: revert on _migrate_
Addressed by: https:/
xenapi: simplify _migrate_
Work Items
Work items:
Enable migrate with ephemeral disks: DONE
Explicity disable resize of ephemeral disk: DONE
Dependency tree
* Blueprints in grey have been implemented.