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的更多相关文章

  1. 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 ...

  2. Hadoop MapReduce Next Generation - Setting up a Single Node Cluster

    Hadoop MapReduce Next Generation - Setting up a Single Node Cluster. Purpose This document describes ...

  3. Hadoop Single Node Setup(hadoop本地模式和伪分布式模式安装-官方文档翻译 2.7.3)

    Purpose(目标) This document describes how to set up and configure a single-node Hadoop installation so ...

  4. 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 ...

  5. Installing Apache Hadoop Single Node

    转载请注明出处:http://www.cnblogs.com/wubdut/p/4681286.html platform: Ubuntu 14.04 LTS hadoop 1.2.1 1. inst ...

  6. 浅析 Node.js 的 vm 模块以及运行不信任代码

    在一些系统中,我们希望给用户提供插入自定义逻辑的能力,除了 RPC 和 REST 之外,运行客户提供的代码也是比较常用的方法,好处是可以极大地减少在网络上的耗时.JavaScript 是一种非常流行而 ...

  7. 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: ...

  8. Kubernetes - Launch Single Node Kubernetes Cluster

    Minikube is a tool that makes it easy to run Kubernetes locally. Minikube runs a single-node Kuberne ...

  9. 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 ...

随机推荐

  1. C语言序列点浅析

    摘要: 现行国内的C语言教材普遍不介绍序列点,这使得读者只能“死记硬背”有序列点表达式的求值顺序,不仅造成了读者对C语言知识的认知残缺不全,而且也影响了读者学习的积极性.本文总结了序列点的作用,即表达 ...

  2. java mysql 数据类型对照

    java mysql 数据类型对照 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述             VARCHAR L+N VARCHAR java.lang. ...

  3. jvm回收对象

    jvm在判断对象死亡之前需要判断对象是否可到达,方法有引用计数算法和可达性分析算法,jvm采用的是后者.首先来了解一下这两种算法. 引用计数算法: 算法定义 为每个对象增加一个字段记录被引用的次数,并 ...

  4. TortoiseSVN历史版本安装及svn服务器搭建

    一.TortoiseSVN安装 1.TortoiseSVN下载 网址如下:https://tortoisesvn.net/downloads.html   进入客户端下载页面,根据你的电脑选择是64位 ...

  5. virtualbox 中的linux 共享文件

    首先要安装VirtualBox的增强版功能(VBoxGuestAdditions) 在 设备--->安装增强版功能----->运行,重启电脑. 出现这个问题,看看安装增强功能的时候,有没有 ...

  6. 【CSS学习笔记】关于有语义标签

    1.哪些是单闭合标签,哪些是双闭合标签? HTML的单闭合标签有: 1.<br /> 2.<hr /> 3.<area /> 4.<base /> 5. ...

  7. Android学习---- 十月

    //因为域名去备案了 //PHP的学习想停一下,刚好说什么Java要开始实验课了 //暑假看的Java都生疏了,就想顺便学一下Android,熟悉一下Java的语法也好,顺便学学新东西 //昨天域名备 ...

  8. Girl Develop It Chapter Leaders at 2015 Annual Leadership Summit

    Girl Develop It Chapter Leaders at 2015 Annual Leadership Summit Corinne Warnshuis, Executive Direct ...

  9. Kafka集群搭建

    1.zookeeper搭建 Kafka集群依赖zookeeper,需要提前搭建好zookeeper zookeeper快速搭建推荐地址:http://nileader.blog.51cto.com/1 ...

  10. Proteus中MATRIX-8X8 LED灯的连接

    上面8个引脚用于选择行,低电平有效.下面8个引脚用于选择列,高电平有效. 经测试,红色点阵LED与之相反,是上面的引脚用于选择列,且高电平有效:下面的引脚用于选择行,低电平有效. 在AT89C51单片 ...