玩转OpenStack--16>部署 DevStack

本节按照以下步骤部署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 /工具/ create-stack-user.sh

为方便起见,将devstack目录放到/选择/堆栈下,并设置权限

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

切换到stack用户

su - stack
cd devstack

编写运行配置文件

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

devstack控制器

[本地| localrc]

MULTI_HOST = true
HOST_IP = 192.168.104.10 #management&api network
LOGFILE = / opt / stack / logs / stack.sh.log

#凭据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 =默认值

LOG_COLOR = False
LOGDIR = $ DEST / logs
SCREEN_LOGDIR = $ LOGDIR / screen

devstack-计算

[本地| localrc]

MULTI_HOST = true
HOST_IP = 192.168.104.11 #management&api network

#凭据ADMIN_PASSWORD
= admin
MYSQL_PASSWORD = secret
RABBIT_PASSWORD = secret
SERVICE_PASSWORD = secret
SERVICE_TOKEN = abcdefghijklmnopqrstuvwxyz

#服务信息
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配置
NOVA_VNC_ENABLED =真
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/(deststack-controller的IP)admin / admin登录

点击系统 - >系统信息,确保各个服务的状态正常

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

启动OpenStack

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

cd devstack ./rejoin-stack.sh

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

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

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

下面是屏幕常用命令
在屏幕中执行
Ctrl + a + n切换到下一个窗口
Ctrl + a + p切换到前一个窗口(与Ctrl + a + n相对)
Ctrl + a + 0..9切换到窗口0 ..9
Ctrl + a + d暂时断开(detach)当前屏幕会话,但不中断屏幕窗口中程序的运行

在shell中执行
屏幕-ls列出当前所有的会话
屏幕-r stack回到devstack这个会话

删除自动创建的网络

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

删除路由器管理 - >系统 - >路由器

删除网络管理员 - >系统 - >网络

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值