manually move instances from one compute node to another

asked 2016-06-02 18:16:14 -0500

yee379 gravatar image

i have liberty running on my centos7 system and everything is working fine. i'm using neutron. it is not using a shared filesystem for /var/lib/nova.

however, one of the compute nodes had to be rebooted ungracefully. and for some reason it won't reconnect to the openstack controller anymore. the controller shows it in state=down. i've spend enough time and couldn't rectify the issue so i would like to enforce plan b to just manually evacuate all of the instances.

in addition, the instances on the server (net-pool01) continued to show up as Active/Running; even those they were down (due to the reboot). i then ran nova reset-state on the instances and that brought them into Error/Running.

i can access the hypervisor fine, so i would like to manually move the instances that were on that hypervisor over to another.

attempting a live-migration fails:

[net-pool01]# nova --insecure live-migration --block_migrate 42aa5cbe-720d-4762-9a3c-14b1e14910ed net-pool02
ERROR (Conflict): Cannot 'os-migrateLive' instance 42aa5cbe-720d-4762-9a3c-14b1e14910ed while it is in vm_state error (HTTP 409) (Request-ID: req-ddb44e27-de4d-4211-9a5a-02f0915afaf9)

i'm more than happy to manually rsync the instance directories (and backing files) over; but how can i then (re)start all the instances on net-pool02? are they SQL update statements that i will need? how do i enforce the ports are moved to the new compute node?


edit retag flag offensive close merge delete


Check this guide: But without shared storage will be a little tricky.

Eduardo Gonzalez gravatar imageEduardo Gonzalez ( 2016-06-03 01:46:53 -0500 )edit

In case of absence of shared storage is better to take live snapshot and boot in another node, then replicate the same environments setup inclusive of firewall settings and shutdown old one

Maestropandy gravatar imageMaestropandy ( 2016-06-06 04:20:48 -0500 )edit