本节按照以下步骤部署 DevStack 实验环境,包括控制节点和计算节点。详细的部署和配置可以查看老师的视频
 
一、创建虚拟机
 
按照物理资源需求创建 devstack-controller 和 devstack-compute 虚拟机
 
我的实验环境:
 
    devstack-controller    8C / 16G / 160G / NIC 3
    devstack-compute     8C / 16G / 160G / NIC 3
 
 
二、安装操作系统
 
安装Ubuntu 16.04,并配置eth0 IP:
 
    devstack-controller    10.12.31.241/22
    devstack-compute     10.12.31.242/22
 
8C / 16G / 160G / NIC 3
eth0     管理
eth1    租户网络
eth2    外网
vhv.enable = "TRUE"
root user 123456
到办公室路由
安装 SSH、Virtual Machine Host
apt 源-阿里云
pip 源-阿里云
 
三、下载代码
 
下载 DevStack 代码,并切换到 stable/newton 分支
 
apt-get install git -y
git clone https://git.openstack.org/openstack-dev/devstack -b stable/ocata
 
trystack源
 
controller节点
 
root@DevStack-Controller:~/devstack# cat local.conf
[[local|localrc]]
 
MULTI_HOST=true
 
# management & api network
HOST_IP=10.12.31.241
LOGFILE=/opt/stack/logs/stack.sh.log
 
# Credentials
ADMIN_PASSWORD=admin
MYSQL_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=secret
SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz
 
# enable neutron-ml2-vlan
disable_service n-net
enable_service q-svc,q-agt,q-dhcp,q-l3,q-meta,neutron,q-lbaas,q-fwaas
Q_AGENT=linuxbridge
ENABLE_TENANT_VLANS=True
TENANT_VLAN_RANGE=3001:4000
PHYSICAL_NETWORK=default
 
LOG_COLOR=True
LOGDIR=$DEST/logs
SCREEN_LOGDIR=$LOGDIR/screen
 
# 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
enable_service placement-api
enable_service placement-client
 
 
compute节点
 
root@DevStack-Compute:~/devstack# cat local.conf
[[local|localrc]]
 
MULTI_HOST=true
# management & api network
HOST_IP=10.12.31.242
 
# Credentials
ADMIN_PASSWORD=admin
MYSQL_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=secret
SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz
 
# Service information
SERVICE_HOST=10.12.31.242
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
Q_HOST=$SERVICE_HOST
KEYSTONE_AUTH_HOST=$SERVICE_HOST
KEYSTONE_SERVICE_HOST=$SERVICE_HOST
 
ENABLED_SERVICES=n-cpu,q-agt,neutron
Q_AGENT=linuxbridge
ENABLE_TENANT_VLANS=True
TENANT_VLAN_RANGE=3001:4000
PHYSICAL_NETWORK=default
 
# vnc config
NOVA_VNC_ENABLED=True
NOVNCPROXY_URL="http://$SERVICE_HOST:6080/vnc_auto.html"
VNCSERVER_LISTEN=$HOST_IP
VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSERVER_LISTEN
 
LOG_COLOR=True
LOGDIR=$DEST/logs
SCREEN_LOGDIR=$LOGDIR/screen
 
# 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
enable_service placement-api
enable_service placement-client
 
 
四、配置 stack 用户(本步操作两个节点都要做,且操作方法一样)
 
创建 stack 用户
 
root@DevStack-Controller:~/devstack/tools# ./create-stack-user.sh
Creating a group called stack
Creating a user called stack
Giving stack user passwordless sudo privileges
 
为 stack 用户配置 pip 国内源
 
root@DevStack-Controller:~/devstack/tools# cp -a /root/.pip /opt/stack/
root@DevStack-Controller:~/devstack/tools# chown -R stack.stack /opt/stack/.pip/
root@DevStack-Controller:~/devstack/tools# ll /opt/stack/.pip/
total 12
drwxr-xr-x 2 stack stack 4096 May 21 21:28 ./
drwxr-xr-x 3 stack stack 4096 May 21 22:40 ../
-rw-r--r-- 1 stack stack  104 May 21 21:28 pip.conf
 
为了方便起见,将devstack目录放到 /opt/stack 下,也是就是stack用户的家目录,并设置权限
 
root@DevStack-Controller:~# mv devstack /opt/stack/
root@DevStack-Controller:~# chown -R stack:stack /opt/stack/devstack
 
五、开始部署
 
先在    devstack-controller    上执行 
 
root@DevStack-Controller:~# su - stack
stack@DevStack-Controller:~$ ls
devstack
stack@DevStack-Controller:~$ cd devstack/
stack@DevStack-Controller:~/devstack$ ./stack.sh
 
 
然后在    devstack-compute   执行
 
root@DevStack-Compute:~# su - stack
stack@DevStack-Compute:~$ ls
devstack
stack@DevStack-Compute:~$ cd devstack/
stack@DevStack-Compute:~/devstack$ ./stack.sh
 
 
 
六、验证 OpenStack 
 
访问 http://10.12.31.241  ( DevStack-Controller 的 IP )    admin / admin 
 
 
    
 
查看  管理员- 系统 - 系统信息 中各项内容的状态
 
 
 
 
 
七、启动OpenStack
 
如果重启了系统,OpenStack 不会自动启动,需要重新运行 stack.sh 命令。
 
重跑 stack.sh 的结果是重新初始化,之前的配置不会保留。所有如果节点都是虚拟机,建议不要重启,直接休眠,下次就不用重新初始化了。
 
运行成功后OpenStack 的每个服务都在一个screen 中以进程的方式运行。使用screnn的几个好处:
 
    1、可以方便的在不同服务之间切换和查看日志。因为OpenStack的服务很多,每个服务都有自己的日志文件。查找日志试衣间非常麻烦的事情,screen可以帮我们提高效率。
 
    2、当我们修改了某个服务的配置文件需要重启服务时,只需在该服务的screen窗口 Ctrl + C ,然后在命令行中找到上一个命令(Up键)执行就行,这个命令就是启动服务的命令。
 
下面是screen常用命令:
 
    Ctrl + a + n    切换到下一个窗口
    Ctrl + a + p    切换到前一个窗口
    Ctrl + a + 0-9 切换到第 0-9 的窗口
    Ctrl + a + d    暂时断开(detach)当前screen 会话,但不中断screen窗口程序的运行
 
在shell 中执行screen命令
 
    screen -ls    列出当前所有的 session
    screen -r stack    回到 devstack 这个session
 
八、删除自动创建的网络
 
DevStack 在部署时可能会创建几个测试网络,为了得到一个干净的环境需要将其删除。
 
转到  管理员 - 系统 - 路由 删除路由条目
 
 
转到  管理员 - 系统 - 网络 删除网络条目
 
 

 
 
我感觉应该跟Pip版本无关,可能是别的原因。另外,建议用Ubuntu16.04 + ocata版本,这个 成功率高。
Ocata版本,需要在local.conf中加入下面两行:
enable_service placement-api 和
enable_service placement-client
 
下面的源如果能找到国内镜像站点,会提速很多
Get:2 http://ubuntu-cloud.archive.canonical.com/ubuntu xenial-updates/ocata/main amd64 qemu-system-arm amd64 1:2.8+dfsg-3ubuntu2.9~cloud5.1 [5159 kB]
 
 
 
 

O017、部署DevStack的更多相关文章

  1. 部署 DevStack - 每天5分钟玩转 OpenStack(17)

    本节按照以下步骤部署 DevStack 实验环境,包括控制节点和计算节点 创建虚拟机 按照物理资源需求创建 devstack-controller 和 devstak-compute 虚拟机 安装操作 ...

  2. 部署 DevStack

    本节按照以下步骤部署 DevStack 实验环境,包括控制节点和计算节点 创建虚拟机 按照物理资源需求创建 devstack-controller 和 devstak-compute 虚拟机 安装操作 ...

  3. Openstack 实现技术分解 (1) 开发环境 — Devstack 部署案例详解

    目录 目录 前言 系统环境 Devstack 下载源码 配置文件 local.conf & localrc 简易的环境脚本 openrc 部署 Devstack 自动化部署流程 部署案例 单节 ...

  4. Ubuntu 14.04 安装 DevStack与遇到的的问题记录

    本文总结Ubuntu 14.04下部署DevStack的过程以及一些可能遇到的问题. 一.安装 以下的操作最好在普通用户下进行,至少在git clone devstack的时候使用普通用户,这样可以避 ...

  5. 配置基于Devstack的嵌套KVM虚拟化

    本文为minxihou的翻译文章,转载请注明出处Bob Hou: http://blog.csdn.net/minxihou JmilkFan:minxihou的技术博文方向是 算法&Open ...

  6. 每天5分钟 玩转OpenStack 目录列表

    最近在学习 OpenStack 的相关知识,一直苦于 OpenStack 的体系庞大以及复杂程度,学习没有进度,停滞不前.偶然机会在 51CTO 上发现了一个热点的专题关于 OpenStack 的,题 ...

  7. Neutron网络研究

    你将学到什么 虚拟机的Ping包是如何出外网的 DevStack环境准备 节点 硬件配置 网络配置 类型 操作系统 DevStack 4G 2CPU 50GB 2张网卡(NAT模式) VMWare虚拟 ...

  8. devstack部署openstack环境

    背景:公司需要搭建openstack私有云.配置两台物理服务器. 各大搜索引擎了解了下OpenStack.决定先在虚拟机上部署实现openstack. 前提准备 设备:一台宿主机Windows10 1 ...

  9. 使用devstack/pike部署多节点实验

    目录 第一步:安装Ubuntu16.04 server并以stack为用户名创建用户 第二步:安装git及相关配置 第三步:安装Open vSwitch 2.5.X 第四步:获取devstack脚本 ...

随机推荐

  1. Android和jS互调技术Demo实现

    package com.loaderman.webviewdemo; import android.os.Bundle; import android.support.v7.app.AppCompat ...

  2. C#session配置

    web Form 网页是基于HTTP的,它们没有状态, 这意味着它们不知道所有的请求是否来自同一台客户端计算机,网页是受到了破坏,以及是否得到了刷新,这样就可能造成信息的丢失. 于是, 状态管理就成了 ...

  3. 模拟窗口类ModelForm的应用

    模拟窗口类ModelForm的应用 模拟窗口是Form的窗口中的fields是引用models类 不知道窗口类,点击:https://www.cnblogs.com/guguobao/p/932202 ...

  4. spring-boot集成3:集成swagger

    Why swagger? 使用swagger让你从编写接口文档的无聊工作中解脱出来 1.Maven依赖 <!-- swagger --> <dependency> <gr ...

  5. Tor路径选择说明

    Tor Path Specification Roger Dingledine Nick Mathewson Note: This is an attempt to specify Tor as cu ...

  6. Qt输出中文乱码的问题

    /* 我遇到的情况: 文件编码为UTF-8.程序输输出中文位乱码. 解决方案: 1. 工具->选项->环境->语言: Chinese 2. 选项->文本编辑器->行为-& ...

  7. Spring Bean 管理

    1 Spring 工厂类 2 XML 方式 1.1 Bean 实例化的三种方式 无参构造方法 静态工厂方法 实例工厂方法 3 XML方式属性注入 4 注解方式 5 注解方式属性注入

  8. Cisco 三层交换机划分VLan与普通路由器连接配置

    根据一些中小企业的一些业务需求,设计一套方案: 计划目标:针对不同部门划分不同的VLAN,前期满足能够同时上网的需求,后期需要能够隔离不同部门的资源访问(本次配置操作不涉及). 因之前未接触CISCO ...

  9. 注入之Mysql-Getshell思路

  10. 【神经网络与深度学习】gflags介绍

    gflags是什么: gflags是google的一个开源的处理命令行参数的库,使用c++开发,具备python接口,可以替代getopt. gflags使用起来比getopt方便,但是不支持参数的简 ...