您的位置:首页 > 运维架构 > Linux

CentOS6.2下一步一步源代码安装OpenStack(一)操作系统准备

2012-04-18 22:57 441 查看
更新:5月3日,添加安装计算节点的说明(蓝色字体)

OpenStack的essex正式版终于发布了,但是要想在CentOS下通过yum安装估计还得等上一段时间,因此不妨我们来一起通过源代码安装OpenStack,这样也对OpenStack有一个更清晰的认识。前段时间我一直忙nova这个组件的安装配置,一直各种报错,把我郁闷了好久,最要命的是我是在VMware workstation下安装CentOS6.2实验OpenStack,但是CentOS6.2在虚拟机环境下无法开启虚拟机化技术,而Ubuntu却可以,不得而把电脑重新装了CentOS重新实验。目前nova这个组件已经安装好了,所以我把这些过程写在这里跟大家分享下。这是第一篇,主要是操作系统的安装及系统相关依赖包的安装,下一篇将介绍各组件源代码的安装方法,再往下就是各组件的配置、运行,测试。好了,废话不多说,Let's
Go!!!

1.操作系统安装:

安装系统时最好给服务器取个名,不然后面rabbitmq-server可能无法启动,如下图所示:



在选择安装类型时,选择Desktop,并且选择下面的现在定制,如下图所示:



Applications部分只选择InternetBrowser即可,该组的可选包只选择firefox,如下图:



Base System部分默认即可,Databases部分勾选Mysql的两项,其中client的可选包只选python的即可,如下图:



计算节点只需要安装客户端,不需要安装Mysql服务器

Virtualization部分勾选上面三项,且去掉第二项的可选包,如下图:



其它未说明部分默认即可,安装完后进入系统创建你的用户和密码,我这里建的是ugyn。

2.安装光盘中的一些依赖包

2.1将当前用户添加到sudoers中

[ugyn@cc ~]$ su

Password:

[root@cc ugyn]# echo 'ugyn ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

[root@cc ugyn]# su ugyn

[ugyn@cc ~]$

2.2添加CentOS光盘镜像为repo:

[ugyn@cc ~]$ sudo cp /etc/yum.repos.d/CentOS-Media.repo /etc/yum.repos.d/iso.repo

[ugyn@cc ~]$ sudo vim /etc/yum.repos.d/iso.repo

最后我的iso.repo内容为:

[iso]

name=iso

baseurl=file:///media/iso/

gpgcheck=1

enabled=0

gpgkey=file:///media/iso/RPM-GPG-KEY-CentOS-6

挂载镜像:

[ugyn@cc ~]$ sudo mkdir /media/iso

[ugyn@cc ~]$ sudo mount -o loop -t iso9660 Downloads/CentOS-6.2-x86_64-bin-DVD1.iso /media/iso

2.3卸载python-crypto:

该软件版本过低,如果不卸载会导致以后glance服务无法启动

[ugyn@cc ~]$ sudo yum --enablerepo=iso --disablerepo=base,updates,extras remove python-crypto

2.4安装光盘中存在的依赖软件:

[ugyn@cc ~]$ sudo yum --enablerepo=iso --disablerepo=base,updates,extras install gcc gcc-c++ python-devel python-setuptools libxml2-devel libxslt-devel mod_wsginumpy

这里mod_wsgi为安装horizon所必须,numpy为安装noVNC所必须,安装计算节点这两个包都不需要

3.安装epel中的一些依赖包:

关于qpid的bug已经被修复,详情见这里:

https://review.openstack.org/#/c/6760/

https://github.com/openstack/glance/commit/5bed23cbc962d3c6503f0ff93e6d1e326efbd49d

我将使用qpid,这样可以不用安装epel源,省去安装rabbitmq及其依赖的60多包,python-sqlite2, python-greenlet-devel及其依赖的python-greenlet 可以先下载然后手动安装就好了,我将会将这些文件打包跟大家下载。如果使用qpid请安装好python-qpid,python-sqlite2, python-greenlet-devel及其依赖的python-greenlet后直接看第4步。

下载页:http://dl.fedoraproject.org/pub/epel/6/x86_64/repoview/letter_p.group.html

安装:

sudo yum --enablerepo=iso --disablerepo=base,updates,extras install python-qpid

sudo rpm -ihv rpms/python-sqlite2-2.3.5-2.el6.x86_64.rpm rpms/python-greenlet-0.3.1-6.el6.x86_64.rpm rpms/python-greenlet-devel-0.3.1-6.el6.x86_64.rpm

3.1安装epel源:

[ugyn@cc ~]$ sudo rpm -i http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
3.2安装epel源中的rabbitmq-server及另两个依赖包:

[ugyn@cc ~]$ sudo yum install rabbitmq-server python-sqlite2 python-greenlet-devel

3.3启动rabbitmq-server:

首先要停掉qpidd,本来OpenStack可以使用qpidd,我在实验中使用时通过glance上传镜像时报错(详情见这里 ),而用rabbitmq没这样的问题

[ugyn@cc ~]$ sudo chkconfig qpidd off && sudo service qpidd stop

[ugyn@cc ~]$ sudo chkconfig rabbitmq-server on && sudo service rabbitmq-server start

设置密码:

[ugyn@cc ~]$ sudo rabbitmqctl change_password guest service123

注意:请确定已经设置好了主机名,不然rabbit可能无法启动

安装计算节点时以下步骤都不需要!!!

4.启动httpd:

[ugyn@cc ~]$ sudo chkconfig httpd on && sudo service httpd start

Starting httpd: httpd: apr_sockaddr_info_get() failed for cc.sigsit.org

httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName

[ OK ]

[ugyn@cc ~]$ sudo service httpd status

httpd (pid 28460) is running...

5.启动mysql:

[ugyn@cc ~]$ sudo chkconfig mysqld on && sudo service mysqld start

修改配置:

[ugyn@cc ~]$ sudo vim /etc/my.cnf

在[mysqld]选项下添加以下两行:

character-set-server=utf8

default-storage-engine=InnoDB

在文件最后添加以下两行:

[mysql]

default-character-set=utf8

重启mysql:

sudo service mysqld restart

登录mysql删除匿名用户并设置root密码:

mysql -uroot

mysql> use mysql

mysql> delete from user where User="";

mysql> update user set Password=password('service123');

删除test数据库:

mysql> drop database test;

创建keystone所需数据库:

mysql> create database keystone;

mysql> grant all privileges on keystone.* to 'keystone'@'%' identified by 'keystone';

创建nova所需数据库:

mysql> create database nova;

mysql> grant all privileges on nova.* to 'nova'@'%' identified by 'nova';

创建glance所需数据库:

mysql> create database glance;

mysql> grant all privileges on glance.* to 'glance'@'%' identified by 'glance';

创建horizon所需数据库:

mysql> create database horizon;

mysql> grant all privileges on horizon.* to 'horizon'@'%' identified by 'horizon';

刷新权限:

mysql> flush privileges;

mysql> quit

6.配置网桥:

见这里/article/7944205.html

好了,操作系统部分到这里就差不多了,下面运行下virsh及virt-manager看看主机能否启动虚拟机技术

[ugyn@cc ~]$ sudo virsh version

Compiled against library: libvir 0.9.4

Using library: libvir 0.9.4

Using API: QEMU 0.9.4

Running hypervisor: QEMU 0.12.1

注意virt-manager需要以root用户登录图形界面才能运行。

北方工业大学 |
云计算研究中心 | 姜永
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐