在ubuntu上配置openstack的xen环境

来源:互联网 发布:孟极序列号淘宝 编辑:程序博客网 时间:2024/05/16 09:36

由于实验室需要把openstack的libvirt由kvm改为xen。记录下修改过程。

1.首先在各个节点正确安装openstack的相应组件。

可参考社区的安装文档。


2.安装xen

在计算节点安装xen。

apt-get install xen-utils-common

apt-get install  xen-utils-4.1


3.安装nova-compute-xen

apt-get install nova-compute-xen


4.修改配置文件

vim /etc/nova/nova-compute.conf 

--libvirt_type=xen


vim /etc/nova/nova.conf

--libvirt_type=xen

5.修改函数,函数中存在bug

这样还是无法启动nova-compute,报错:2012-07-26 00:21:09 AUDIT nova.service [-] Starting compute node (version 2012.1-LOCALBRANCH:LOCALREVISION)2012-07-26 00:21:10 CRITICAL nova [-] global name 'self' is not defined 打开文件 /usr/lib/python2.7/dist-packages/nova/virt/libvirt/connection.py作如下修改:
1699行开始的两行改为:      #@staticmethod #切记,一定呀注释这一行     def get_memory_mb_total(self):


6.重新启动。

修改grub启动项。

1.   /boot/grub/grub.cfg 文件
   2.   /etc/grub.d/ 文件夹
   3.   /etc/default/grub 文件
grub.cfg就是就是配置选项,类似于menu.lst,但是我们不能通过直接修改这个文件来修改配置,而是需要在2、3两项中做相应修改并执行 update-grub命令使/boot/grub/grub.cfg自动更新。
拿最简单最常用的开启启动项默认选择顺序和选择等待时间为例,我们只需做
    1. sudo gedit /etc/default/grub
    2. 把GRUB_DEFAULT= 和 GRUB_TIMEOUT= 两个字符串后面的数字改为我们自己想要的并保存关闭
    3. sudo update-grub
 

7.重新启动 

reboot

启动相关服务(由于经常要使用,我就写在了脚本里了):

#!/bin/bashfor a in libvirt-bin nova-compute nova-vncproxy  nova-api; do service "$a" stop; donefor a in libvirt-bin nova-compute nova-vncproxy  nova-api; do service "$a" start; done

执行脚本

查看服务是否正确运行

service nova-compute status


8.如果出现下列错误:

查看日志/var/log/nova/nova-compute.

ERROR unable to connect to ‘localhost:8000′: Connection refused
Traceback (most recent call last):
File “/usr/sbin/virt-install”, line 861, in ?
main()
File “/usr/sbin/virt-install”, line 636, in main
conn = cli.getConnection(options.connect)
File “/usr/lib/python2.4/site-packages/virtinst/cli.py”, line 126, in getConnection
conn = libvirt.open(connect)
File “/usr/lib/python2.4/site-packages/libvirt.py”, line 159, in open
if ret is None:raise libvirtError(‘virConnectOpen() failed’)
libvirtError: unable to connect to ‘localhost:8000′: Connection refused

这个问题一般是因为配置文件导致的,确保 /etc/xen/xend-config.sxp中以下三行没有被注释掉:
(xend-http-server yes)
(xend-port 8000)
(xend-address '')



参考文章:

feisky的安装过程http://www.cnblogs.com/feisky/archive/2012/06/29/2569506.html

openstack支持的虚拟化平台:http://wiki.openstack.org/HypervisorSupportMatrix

JeremyWei http://www.vpsee.com/2010/04/install-xen-on-centos-from-source/


原创粉丝点击