Support migration and evacuation for Ironic driver
Currently, migrate() and evacuate() APIs are not supported in ironic driver.
This BP aims at implementing these two APIs in ironic driver.
IIUC, for VMs (such as libvirt driver),
- migrate: Migrate a VM from compute node A to compute node B.
- evacuate: Migrate all VMs on compute node A to other compute nodes.
So, migrate is an operation to a VM, and evacuate is an operation to a compute node.
To baremetals, there are two things we need to handle:
1. When a baremetal is broken, migrate it to another backup baremetal. This means use another baremetal to replace it. (migrate)
2. When a compute node is broken, evacuate all instances on that node to another compute node. (evacuate)
Correspondingly, two steps to implement these features mentioned above:
step-1. Add baremetal migration feature into nova to integrate the Ironic BP[1],
step-2. Improve the nova-evacuate to evacuate the failed baremetal compute node,
it will be a long term plan.
This BP depends on the following Ironic BP.
[1]https:/
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Tang Chen
- Direction:
- Needs approval
- Assignee:
- xiexs
- Definition:
- Superseded
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Matt Riedemann
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Baremetal migration and evacuation
Gerrit topic: https:/
Addressed by: https:/
Baremetal migration
Gerrit topic: https:/
Addressed by: https:/
Ironic: Cold migration support
Addressed by: https:/
[WIP] ironic: Support cold migration
This BP is focusing on migration on the description.
There is already ironic compute host HA for a case where compute host goes down.
-- 20171011 hshiina