OpenStack之虚拟机热迁移
这里的环境是centos7版本,openstack K版
1.在各个计算节点设置权限
chmod 755 /var/lib/nova/instances
2.修改各个节点的nova.conf(/etc/nova/nova.conf)
vncserver_proxyclient_address=虚拟机IP # vncserver_listen=0.0.0.0
3.修改所有计算节点libvirt
3.1 修改/etc/libvirt/libvirtd.conf文件:
listen_tls = 0 listen_tcp = 1 tcp_port = "16509" listen_addr = "0.0.0.0" #将此四行的注释去掉 auth_tcp = "none" #新增
3.2 修改/etc/libvirt/qemu.conf文件:
vnc_listen = "0.0.0.0" user = "root" group = "root" #去掉此三行的注释
3.3 修改/etc/sysconfig/libvirtd文件,用来启用tcp的端口
LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf LIBVIRTD_ARGS="--listen" #同样,去掉注释
4.重启libvirtd
systemctl restart libvirtd.service
测试:
virsh -c qemu+tcp://服务器IP/system #请在服务器IP处填写你的服务器IP
无错误提示的话即可进行迁移工作,若有错,可能是防火墙的问题。简单粗暴的做法是:
方法1:直接关闭防火墙
方法2:放行对应端口
1.查看端口号 [root@agent ~]# netstat -tulnp | grep libvirt tcp 0 0 0.0.0.0:16509 0.0.0.0:* LISTEN 31704/libvirtd
附加:
root@node1:~# nova list 查看实例 root@node1:~# nova show 11fd9622-a948-4cdb-94d0-d8f2558cf179 查看需要迁移的实例 root@node1:~# nova-manage service list 查看可用的计算节点 root@node1:~# nova-manage service describe_resource node2 查看目标节点资源 root@node1:~#nova live-migration 11fd9622-a948-4cdb-94d0-d8f2558cf179 node2 迁移成功,没有输出
附上配置:
[root@compute11 ~]# egrep -v "^#|^$" /etc/nova/nova.conf [DEFAULT] allow_resize_to_same_host=true allow_migrate_to_same_host=true [libvirt] virt_type = kvm inject_password=false inject_key=false inject_partition=-2 disk_cachemodes="network=writeback" images_type=rbd images_rbd_pool=vms images_rbd_ceph_conf= /etc/ceph/ceph.conf hw_disk_discard= unmap rbd_user = cinder rbd_secret_uuid = 457eb676-33da-42ec-9a8c-9293d545c337 [root@compute11 ~]# egrep -v "^#|^$" /etc/libvirt/libvirtd.conf listen_tls = 0 listen_tcp = 1 tcp_port = "16509" listen_addr = "0.0.0.0" auth_tcp = "none" [root@compute11 ~]# egrep -v "^#|^$" /etc/libvirt/qemu.conf vnc_listen = "0.0.0.0" user = "root" group = "root" [root@compute11 ~]# egrep -v "^#|^$" /etc/sysconfig/libvirtd LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf LIBVIRTD_ARGS="--listen"
注意:不同CPU的计算有可能只能单向动态迁移;因为指令集少的计算节点可以向指令集多的计算节点迁移,而多的不能往少的计算节点迁移;
参考:
http://www.cnblogs.com/voidy/p/4041391.html