共计 5590 个字符,预计需要花费 14 分钟才能阅读完成。
[root@vmcom1-mn ~]#service nova-api stop
[root@vmcom1-mn ~]#service libvirt-bin stop
[root@vmcom1-mn ~]#find / -uid 106 -exec chown nova {} \; # note the 106 here is the old nova uid before the change
[root@vmcom1-mn ~]# find / -gid 107 -exec chgrp nova {} \; #note the 107 here is the old nova uid before the change
[root@vmcom1-mn ~]#service nova-api restart
[root@vmcom1-mn ~]#service libvirt-bin restart
2. 修改各个节点的 nova.conf
vncserver_proxyclient_address= 本机 ip
vncserver_listen=0.0.0.0
3. 控制节点,配置 nfs
apt-get install nfs-kernel-server portmap
在 /etc/exports 中加入 /var/lib/nova/instances *(rw,sync,fsid=0,no_root_squash)
重新启动 nfs 服务,portmap 服务
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/92643p2.htm
相关阅读:
在 Ubuntu 12.10 上安装部署 Openstack http://www.linuxidc.com/Linux/2013-08/88184.htm
Ubuntu 12.04 OpenStack Swift 单节点部署手册 http://www.linuxidc.com/Linux/2013-08/88182.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 http://www.linuxidc.com/Linux/2012-08/68101.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 - 上篇 http://www.linuxidc.com/Linux/2012-06/61963.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 - 下篇 http://www.linuxidc.com/Linux/2012-06/61964.htm
4. 计算节点,配置 nfs 和挂载
apt-get install nfs-common portmap
chmod o+x /var/lib/nova/instances, 确保节点有执行和查找目录的权限
在计算节点的 /etc/fstab 的目录中加入
控制节点 ip:/var/lib/nova/instances /var/lib/nova/instances nfs defaults 0 0
挂载目录,执行
mount -a -v
df -k 查看已挂在目录,可以在最后看到远程控制节点的目录已被挂在
5. 修改计算节点的相关的四个配置文件,可以手工如下修改
附修改脚本:
sed -i ‘/vncserver_proxyclient_address/d’ /etc/nova/nova.conf
sed -i ‘/vncserver_listen/d’ /etc/nova/nova.conf
sed -i ‘$a\vncserver_listen=0.0.0.0’ /etc/nova/nova.conf
sed -i ‘s/#listen_tls = 0/listen_tls = 0/g’ /etc/libvirt/libvirtd.conf
sed -i ‘s/#listen_tcp = 1/listen_tcp = 1/g’ /etc/libvirt/libvirtd.conf
sed -i ‘$a\auth_tcp=”none”‘ /etc/libvirt/libvirtd.conf
sed -i ‘s/env libvirtd_opts=”-d “/env libvirtd_opts=”-d -l”/g’ /etc/init/libvirt-bin.conf
sed -i ‘s/libvirtd_opts=” -d”/libvirtd_opts=” -d -l”/g’ /etc/default/libvirt-bin
sed -i ‘s/#vnc_listen =“0.0.0.0″/vnc_listen =“0.0.0.0″/g’ /etc/libvirt/qemu.conf
sed -i ‘s/#user = “root”/user = “root”/g’ /etc/libvirt/qemu.conf
sed -i ‘s/#group = “root”/group = “root”/g’ /etc/libvirt/qemu.conf
6. 重新启动 libvirt-bin
service libvirt-bin restart
确定进程已启动。
ps -ef | grep libvirt
确定有 libvirtd -d - l 进程存在
root 5277 1 004:06 ? 00:00:01/usr/sbin/libvirtd -d -l
7. 重新启动 nova-compute 服务,portmap 服务
service nova-compute restart
service portmap restart
8. 测试
root@jovi-controller:~# nova list 查看实例
root@jovi-controller:~# nova show 11fd9622-a948-4cdb-94d0-d8f2558cf179 查看需要迁移的实例
root@jovi-controller:~# nova-manage service list 查看可用的计算节点
root@jovi-controller:~# nova-manage service describe_resource compute-node2 查看目标节点资源
root@jovi-controller:~#nova live-migration 11fd9622-a948-4cdb-94d0-d8f2558cf179 jovi-compute3 迁移成功,应该没有输出。
相关问题的总结:
部署过程中曾遇到两个导致无法迁移成功的错误,一个是在日志文件中发现 cpu info incapable,另外一个问题是在日志文件中发现 failed to connect remote host uri,经过与最后实验成功的环境相对照,发现实际上导致这两个问题的最终原因是计算节点的计算资源不匹配,例如之前失败的情况是 compute1 节点 cpu 4 核心,8g 内存,compute3 节点 cpu 2 核心,内存 4g,所以提示出现上述错误。
本质是因为在 openstack 源码中,有一段针对热迁移时节点计算资源检测的函数,该函数的作用检测迁移的源节点和目的节点的计算资源是否匹配,从而判断能否承载实例的运行。
因此后来将两个计算节点都调整为双核,4g 内存,按之前方案配置后,即可成功实现迁移。
另外网上的部署方案都提到了要修改 nova.conf 中 vncserver_proxyclient_address=127.0.0.1,笔者经过测试,这这种方法只适用于单网卡的计算节点,多网卡情况下应该注意填写的是与控制节点以及其他计算节点互联网口的 ip,这样 dashboard 中的 vnc 才可以成功运行,否则会提示 faild to connect to server 错误。
[root@vmcom1-mn ~]#service nova-api stop
[root@vmcom1-mn ~]#service libvirt-bin stop
[root@vmcom1-mn ~]#find / -uid 106 -exec chown nova {} \; # note the 106 here is the old nova uid before the change
[root@vmcom1-mn ~]# find / -gid 107 -exec chgrp nova {} \; #note the 107 here is the old nova uid before the change
[root@vmcom1-mn ~]#service nova-api restart
[root@vmcom1-mn ~]#service libvirt-bin restart
2. 修改各个节点的 nova.conf
vncserver_proxyclient_address= 本机 ip
vncserver_listen=0.0.0.0
3. 控制节点,配置 nfs
apt-get install nfs-kernel-server portmap
在 /etc/exports 中加入 /var/lib/nova/instances *(rw,sync,fsid=0,no_root_squash)
重新启动 nfs 服务,portmap 服务
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2013-11/92643p2.htm
相关阅读:
在 Ubuntu 12.10 上安装部署 Openstack http://www.linuxidc.com/Linux/2013-08/88184.htm
Ubuntu 12.04 OpenStack Swift 单节点部署手册 http://www.linuxidc.com/Linux/2013-08/88182.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 http://www.linuxidc.com/Linux/2012-08/68101.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 - 上篇 http://www.linuxidc.com/Linux/2012-06/61963.htm
MySQL 服务器的 HA 集群之 Corosync+DRBD+Pacemaker 实现 - 下篇 http://www.linuxidc.com/Linux/2012-06/61964.htm