Devstack single node Installation on VM
Last three days, I want to install devstack on my virtual machine on Vmware Workstation.The VM'system is Ubuntu14.04. However,i met too many problem to install it successfully.When i cannot see the hope, i had to borrow a America VM from my workmate.This vm's system is also Ubuntu14.04.To my surprise, the same operation steps, this America vm installed successfully.Here is a picture which shows eventual installation:

Now,let me show my installation steps(thanks to SongPeng who is one of my emc workmate)
official documentation is here
1.update your system
$sudo apt-get update
2.reboot:make it work
3.install your git
$sudo apt-get install git
4.download devstack source code
$cd /usr/local/ $sudo git clone https://git.openstack.org/openstack-dev/devstack
5.in order to avoid permisstion denied, you can use create-stack-user.sh to create a user named stack and a group also named stack
$sudo /usr/local/devstack/tools/create-stack-user.sh $sudo chown -R stack:stack /usr/local/devstack/
6.access stack
$sudo su stack
7.under the stack,you create a configuration file named 'localrc',there is the simplest configuration below,the official documentation is here:
stack@ubuntu:/usr/local/devstack$ vim localrc ADMIN_PASSWORD=secrete
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=$ADMIN_PASSWORD
#solve ‘fatal: unable to connect to git.openstack.org’
GIT_BASE=${GIT_BASE:-https://git.openstack.org} DEBUG=True
VERBOSE=True
DEST=/opt/stack
LOGFILE=$DEST/logs/stack.sh.log
SCREEN_LOGDIR=$DEST/logs/screen SYSLOG=False
LOG_COLOR=False
LOGDAYS=
8.start to install(notice that under the stack)
stack@ubuntu:/usr/local/devstack$ ./stack.sh
Till now,above is installation steps.Below are problems which i met and solutions.
grep -ir 'error\|fail\|usage\|not found' /opt/stack/logs/stack.sh.log
grep -ir 'error\|fail\|usage\|not found' /opt/stack/logs/screen/
A useful tip: when you see "error", scroll the log up until you find the root one.
Download dependency failed
Symptom:
1.

2.

Cause:Network is not stable
Solution:manual download relative dependency by yourself and install it
$cd /tmp/
$wget https://pypi.python.org/packages/source/B/Bable-1.3.tar.gz
#verify md5 consistancy
$md5sum Bable-1.3.tar.gz
$sudo pip install --upgrade Bable-1.3.tar.gz
Module version does not exist!
Symptom
:./stack.sh:68+sudo a2enmod version
ERROR: Module version does not exist!
The code location is in lib/apache:68. See the comment
Ensure mod_version enabled for . This is built-in statically on anything recent, but precise (2.2) doesn't have it enabled
So, feel free to ignore this error.
openstack role list raises unrecognized arguments: --group(thanks to Accelazh)
Symptom
::./stack.sh:+openstack role list --group 3c65c1a8d12f40a2a9949d5b2922beae --project 18ab3a46314442b183db43bc13b175b4 --column ID --column Name
usage: openstack role list [-h] [-f {csv,html,json,table,yaml}] [-c COLUMN]
[--max-width <integer>]
[--quote {all,minimal,none,nonnumeric}]
[--project <project>] [--user <user>]
openstack role list: error: unrecognized arguments: --group 3c65c1a8d12f40a2a9949d5b2922beae
Code location at lib/keystone:418, invoked by functions-common:773.
The first reason is that the python-openstackclient version is too old (openstack --version), upgrade it
sudo pip install --upgrade python-openstackclient
You need to add python-openstackclient to LIBS_FROM_GIT in local.conf, to make sure devstack uses the newest version of python-openstackclient. Note that, devstack will use master branch of python-openstackclient instead of stable/kilo.
# Add python-openstackclient to your LIBS_FROM_GIT
LIBS_FROM_GIT=python-openstackclient
The next step, since keystone v2.0 doesn't even have the concept "group", you need to force here to use keystone V3 api.
$ git diff
diff --git a/functions-common b/functions-common
index d3e93ed..bd55d7e
--- a/functions-common
+++ b/functions-common
@@ -, +, @@ function get_or_add_user_project_role {
# Gets or adds group role to project
# Usage: get_or_add_group_project_role <role> <group> <project>
function get_or_add_group_project_role {
+ local os_url="$KEYSTONE_SERVICE_URI_V3"
# Gets group role id
local group_role_id=$(openstack role list \
--group $ \
--project $ \
--column "ID" \
--column "Name" \
+ --os-identity-api-version= \
+ --os-url=$os_url \
| grep " $1 " | get_field )
if [[ -z "$group_role_id" ]]; then
# Adds role to group
@@ -, +, @@ function get_or_add_group_project_role {
$ \
--group $ \
--project $ \
+ --os-identity-api-version= \
+ --os-url=$os_url \
| grep " id " | get_field )
fi
echo $group_role_id
Related devstack bug: #1441010
InsecurePlatformWarning
cause:your Python version is too old
solution:upgrade to a newer Python version.
$sudo pip install --upgrade Python
The eventual happy Running portal:
username:admin secret:secrete

Devstack single node Installation on VM的更多相关文章
- Openstack: Single node Installation and External Network Accessing Configuration Guide
Summary of installation Step 0: Prerequisites Step 1: Create Openstack hostsystem Step 2: Config Ope ...
- Hadoop MapReduce Next Generation - Setting up a Single Node Cluster
Hadoop MapReduce Next Generation - Setting up a Single Node Cluster. Purpose This document describes ...
- Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)
Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...
- Setting up a Single Node Cluster Hadoop on Ubuntu/Debian
Hadoop: Setting up a Single Node Cluster. Hadoop: Setting up a Single Node Cluster. Purpose Prerequi ...
- Installing Apache Hadoop Single Node
转载请注明出处:http://www.cnblogs.com/wubdut/p/4681286.html platform: Ubuntu 14.04 LTS hadoop 1.2.1 1. inst ...
- 浅析 Node.js 的 vm 模块以及运行不信任代码
在一些系统中,我们希望给用户提供插入自定义逻辑的能力,除了 RPC 和 REST 之外,运行客户提供的代码也是比较常用的方法,好处是可以极大地减少在网络上的耗时.JavaScript 是一种非常流行而 ...
- all rows from client_id can grow infinitely compared to a single node when hashing by client_id
all rows from client_id can grow infinitely compared to a single node when hashing by client_id Re: ...
- Kubernetes - Launch Single Node Kubernetes Cluster
Minikube is a tool that makes it easy to run Kubernetes locally. Minikube runs a single-node Kuberne ...
- Share single RDM between multiple VM's in ESX
1.Create a VM01 on esx01,Create a VM02 on esx02 2.Create the RDM on your VM01 (using the virtual, no ...
随机推荐
- OGG学习笔记02-单向复制配置实例
OGG学习笔记02-单向复制配置实例 实验环境: 源端:192.168.1.30,Oracle 10.2.0.5 单实例 目标端:192.168.1.31,Oracle 10.2.0.5 单实例 1. ...
- 利刃 MVVMLight 2:Model、View、ViewModel结构以及全局视图模型注入器的说明
上一篇我们已经介绍了如何使用NuGet把MVVMLight应用到我们的WPF项目中.这篇我们来了解下一个基本的MVVMLight框架所必须的结构和运行模式. MVVMLight安装之后,我们 ...
- 标签<a>的注意事项1
使用a标签时,其子元素可以为其他元素,但是不能包含<a>标签,否则会造成布局改变! 因此请尽量不要在a标签里放太多子元素,可以在外层套一个div,其他子元素放在a标签同级下. 正确布局: ...
- JavaScript字符和数组一些基本算法题
1.翻转字符串 例子(要求:先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后把数组转化成字符串) function reverseString(str) { str=str.sp ...
- 冰刃IceSword中文版 V1.22 绿色汉化修正版
软件名称: 冰刃IceSword中文版 V1.22 绿色汉化修正版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win 32位/64位 软件大小: 2.1MB 图片预览: 软件简介: Ic ...
- java生成图片
在一张图片上绘制别的图片以及文字. public String GenerateImage(WebCast_baseinfo base,String code,String customName,St ...
- apache 配置静态文件缓存和开启gzip压缩
1,设置文件静态缓存3天: 在httpd.conf 里添加如下代码: #文件静态缓存配置 <IfModule expires_module> #打开缓存 ExpiresActive on ...
- Spring Security(15)——权限鉴定结构
目录 1.1 权限 1.2 调用前的处理 1.2.1 AccessDecisionManager 1.2.2 基于投票的AccessDecisionManager实 ...
- android移动开发学习笔记(二)神奇的Web API
本次分两个大方向去讲解Web Api,1.如何实现Web Api?2.如何Android端如何调用Web Api?对于Web Api是什么?有什么优缺点?为什么用WebApi而不用Webservice ...
- 序列化与反序列化总结(Serializable和Parcelable)
序列化是指将对象的状态信息转换为可以存储或传输的形式的过程. 在Java中创建的对象,只要没有被回收就可以被复用,但是,创建的这些对象都是存在于JVM的堆内存中,JVM处于运行状态时候,这些对象可以复 ...