This article is being updated. Please be aware the content herein, not limited to version numbers and slight syntax changes, may not match the output from the most recent versions of Bright. This notation will be removed when the content has been updated.
Requirements :
Bright OpenStack 8.0/7.3 Installed.
OpenStack Installed and working.
Shared storage ( as we will not be migrating block devices )
Hypervisors of the same hardware and cpu type, in theory, if you configured your hypervisors cpu model in nova.conf and manipulated your supported CPUflags for libvirtd, Live migration should work on non-homogeneous hardware.
For the purpose of this document we are going to assume that you either have a homogeneous hardware or at least a homogeneous aggregate of hosts in which your virtual machines run on.
Configuration and setup:
Configure libvirtd
on your software image to allow tcp listening
Match the following parameters in /cm/images/<image>/etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp =
tcp_port = "16509"
Match the following parameters in /cm/image /cm/images/<image>/etc/etc/sysconfig/libvirtd
LIBVIRTD_ARGS="--listen"
Configure nova live_migration_uri :
On the headnode :
cmsh
configurationoverlay
use openstackcontrollers
customizations
add /etc/nova/nova.conf
entries
add DEFAULT live_migration_uri “qemu+ssh://%s/system”
Push the changes made from the software image to your hypervisors :
device
imageupdate -n <node-list>
Finally restart libvirtd
on all your hypervisors nodes :
device
foreach -n <node-list> ( services ; restart libvirtd ; restart openstack-nova-compute )
Check libvirtd
is listening on correct TCP port:
Ssh into one of your hypervisors and confirm that libvirtd is listening on port 16509 :
# netstat -apnt | grep libvirtd
tcp 0 0 0.0.0.0:16509 0.0.0.0:* LISTEN 7318/libvirtd
tcp6 0 0 :::16509 :::* LISTEN 7318/libvirtd
To perform live migration on your machine, from your headnode as an admin user :
nova live-migration <server-id> <hypervisor hostname>
For example :
nova live-migration 9b182365-fe04-4ce5-bd21-a5210c8f1dc3 node006
Check your server and in a while you should see your VM in a new host :
openstack server show d5783cc5-943b-4aea-8b06-79c8c2f2ab02 | grep host | OS-EXT-SRV-ATTR:host | node006