设为首页 收藏本站
查看: 931|回复: 0

[经验分享] 体验devstack安装openstack

[复制链接]

尚未签到

发表于 2017-6-23 11:10:49 | 显示全部楼层 |阅读模式
  由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack。
  因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度崩溃与愈合,终于看到了如下的打印:



This is your host IP address: 192.168.0.105
This is your host IPv6 address: ::1
Horizon is now available at http://192.168.0.105/dashboard
Keystone is serving at http://192.168.0.105:5000/
The default users are: admin and demo
The password: 123456
2017-01-21 08:46:05.167 | stack.sh completed in 746 seconds.
  喔喔,这是成功了吗,可以登录了。
  好了,还是言归正传:
  工作环境:vmware 12
  操作系统:ubuntu 14.04.5
  虚拟机配置 内存: 4G , CPU : 4核 ,开启VTx-d等选项,内存是越大越好,不过俺的主机内存有限。
  安装完后:



root@ubuntu:~# free -h
total       used       free     shared    buffers     cached
Mem:          3.8G       3.7G       151M       3.2M       100M       1.1G
-/+ buffers/cache:       2.5G       1.3G
Swap:         1.0G       744K       1.0G
  apt源可以使用国内的默认源,也可以使用其他国内的源,不过博主居然遇到cn.archive.ubuntu.com当机了。。。
  因此测试了一下阿里的源,貌似比较稳定,于是:



sed -i "s/cn.archive.ubuntu.com/mirrors.aliyun.com/g" /etc/apt/sources.list
apt-get update
  pip的设置(首先创建目录: mkdir ~/.pip  && vim ~/.pip/pip.conf):



stack@ubuntu:~/devstack$ cat ~/.pip/pip.conf
[global]  
index-url = http://mirrors.aliyun.com/pypi/simple/  
[install]  
trusted-host=mirrors.aliyun.com
  devstack本地配置:



stack@ubuntu:~/devstack$ cat local.conf
[[local|localrc]]

# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git

#OFFLINE=True
RECLONE=True

# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://images.trystack.cn/cirros/cirros-0.3.4-x86_64-disk.img"
ADMIN_PASSWORD=123456
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
  
我一开始使用默认的国外源,是想安装newton版本,不过那个网速真的没法成功安装。。
  使用国内的源会快很多,但是好像只支持mitaka版本,因此就先安装这个,接下来就是:
  1、创建一个普通用户,比如官网推荐的 stack



sudo adduser stack

sudo echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
  2、切换到stack用户(执行su stack),然后:



cd ~
sudo apt-get install git
git clone https://github.com/openstack-dev/devstack.git -b stable/mitaka
  3、开始安装:



cd devstack
./stack.sh
  4、中途遇到的问题:



Traceback (most recent call last):
   File "/usr/local/bin/openstack", line 7, in <module>
     from openstackclient.shell import main
   File "/usr/local/lib/python2.7/dist-packages/openstackclient/shell.py", line 32, in <module>
     from openstackclient.common import clientmanager
   File "/usr/local/lib/python2.7/dist-packages/openstackclient/common/clientmanager.py", line 293, in <module>
     'openstack.cli.base',
   File "/usr/local/lib/python2.7/dist-packages/openstackclient/common/clientmanager.py", line 264, in get_plugin_modules
     __import__(ep.module_name)
   File "/usr/local/lib/python2.7/dist-packages/openstackclient/network/client.py", line 16, in <module>
     from openstack import connection
   File "/usr/local/lib/python2.7/dist-packages/openstack/connection.py", line 68, in <module>
     from openstack import session as _session
   File "/usr/local/lib/python2.7/dist-packages/openstack/session.py", line 29, in <module>
     DEFAULT_USER_AGENT = "openstacksdk/%s" % openstack.__version__
AttributeError: 'module' object has no attribute '__version__
  好吧,发现是/usr/local/lib/python2.7/dist-packages/openstack/session.py里执行失败:
  代码行: DEFAULT_USER_AGENT = "openstacksdk/%s" % openstack.__version__
  于是如下处理一下:



root@ubuntu:~# python
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import openstack
>>> import pbr.version
>>> print(pbr.version.VersionInfo('openstacksdk').version_string())
0.8.1
>>> quit()
root@ubuntu:~#
  修改为: DEFAULT_USER_AGENT = "openstacksdk/0.8.1"



cd ~/devstack
./unstack.sh
./clean.sh
./stack.sh
  好运的话,会一次安装成功吧。
  然而博主是经历了断断续续历时约12个小时失败才安装成功。。。
  5、如何重启devstack
  devstack重启脚本是rejoin-stack.sh,但是git下来的版本却没有,只好去网上找一个,如下:



#!/usr/bin/env bash
# This script rejoins an existing screen, or re-creates a
# screen session from a previous run of stack.sh.
TOP_DIR=`dirname $0`
# Import common functions in case the localrc (loaded via stackrc)
# uses them.
source $TOP_DIR/functions
source $TOP_DIR/stackrc
# if screenrc exists, run screen
if [[ -e $TOP_DIR/stack-screenrc ]]; then
if screen -ls | egrep -q "[0-9].stack"; then
echo "Attaching to already started screen session.."
exec screen -r stack
fi
exec screen -c $TOP_DIR/stack-screenrc
fi
echo "Couldn't find $TOP_DIR/stack-screenrc file; have you run stack.sh yet?"
exit 1
  vim ~/devstack/rejoin-stack.sh将上面的内容复制进去。



chmod +x ~/devstack/rejoin-stack.sh
sudo chmod 777 /dev/pts/0
./rejoin-stack.sh
  即可重启服务咯,哈哈,我赶紧把内存加大1G~~~



root@ubuntu:~# free -h
total       used       free     shared    buffers     cached
Mem:          4.8G       3.0G       1.7G       3.4M        62M       230M
-/+ buffers/cache:       2.7G       2.0G
Swap:         1.0G         0B       1.0G
  接下来,就可以愉快的玩耍了。
  6、如何成为openstack的开发者:
  http://www.ibm.com/developerworks/cn/cloud/library/cl-contributecode-openstack/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-387266-1-1.html 上篇帖子: 企业级网络爬虫应用(1) 开篇 下篇帖子: 20款免费的wifi破解工具
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表