DevStack部署OpenStack开发环境 - 问题总结
建议在使用DevStack搭建OpenStack开发环境前,先安装好开发工具包组.特别是gcc,
主要一定是在yum update -y 之前,否则更新完系统后,在安装开发工具包会出现很多依赖包
因为版本更新而无法安装.
要部署OpenStack需要注意若电脑配置不高,我自己的经验是先最小化或基本Web安装,
然后,再安装包组 "fonts", "input", "X Window"相关的部分的软件集.这样可以尽量少装
一些服务,当然,也可以装好后,关闭一些不必要的服务.这样做可避免一些因为主机内存不足或性能
问题出现的OpenStack服务启动错误。
安装DevStack前需要安装的包:
yum install -y git screen openstack-utils openstack-selinux
另外需要注意:
1.devstack部署OpenStack时,需要先执行"tools/create-stack-user.sh", 来创建stack用户,并创建sudo执行权限.
2.需要注意,devStack似乎不能在/var/log/下创建目录,若出现这个错误,可手动创建以下服务的log目录:
keystone/glance/nova/neutron/horizon/cinder/manila/ceilometer/heat/rabbitmq/chrony
这些目录的属主和属组都必须是:stack
3.若DevStack安装出错时,特别需要注意:
1> 使用 screen -ls 查看下是否有screen启动的其它虚拟终端,若有,使用screen -r 234234,
234234指screen启动的虚拟终端标识.此命令是恢复该终端,这样你就可以使用exit持续退出所有的虚拟终端.
2> 使用 losetup -a 查看cinder是否将loop设备关联到虚拟磁盘文件上了。若有,可使用losetup -D 删除所有关联的loop设备.
下面是安装DevStack时出现错误后,的一些解决方法:
错误一:
build/temp.linux-x86_64-2.7/_openssl.c:431:25: fatal error: openssl/aes.h: No such file or directory
#测试系统为:CentOS7.2-1511,做个升级,因此glibc-common-版比较高,导致安装openssl-devel时出错,
# 不能使用yum直接安装,因此我采用rpm 强制将CentOS7.2光盘上低版本的openssl-devel和openssl-libs装上才解决此问题的.
解决方法:
rpm -ivh --nodeps --force openssl-devel openssl-libs
错误二:
/usr/include/krb5/krb5.h:8193:24: fatal error: et/com_err.h: No such file or directory
解决方法:
yum install e2fsprogs-devel e2fsprogs-libs zlib-devel
错误三:
src/lxml/includes/etree_defs.h:14:31: fatal error: libxml/xmlversion.h: No such file or directory
#这样可以把libxml2-devel 的依赖包都下载下来,但还是会因为多版本库的问题导致安装失败。
#我是直接把下载下来的包强制安装上的。
解决方法:
yum install libxml2-devel --setopt=protected_multilib=false
ln -sf /usr/include/libxml2/libxml/ /usr/include/libxml
错误四:
Error: pg_config executable not found.
解决方法:
yum install libpqxx-devel python-devel
错误五:
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111 "Connection refused")
解决方法:
查看MySQL启动的监听的端口,发现它只在管理接口上监听,原因是,先前安装OpenStack时,
在/etc/mysql.d/openstack.cnf 中添加了"bind_address=192.168.10.10"
下面是安装eclipse时出现的错误:
Python+Eclipse+Pydev 来搭建OpenStack开发环境
首先开发环境部署需要注意:
1. Python版本 和 Pydev的版本要对应,否则Pydev安装完成后,会出现Eclipse无法识别Pydev的情况。
注:
最初我的Python版本:2.7.5, 直接使用Eclipse-->Help-->Install New Software..
使用http://pydev.org/updates 安装时,这里只能显示最新的版本,安装后,Eclipse无法识别Pydev.
网上有说可以升级JDK到最新版本来解决, 或 使用与当前Python版本一致的Pydev 来解决。
这篇网文可参看: http://www.linuxidc.com/Linux/2015-02/113883.htm
这里我选择手动下载与Python版本一致的Pydev来解决:
http://jaist.dl.sourceforge.net/project/pydev/pydev/PyDev 2.7.5/PyDev 2.7.5.zip
下载好后, 可直接解压到eclipse安装根目录下即可:
unzip PyDev2.7.5.zip -d eclipse/
另注: 若先前安装了最新版的PyDev5.2.0,则需要先在:
Eclipse-->Help-->Installation Details-->找到最新的PyDev然后卸载后,就可以看Pydev2.7.5了。
2. 配置Pydev使用的正确的Python解释器:
Eclipese-->Window-> Preferences-->Pydev-->Interpreter - Python -->Auto Config即可.
DevStack部署OpenStack开发环境 - 问题总结的更多相关文章
- 部署.NET开发环境
昨晚把家里的电脑重新部署.NET开发环境.从晚上21点安装到今天凌晨3点多才完成,还算顺利,但是耗时最漫长莫过于在安装Visual Studio 2015 Update3...... 第一,全新安装W ...
- Vagrant 部署python开发环境
Vagrant简介 Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境.它使用Oracle的开源VirtualBox虚拟化系统,使用 Chef创建自动化虚拟环境. 在Windows下 ...
- Apache Spark1.1.0部署与开发环境搭建
Spark是Apache公司推出的一种基于Hadoop Distributed File System(HDFS)的并行计算架构.与MapReduce不同,Spark并不局限于编写map和reduce ...
- win10+vscode部署java开发环境
目录 Java开发插件配置: 调试: 快捷键: 启动配置文件launch.json: 启动配置说明: Launch: Attach: User Setting: 遇到的问题: 参考: Java开发插件 ...
- 使用Vmware虚拟机部署Swift开发环境之Mac OSX系统安装
一.使用VMware虚拟机部署Swift开发环境所需工具: Vmware Workstation 10.0虚拟机软件VM安装Mac解锁工具Unlock苹果操作系统(Mac OS X Mavericks ...
- CentOS7 + Python3 + Django(rest_framework) + MySQL + nginx + uwsgi 部署 API 开发环境, 记坑篇
CentOS7 + Python3 + Django(rest_framework) + MySQL + nginx + uwsgi 部署 API 开发环境 CentOS7 + Python3 + D ...
- 如何使用Docker部署PHP开发环境
本文主要介绍了如何使用Docker构建PHP的开发环境,文中作者也探讨了构建基于Docker的开发环境应该使用单容器还是多容器,各有什么利弊.推荐PHP开发者阅读.希望对大家有所帮助. 环境部署一直是 ...
- openstack开发环境与代码测试
一.openstack单组件开发环境 1.Python虚拟环境搭建 主要参考文献: https://virtualenv.pypa.io/en/latest/virtualenv.html 说明:Py ...
- Debian7下初次尝试Nginx+Uwsgi部署Django开发环境
之前一直都用的是新浪的SAE,但是由于各种限制,各种不爽,终于下定决心开始折腾VPS,于是在搬瓦工上买了个年付VPS,开始折腾之旅. 由于对Linux一窍不通,所以不知道如何在Linux上部署开发环境 ...
随机推荐
- Extjs.panel.Panel赋值的问题
初学extjs,很是不爽.也是只有初学者才犯的错误,发出来以免再犯. 先创建一个panel var panel1 = Ext.create('Ext.panel.Panel', { id: 'p1', ...
- 第三方APP集成微信登陆功能详解
授权后接口调用(UnionID) 通过code获取access_token 接口说明 通过code获取access_token的接口. 请求说明 http请求方式: GET https://api.w ...
- Java 等额本金等额本息工具类
原文:http://www.open-open.com/code/view/1449034309983 等额本息: /** * Description:等额本息工具类 * Copyright: Cop ...
- 【深度探索c++对象模型】Function语义学之虚函数
虚函数的一般实现模型:每一个class有一个virtual table,内含该class中的virtual function的地址,然后每个object有一个vptr,指向virtual table. ...
- C# 谁改了我的代码 使用 Resharper 快速做适配器
C# 谁改了我的代码 本文告诉大家一个特殊的做法,可以修改一个字符串常量 我们来写一个简单的程序,把一个常量字符串输出 private const string str = "linde ...
- Android使用adb获得activity堆栈信息
很实用的命令: adb shell dumpsys activity 该命令能够看到当前执行的是哪个activity,执行的一些进程等 首先能够看到执行的进程: ACTIVITY MANAGER RU ...
- 【知识梳理1】Android触摸事件机制
前言 随着科学技术的发展,智能手机早已成为我们当代人身边不可缺少的"伙伴"之中的一个,堪比对象女友.每天我们对着手机反复的做着点击.滑动操作,而手机则随着我们的操作给我们展示她的精 ...
- 轻量级批量Omnitty工具安装和简单使用
一.Omnitty简单介绍 在实际工作需要同时对多台docker进行批量处理,为了节省时间,这个运维轻量级工具解决此问题 二.Omnitty简单按照 下载需要安装包和依赖包: omnitty-0.3. ...
- Servlet访问Javabean并传结果给jsp
1.先建立包名: 2.建立实体类 参考二维表,考虑各个字段名字.类型 在entity包里面建立一个类,代码如下: public class House { private String id; pri ...
- Fluently NHibernate 插入CLOB字段
ORA-01461: can bind a LONG value only for insert into a LONG column 插入oracle某表时报的错. 查来查去,是插入的某个字段值超长 ...