devstack是一套用来给开发人员快速部署Openstack开发环境的脚本,安装过程其实比较简单,但是安装过程中可能出现的错误还是比较多的,大多数错误主要是和网络环境有关系,我在安装过程中遇到了不少的问题,在这里记录一下。
先说一下我的安装环境,网上大多数的安装主要都是通过Virtual Box或者Vmware workstation安装,这需要对自己的电脑有一定的配置需求,不然安装后电脑会比较卡,我是通过在公司的服务器上建立一台虚拟机,公司的服务器上安装的是ESXI系统,本地通过Vmware vphere client连接服务器进行操作。
新建虚拟机的系统为Ubuntu14.04 LTS,设置连接能正常上网即可,下面记录一下安装过程。
准备DevStack
安装git
sudo apt-get install git
下载代码
cd /home
git clone https://github.com/openstack-dev/devstack.git
目前devstack脚本不支持直接使用root身份运行,所以需要新建stack用户运行
cd /home/devstack/tools
./create-stack-user.sh
修改devstack目录权限,让stack用户可以运行
chown -R stack:stack /home/devstack
切换到stack用户下
su stack
cd /home/devstack
进入devstack的目录下,新建local.conf文件,我的local.conf
[[local|localrc]]
# 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
#OFFLINE=True
RECLONE=True
# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://images.trystack.cn/cirros/cirros-0.3.4-x86_64-disk.img"
HOST_IP=192.168.5.240
# Credentials
DATABASE_PASSWORD=admin
ADMIN_PASSWORD=admin
SERVICE_PASSWORD=admin
SERVICE_TOKEN=admin
RABBIT_PASSWORD=admin
HORIZON_BRANCH=stable/mitaka
KEYSTONE_BRANCH=stable/mitaka
NOVA_BRANCH=stable/mitaka
NEUTRON_BRANCH=stable/mitaka
GLANCE_BRANCH=stable/mitaka
CINDER_BRANCH=stable/mitaka
#keystone
KEYSTONE_TOKEN_FORMAT=UUID
#Heat
HEAT_BRANCH=stable/mitaka
enable_service h-eng h-api h-api-cfn h-api-cw
# Cinder
VOLUME_GROUP="cinder-volumes"
ENABLED_SERVICES+=,cinder,c-api,c-vol,c-sch,c-bak
# Ceilometer
enable_service ceilometer-acompute ceilometer-acentral ceilometer-anotification ceilometer-collector ceilometer-api
enable_service ceilometer-alarm-notifier ceilometer-alarm-evaluator
## Swift
SWIFT_BRANCH=stable/mitaka
ENABLED_SERVICES+=,s-proxy,s-object,s-container,s-account
SWIFT_REPLICAS=1
SWIFT_HASH=011688b44136573e209e
# Enable Tempest - The OpenStack Integration Test Suite
enable_service tempest
# Enabling Neutron (network) Service
disable_service n-net
enable_service q-svc
enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service q-metering
enable_service neutron
## Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="192.168.5.0/24"
FIXED_RANGE="10.0.0.0/24"
Q_FLOATING_ALLOCATION_POOL=start=192.168.5.10,end=192.168.5.20
PUBLIC_NETWORK_GATEWAY="192.168.5.1"
Q_L3_ENABLED=True
PUBLIC_INTERFACE=eth0
Q_USE_PROVIDERNET_FOR_PUBLIC=True
OVS_PHYSICAL_BRIDGE=br-ex
PUBLIC_BRIDGE=br-ex
OVS_BRIDGE_MAPPINGS=public:br-ex
# #VLAN configuration.
Q_PLUGIN=ml2
ENABLE_TENANT_VLANS=True
# Logging
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs
这需要根据不同的网络环境更改网络配置,不然会出错,主要是讲IP环境换成自己的网络环境
运行DevStack
运行时一定要切换到stack用户下
su stack
cd /home/devstack
./stack.sh
安装完成时会出现Dashboard的登陆地址
This is your host IP address: 192.168.5.240
This is your host IPv6 address: ::1
Horizon is now available at http://192.168.5.240/dashboard
Keystone is serving at http://192.168.5.240:5000/
The default users are: admin and demo
The password: admin
浏览器中输入该IP就能登陆Openstack
默认devstack会创建admin和demo两个用户,通过设置环境变量可以操作
admin:
source openrc admin admin
demo:
source openrc demo demo