Chinaunix

标题: 3. 在CentOS 6.3上通过源码安装Openstack Folsom之Nova安装 [打印本页]

作者: atkisc    时间: 2012-11-12 13:26
标题: 3. 在CentOS 6.3上通过源码安装Openstack Folsom之Nova安装
本帖最后由 atkisc 于 2012-11-13 10:15 编辑

此为连载教程,会在几天内发布完成,内容顺序如下:
1. 在CentOS 6.3上通过源码安装Openstack Folsom之Keystone安装
2. 在CentOS 6.3上通过源码安装Openstack Folsom之Glance安装
3. 在CentOS 6.3上通过源码安装Openstack Folsom之Nova安装
4. 在CentOS 6.3上通过源码安装Openstack Folsom之OpenVswitch安装
5. 在CentOS 6.3上通过源码安装Openstack Folsom之Quantum安装
6. 在CentOS 6.3上通过源码安装Openstack Folsom之Cinder安装
7. 在CentOS 6.3上通过源码安装Openstack Folsom之Nova使用Quantum
8. 在CentOS 6.3上通过源码安装Openstack Folsom之Novnc安装
9. 在CentOS 6.3上通过源码安装Openstack Folsom之Horizon安装
10. 在CentOS 6.3上通过源码安装Openstack Folsom之通过Glance上传镜像
11. 在CentOS 6.3上通过源码安装Openstack Folsom之通过Horizon启动实例

系统环境
  1. CentOS 6.3 x86_64
  2. Openstack Folsom
  3. 服务器IP:172.16.24.138
  4. 注:因为用到了Quantum,系统需要至少两块网卡
复制代码
1. python-quantumclient安装
  1. git clone https://github.com/openstack/python-quantumclient.git
  2. cd python-quantumclient/tools
  3. pip-python install -r pip-requires
  4. cd ..
  5. python setup.py install
复制代码
2. nova安装
  1. wget https://launchpad.net/nova/folsom/2012.2/+download/nova-2012.2.tar.gz
  2. tar xf nova-2012.2.tar.gz
  3. cd nova-2012.2/tools
  4. pip-python install -r pip-requires
  5. cd ..
  6. python setup.py install
复制代码
3. python-novaclient安装
  1. git clone https://github.com/openstack/python-novaclient.git
  2. cd python-novaclient/tools
  3. pip-python install -r pip-requires
  4. cd ..
  5. python setup.py install
复制代码
4. 创建nova配置文件目录和复制配置文件
  1. mkdir /etc/nova
  2. mkdir /var/log/nova
  3. mkdir -p /var/lib/nova/instances
  4. cp /opt/nova-2012.2/etc/nova/api-paste.ini /etc/nova/
  5. cp /opt/nova-2012.2/etc/nova/logging_sample.conf /etc/nova/
  6. cp /opt/nova-2012.2/etc/nova/nova.conf.sample /etc/nova/nova.conf
  7. cp /opt/nova-2012.2/etc/nova/policy.json /etc/nova/
  8. cp /opt/nova-2012.2/etc/nova/rootwrap.conf /etc/nova/
  9. cp -rp /opt/nova-2012.2/etc/nova/rootwrap.d/ /etc/nova/
复制代码
4.1 修改/etc/nova/api-paste.ini文件的如下一些选项
  1. sed -i 's/%SERVICE_TENANT_NAME%/tenant/g' /etc/nova/api-paste.ini
  2. sed -i 's/%SERVICE_USER%/nova/g' /etc/nova/api-paste.ini
  3. sed -i 's/%SERVICE_PASSWORD%/service/g' /etc/nova/api-paste.ini
复制代码
4.2 修改/etc/nova/nova.conf文件的如下一些选项
  1. sed -i 's/# debug=false/debug=true/g' /etc/nova/nova.conf
  2. sed -i 's/# verbose=false/verbose=true/g' /etc/nova/nova.conf
  3. sed -i 's/# log_dir=<None>/log_dir=\/var\/log\/nova\//g' /etc/nova/nova.conf
  4. sed -i 's/# use_syslog=false/use_syslog=false/g' /etc/nova/nova.conf
  5. sed -i 's/# connection_type=<None>/connection_type=libvirt/g' /etc/nova/nova.conf
  6. sed -i 's/# sql_connection=sqlite:\/\/\/$state_path\/$sqlite_db/sql_connection=mysql:\/\/root:123456@localhost\/nova/g' /etc/nova/nova.conf
  7. sed -i 's/# api_paste_config=api-paste.ini/api_paste_config=\/etc\/nova\/api-paste.ini/g' /etc/nova/nova.conf
  8. sed -i 's/# bindir=$pybasedir\/bin/bindir=\/usr\/bin\//g' /etc/nova/nova.conf
  9. sed -i 's/# state_path=$pybasedir/state_path=\/var\/lib\/nova\//g' /etc/nova/nova.conf
  10. sed -i 's/# my_ip=10.0.0.1/my_ip=172.16.24.138/g' /etc/nova/nova.conf
  11. sed -i 's/# glance_host=$my_ip/glance_host=$my_ip/g' /etc/nova/nova.conf
  12. sed -i 's/# glance_port=9292/glance_port=9292/g' /etc/nova/nova.conf
  13. sed -i 's/# glance_api_servers=$glance_host:$glance_port/glance_api_servers=$glance_host:$glance_port/g' /etc/nova/nova.conf
  14. sed -i 's/# osapi_path=\/v1.1\//osapi_path=\/v1.1\//g' /etc/nova/nova.conf
  15. sed -i 's/# metadata_host=$my_ip/metadata_host=$my_ip/g' /etc/nova/nova.conf
  16. sed -i 's/# metadata_port=8775/metadata_port=8775/g' /etc/nova/nova.conf
  17. sed -i 's/# root_helper=sudo/root_helper=sudo/g' /etc/nova/nova.conf
  18. sed -i 's/# rootwrap_config=<None>/rootwrap_config=\/etc\/nova\/rootwrap.conf/g' /etc/nova/nova.conf
  19. sed -i 's/# auth_strategy=noauth/auth_strategy=keystone/g' /etc/nova/nova.conf
  20. sed -i 's/# osapi_compute_listen=0.0.0.0/osapi_compute_listen=$my_ip/g' /etc/nova/nova.conf
  21. sed -i 's/# osapi_compute_listen_port=8774/osapi_compute_listen_port=8774/g' /etc/nova/nova.conf
  22. sed -i 's/# metadata_listen=0.0.0.0/metadata_listen=0.0.0.0/g' /etc/nova/nova.conf
  23. sed -i 's/# metadata_listen_port=8775/metadata_listen_port=8775/g' /etc/nova/nova.conf
  24. sed -i 's/# osapi_volume_listen=0.0.0.0/osapi_volume_listen=0.0.0.0/g' /etc/nova/nova.conf
  25. sed -i 's/# osapi_volume_listen_port=8776/osapi_volume_listen_port=8776/g' /etc/nova/nova.conf
  26. sed -i 's/# instances_path=$state_path\/instances/instances_path=$state_path\/instances/g' /etc/nova/nova.conf
  27. sed -i 's/# db_backend=sqlalchemy/db_backend=sqlalchemy/g' /etc/nova/nova.conf
  28. sed -i 's/# use_stderr=true/use_stderr=false/g' /etc/nova/nova.conf
  29. sed -i 's/# rabbit_host=localhost/rabbit_host=localhost/g' /etc/nova/nova.conf
  30. sed -i 's/# rabbit_port=5672/rabbit_port=5672/g' /etc/nova/nova.conf
  31. sed -i 's/# rabbit_userid=guest/rabbit_userid=guest/g' /etc/nova/nova.conf
  32. sed -i 's/# rabbit_password=guest/rabbit_password=guest/g' /etc/nova/nova.conf
  33. sed -i 's/# rabbit_virtual_host=\//rabbit_virtual_host=\//g' /etc/nova/nova.conf
  34. sed -i 's/# timeout_nbd=10/timeout_nbd=10/g' /etc/nova/nova.conf
  35. sed -i 's/# max_nbd_devices=16/max_nbd_devices=16/g' /etc/nova/nova.conf
  36. sed -i 's/# libvirt_type=kvm/libvirt_type=kvm/g' /etc/nova/nova.conf
复制代码
4.3  配置polkit策略,在/etc/polkit-1/localauthority/50-local.d/建立50-nova.pkla文件,内容如下
  1. [Allow nova libvirt management permissions]
  2. Identity=unix-user:nova
  3. Action=org.libvirt.unix.manage
  4. ResultAny=yes
  5. ResultInactive=yes
  6. ResultActive=yes

  7. 注:次策略使用在不使用root用户启动时
复制代码
4.4 初始化nova数据库表结构
  1. nova-manage db sync
复制代码
此次只介绍安装,启动服务将在<<7. 在CentOS 6.3上通过源码安装Openstack Folsom之Nova使用Quantum>>涉及
作者: mfkp3    时间: 2012-11-12 15:41
感谢分享!
作者: cnvbird    时间: 2012-11-13 11:22
牛人啊,这么厉害~
作者: atkisc    时间: 2012-11-14 11:23
回复 3# cnvbird


    呵呵
作者: liuaiping0205    时间: 2012-11-16 09:28
我在最后运行:
#nova-manage db sync
出现下面这种错误是为什么啊:
File "/usr/lib/python2.6/site-packages/paste/deploy/__init__.py", line 3, in <module>
    from paste.deploy.loadwsgi import *
  File "/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py", line 11, in <module>
    from paste.deploy.util import fix_call, lookup_object
ImportError: cannot import name fix_call


作者: atkisc    时间: 2012-11-16 11:32
回复 5# liuaiping0205


    你完全按照我说的方法去装的?你原来系统是是不是存在
    python-paste
    python-paste-deploy
作者: liuaiping0205    时间: 2012-11-16 12:07
因为我的Centos 6.3是才安装的,全部安装,然后就按照你的操作来运行啊????
有一点不同的是你下载的文件是放在/opt下面,我的是直接在/root/下面,这个没有关系。
配置文件中有关IP地址的我也换成了自己的IP,也是双网卡。


作者: liuaiping0205    时间: 2012-11-16 12:15
你说的python-paste
    python-paste-deploy  这个是指rpm包吗,我的系统原来就有。
作者: atkisc    时间: 2012-11-16 16:26
回复 8# liuaiping0205


    看看你系统的和pip安装的
作者: liuaiping0205    时间: 2012-11-16 16:34
英雄,能不能说的详细点啊,我是个新手
作者: iliuan    时间: 2012-11-17 19:34
回复 10# liuaiping0205


    你需要卸载掉系统中原本存在的python-paste 和python-deploy,再通过pip-python将这些包安装上。
作者: atkisc    时间: 2012-11-18 01:01
回复 10# liuaiping0205


    想知道什么详细的可以跟帖
作者: liuaiping0205    时间: 2012-11-18 13:33
你是对的!!!卸载完之后,然后重新运行上面的:pip-python install -r pip-requires,最后就没有错误了。非常感谢!继续关注!
你的第5篇什么时候出啊

作者: atkisc    时间: 2012-11-19 15:26
回复 13# liuaiping0205


    马上就发布了
作者: zhuimuzhuimu    时间: 2013-01-09 21:27
回复 1# atkisc

可以只使用一个网卡不
   
作者: atkisc    时间: 2013-01-11 13:36
zhuimuzhuimu 发表于 2013-01-09 21:27
回复 1# atkisc

可以只使用一个网卡不


桥接模式是可以的.




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2