分享

OpenStack在线迁移

pig2 发表于 2014-2-10 20:25:19 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 11 17666
思考:OpenStack通过什么实现在线迁移
三个节点:一控二算
control
compute1
compute2
互相可以域名解析

一.live migration使用了nova用户的权限

1.如果你的控制节点和计算节点nova用户的uid/gid包括附加组都不一样的情况下,使用nfs idmap来映射用户

2.control和compute上nova的uid/gid都一样的情况下(在部署之前控制好nova的uid/gid,
建议开始部署前第一先安装nova-compute和nova-network在所有节点上,当然控制节点
上安装完nova-compute后可以卸载它)

二.配置迁移

在控制节点安装nfs
apt-get install nfs-kernel-server
cat /etc/exports
/var/lib/nova/instances *(rw,sync,no_root_squash,no_subtree_check,fsid=0)
/etc/init.d/nfs-kernel-server start
在所有计算节点
echo “control:/var/lib/nova/instances  /var/lib/nova/instances  nfs  _netdev,auto 0 0″ >> /etc/fstab
mount -a -v
修改/etc/libvirt/libvirtd.conf 文件如下:
改前 : #listen_tls = 0
改后: listen_tls = 0
改前 : #listen_tcp = 1
改后: listen_tcp = 1
添加: auth_tcp = “none”

修改 /etc/init/libvirt-bin.conf
改前 : exec /usr/sbin/libvirtd $libvirtd_opts
改后 : exec /usr/sbin/libvirtd -d -l

修改 /etc/default/libvirt-bin
改前 :libvirtd_opts=” -d”
改后 :libvirtd_opts=” -d -l”

修改/etc/libvirtd/qemu.conf
去掉下面三行注释
vnc_listen = “0.0.0.0″
user = “root”
group = “root”

然后重启libvirt-bin

在控制节点上:
root@control:~# nova-manage host list
host                         zone
control                      nova
compute2                     nova
compute1                     nova

root@control:~# nova list

root@control:~# nova show 4c99f1be-4ae0-4e66-9d2a-3122261c71e2

root@control:~# nova live-migration 4c99f1be-4ae0-4e66-9d2a-3122261c71e2 compute1

来自群组: openstack技术组

已有(11)人评论

跳转到指定楼层
mezhyu 发表于 2014-4-26 09:59:10
您好,那个NFS共享目录一定是要在Control节点上吗,我使用NFS在一个独立的系统上,然后创建实例能成功,但是live migration就出现错误:
2014-04-26 09:52:22.116 17617 AUDIT nova.compute.resource_tracker [req-2a3ccde8-0e05-444a-b956-f94fee6d8905 None None] Auditing locally available compute resources
2014-04-26 09:52:27.161 17617 ERROR nova.virt.libvirt.driver [req-2a3ccde8-0e05-444a-b956-f94fee6d8905 None None] Getting disk size of instance-00000018: [Errno 2] No such

file or directory: '/var/lib/nova/instances/2750e4ed-7142-49e9-b39f-bff88863a43e/disk'
2014-04-26 09:52:27.168 17617 ERROR nova.virt.libvirt.driver [req-2a3ccde8-0e05-444a-b956-f94fee6d8905 None None] Getting disk size of instance-00000015: [Errno 2] No such

file or directory: '/var/lib/nova/instances/e2a50868-9c4a-48b1-8c01-3e2bda9aa370/disk'
回复

使用道具 举报

sstutu 发表于 2014-4-26 10:03:07
mezhyu 发表于 2014-4-26 09:59
您好,那个NFS共享目录一定是要在Control节点上吗,我使用NFS在一个独立的系统上,然后创建实例能成功,但 ...

看看资源的分配是否足够,比如磁盘空间是否充足等。
回复

使用道具 举报

mezhyu 发表于 2014-4-26 10:15:21
资源是足够的
回复

使用道具 举报

hyj 发表于 2014-4-26 11:25:08
到这个目录下看看有这个文件吗/var/lib/nova/instances/e2a50868-9c4a-48b1-8c01-3e2bda9aa370/disk

回复

使用道具 举报

mezhyu 发表于 2014-4-26 17:06:52
我是执行nova live-migration bafd555f-995b-4df0-8df8-7778eebaef20 compute2
然后有这个目录e2a50868-9c4a-48b1-8c01-3e2bda9aa370_resize,不过是空的
回复

使用道具 举报

admin 发表于 2014-4-26 19:51:38
mezhyu 发表于 2014-4-26 17:06
我是执行nova live-migration bafd555f-995b-4df0-8df8-7778eebaef20 compute2
然后有这个目录e2a50868-9c ...

看看日志,你可以根据这篇文章排错一下openstack如何排除查找错误的两种方法如下面:
方法1:查看日志我们进入/var/log。如果是keystone错误,就是进入keystone目录,查看相关日志



方法2:debug
如:

1.正常命令 keystone  user-list
debug命令为:
keystone --debug user-list


2.正常命令nova list
debug命令为:
nova --debug list




回复

使用道具 举报

mezhyu 发表于 2014-4-26 21:33:49
谢谢,我试试看。
回复

使用道具 举报

mezhyu 发表于 2014-5-5 11:37:35
为什么我是给instance-00000021迁移,而日志老是提示instance-00000015和instance-00000018呢,这两个实例已经被删除了,没有了的。
2014-05-05 11:33:50.790 18828 ERROR nova.virt.libvirt.driver [-] Getting disk size of instance-00000018: [Errno 2] No such file or directory: '/var/lib/nova/instances/2750e4ed-7142-49e9-b39f-bff88863a43e/disk'
2014-05-05 11:33:50.795 18828 ERROR nova.virt.libvirt.driver [-] Getting disk size of instance-00000015: [Errno 2] No such file or directory: '/var/lib/nova/instances/e2a50868-9c4a-48b1-8c01-3e2bda9aa370/disk'
回复

使用道具 举报

pig2 发表于 2014-5-5 11:45:09
mezhyu 发表于 2014-5-5 11:37
为什么我是给instance-00000021迁移,而日志老是提示instance-00000015和instance-00000018呢,这两个实例 ...
1.png
openstack里面的删除都不是真正的删除,只不过做了标记你需要到数据库里面,把他们删除掉,才不会出现。
具体可参考
openstack常见11种错误总结

回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条