本节按照以下步骤部署 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. LeetCode 48. 旋转图像(Rotate Image)

    题目描述 给定一个 n × n 的二维矩阵表示一个图像. 将图像顺时针旋转 90 度. 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵.请不要使用另一个矩阵来旋转图像. 示例 1: ...

  2. 设置Chart.js默认显示Point点的值不用鼠标经过才显示

    Chart.js默认的显示方式是鼠标经过Point点的时候才会显示这个点的值,代码如下: var testdata: { periodNum: ["2018121","2 ...

  3. EBI架构 VS. MVC

    和 MVC 模式中的 Model 代表着整个后端(包括所有实体.服务和它们之间的关系在内的一切)一样,EBI 模式将边界看作是和外部世界的完整连接,而不仅仅是一个视图.一个控制器或是一个接口(这里指的 ...

  4. GIS面积计算问题

    好长时间不更新了,今天说点干货,项目用到的. 1.项目中要用到计算面积的,根据火星坐标: 2.百度找了各种面积计算,google了半天,也没发现那个比较准确: 直接说干货吧.咱也高大上一会,用 Arc ...

  5. (转)js控制窗口失去焦点(包括屏蔽Alt+Tab键切换页面)

    本章内容转自:http://www.cnblogs.com/BoKeYuanVinson/articles/3360954.html 转载自网络贴吧: 页面脚本是无法截获alt键的,不过可以变通一下, ...

  6. 阶段3 3.SpringMVC·_06.异常处理及拦截器_6 SpringMVC拦截器之拦截器入门代码

    创建拦截器 新建包 实现拦截器的接口 接口中没有强制实现里面的方法.jdk1.8的特性.接口中已经实现了方法 这就是相当于实现了这个接口.方法已经全帮你实现过了. 如果想去写新的实现方法.Ctrl+o ...

  7. java源码-HashMap类设计

    map(内部interface Entry<K,V>)->abstractMap(定义视图 entrySet抽象方法)->hashMap(静态内部类Node(继承Entry&l ...

  8. re&xpath&bs4

    一.re 二.xpath 三.bs4

  9. 利用js代码自动删除稿件的普通弹幕

    事情的起因是在b站投稿了一个高级弹幕测试的视频(av9940487),但是由于b站的弹幕池机制是新的弹幕顶掉旧的弹幕,所以导致一些人发的高级弹幕很快就被顶掉了. 所以就想着写个脚本来自动删除属性为普通 ...

  10. Lua for Mac环境搭建

    1⃣️在Mac上安装Lua的运行环境再简单不过了,如果你的Mac Terminal上安装了Homebrew的话,只需要键入`brew install lua`即可. longsl-mac:~ long ...