本节按照以下步骤部署 DevStack 实验环境,包括控制节点和计算节点

创建虚拟机

按照物理资源需求创建 devstack-controller 和 devstak-compute 虚拟机

安装操作系统

安装 Ubuntu 14.04,并配置 eth0 的 IP devstack-controller  192.168.104.10 devstak-compute    192.168.104.11

下载代码

下载 devstack 代码,并切换到 stable/liberty 分支

apt-get install git -y

git clone https://git.openstack.org/openstack-dev/devstack -b stable/liberty

配置 stack 用户

创建 stack 用户

devstack/tools/create-stack-user.sh

为方便起见,将devstack目录放到/opt/stack下,并设置权限

mv devstack /opt/stack

chown -R stack:stack /opt/stack/devstack

切换到 stack 用户

su – stack

cd devstack

编写运行配置文件

在 /opt/stack/devstack 目录下,创建 local.conf。

devstack-controller

[[local|localrc]]

MULTI_HOST=trueHOST_IP=192.168.104.10 # management & api network

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-vpn

Q_AGENT=linuxbridge

ENABLE_TENANT_VLANS=True

TENANT_VLAN_RANGE=3001:4000

PHYSICAL_NETWORK=default

LOG_COLOR=False

LOGDIR=$DEST/logs

SCREEN_LOGDIR=$LOGDIR/screen

devstack-compute

[[local|localrc]]

MULTI_HOST=true

HOST_IP=192.168.104.11 # management & api network

# Credentials

ADMIN_PASSWORD=admin

MYSQL_PASSWORD=secret

RABBIT_PASSWORD=secret

SERVICE_PASSWORD=secret

SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz

# Service information

SERVICE_HOST=192.168.104.10

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

CEILOMETER_BACKEND=mongodb

DATABASE_TYPE=mysql

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=False

LOGDIR=$DEST/logs

SCREEN_LOGDIR=$LOGDIR/screen

另外,为了加快安装速度,还可以加上下面的配置使用国内的 devstack 镜像站点

# 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

开始部署

分别在 devstack-controller 和 devstak-compute 上执行命令

./stack.sh

会输出各项操作的结果。 日志会写到 stack.sh.log 文件。

整个过程需要连接Internet,网速慢可能会花较长时间,成功后最后会打印出相关信息。

devstack-controlle 上的输出

devstack-compute 上的输出

验证 OpenStack

下面验证 OpenStack 已经正常运行 浏览器访问 http://192.168.104.10/(devstack-controller 的 IP) admin/admin 登录

点击 System->System Information,确保各个服务的状态正常

这里 cinder-volume 的状态是 “Down”,这是因为我们还没有配置 cinder,后面会让它 Up 起来。

启动 OpenStack

如果重启了系统,OpenStack 不会自动启动,可以运行下面命令

cd devstack ./rejoin-stack.sh

运行成功后,OpenStack 的每个服务都在一个 screen 中以进程方式运行。 使用 screen 有几个好处:

可以方便的在不同服务之间切换和查看日志。 因为OpenStack的服务很多,每个服务都有自己的日志文件。 查找日志是一件非常麻烦的事情,screen可以帮我们提高效率。

当我们修改了某个服务的配置文件需要重启服务时,只需在该服务的 screen 窗口 Ctrl+C,然后在命令行中找到上一个命令(Up键)执行就行,这个命令就是启动服务的命令。

下面是 screen 常用命令

在 screen 中执行

Ctrl+a+n 切换到下一个窗口

Ctrl+a+p 切换到前一个窗口(与 Ctrl+a+n 相对)

Ctrl+a+0..9 切换到窗口 0..9

Ctrl+a+d 暂时断开(detach)当前 screen 会话,但不中断 screen 窗口中程序的运行

在 shell 中执行

screen -ls  列出当前所有的 session

screen -r stack  回到 devstack 这个 session

删除自动创建的网络

Devstack 在部署时可能会创建几个测试网络,为了得到一个干净的环境需将其删除

删除 Router Admin->System->Routers

删除 Network Admin->System->Networks

至此,我们得到了一个干净的 OpenStack 环境。 后面会在这个环境中实践各个模块。

devstack mysql_部署 DevStack - 每天5分钟玩转 OpenStack(17)相关推荐

  1. 创建 OVS vlan101 并部署 instance - 每天5分钟玩转 OpenStack(139)

    前面我们创建了 OVS vlan100 并部署了 instance,今天继续创建 vlan101. subnet IP 地址为 172.16.101.0/24. 底层网络发生了什么变化 Neutron ...

  2. Neutron 物理部署方案 - 每天5分钟玩转 OpenStack(68)

    2019独角兽企业重金招聘Python工程师标准>>> 前面我们讨论了 Neutron 的架构,本节讨论 Neutron 的物理部署方案: 不同节点部署不同的 Neutron 服务组 ...

  3. 创建 vxlan 并部署 instance - 每天5分钟玩转 OpenStack(147)

    上一节我们完成了 OVS VxLAN 的配置工作,今天创建 vxlan100_net 并部署 instance. 创建 vxlan100_net 打开菜单 Admin -> Networks,点 ...

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

    http://www.cnblogs.com/CloudMan6/p/5357273.html 部署 DevStack - 每天5分钟玩转 OpenStack(17) 本节按照以下步骤部署 DevSt ...

  5. 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22)

    http://www.cnblogs.com/CloudMan6/p/5402490.html 如何使用 OpenStack CLI - 每天5分钟玩转 OpenStack(22) 本节首先讨论 p_ ...

  6. 写在最前面 - 每天5分钟玩转 OpenStack(1)

    写在最前面 <每天5分钟玩转 OpenStack>是一个 OpenStack 教程,这是第 1 篇. 这个教程有下面两个特点: 系统讲解 OpenStack 从架构到各个组件:从整体到细节 ...

  7. LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8)

    http://www.cnblogs.com/CloudMan6/p/5277927.html LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8) LVM 类型的 ...

  8. Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34)

    Pause/Resume Instance 操作详解 - 每天5分钟玩转 OpenStack(34) 本节通过日志详细分析 Nova Pause/Resume 操作. 有时需要短时间暂停 instan ...

  9. Cinder 组件详解 - 每天5分钟玩转 OpenStack(47)

    Cinder 组件详解 - 每天5分钟玩转 OpenStack(47) 本节我们将详细讲解 Cinder 的各个子服务. cinder-api cinder-api 是整个 Cinder 组件的门户, ...

最新文章

  1. 使用ONNX将模型转移至Caffe2和移动端
  2. 我真不想学 happens - before 了!
  3. Eclipse 自动注释的设置
  4. 简单分析Guava中RateLimiter中的令牌桶算法的实现
  5. 你还在用虚拟机,win10自带的linux还有图形界面(小白教程)
  6. leetcode 273场周赛 Problem-C
  7. ERP计划参数如何在线更新
  8. JAVA集合Set之HashSet详解_Java基础———集合之HashSet详解
  9. android asynctask源码分析,Android异步任务AsyncTask的使用与原理分析
  10. 如何快速自学生物信息学
  11. 算法导论第八章练习参考答案
  12. 打造网站克隆、仿站工具、含源码(.NET CORE + selenium + chromedriver)
  13. 概率逗号分号_概率里面的逗号
  14. 衡是计算机科学与技术学院,郭华平
  15. 淘宝的返利网怎么用_淘宝便宜的方法
  16. GPRS PDP APN
  17. 导出excel合并单元格
  18. MSM搭建(Memcached_Session_Manager)--解决集群session共享
  19. 如何制作个人的纯手写电子签名
  20. Tails OS 让你实现隐形上网!

热门文章

  1. 重启linux之旅--manjaro kde使用心得(1):安装、proxy、输入法、美化桌面、软件等等
  2. 第1次任务-面向对象设计(购物车)
  3. STM32F103步进电机梯形匀加速算法
  4. SpringCloud实战(五)-路由网关(zuul)
  5. 前几天面了个30岁的测试员,年薪50w问题基本都能回答上,应该刷了不少八股文···
  6. 骁龙820A: 高通车联网诱惑力的代表
  7. cocos2D插件转3D插件
  8. [转][转]超级玛利
  9. 自一位员工离职后的感想和我对企业、公司的几点看法
  10. 关于Django、Flask的一些面试知识点