参考网址:

http://www.chenshake.com/install-ubuntu-14-04-devstack/

现在装完一切正常,就是不能重启,一旦重启VM,会导致给br-ex设置的IP地址丢失,正在想办法解决。

在虚拟机安装完成后,可以使用快照保存,下次使用时恢复即可。物理机没有办法。

网络环境

vmware workstation,安装ubuntu 14.04 虚拟机,记住,最小化安装,仅仅安装ssh server服务就可以。

虚拟机使用NAT网络,虚拟机默认通过dhcp获得的IP地址是

192.168.27.128/24

auto eth0
iface eth0 inet static
address 192.168.27.128
netmask 255.255.255.0
network 192.168.27.0
broadcast 192.168.27.255
gateway 192.168.27.2
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 114.114.114.114
dns-search test.com

vmware workstation默认设置分配的IP地址池是128开始分配。所以我的

Floating Ip是:192.168.27.102到192.168.27.110

网关是:192.168.27.2

查看网关命令:route -n

看图,就应该很清楚 http://docs.openstack.org/developer/devstack/guides/neutron.html

设置ubuntu源

对于ubuntu的系统,默认安全会从国外的源安装,导致速度比较慢。

sudo gedit /etc/apt/sources.list

deb http://cn.archive.ubuntu.com/ubuntu/ trusty main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse

允许update

sudo apt-get update

记得同步一下时间

sudo ntpdate ntp.sjtu.edu.cn

安装

sudo apt-get install git

下载devstack

cd /home
git clone http://git.trystack.cn/openstack-dev/devstack.git

目前Devstack脚本已经不支持直接使用root身份运行,你需要创建stack用户运行

cd /home/devstack/tools/
./create-stack-user.sh
sudo passwd stack

修改devstack目录权限,让stack用户可以运行

chown -R stack:stack /home/devstack
chmod /dev/pts/

可以考虑在虚拟机里增加一块磁盘专门给cinder使用,这个需要在运行脚本前创建好。(可选)

pvcreate /dev/sdb
vgcreate stack-volumes-default /dev/sdb

切换的stack用户下

su stack
cd /home/devstack

进入devstack目录下,创建local.conf文件

[[local|localrc]]
# Define images to be automatically downloaded during the DevStack built process.
IMAGE_URLS="http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img" #change github to trystack
GIT_BASE=${GIT_BASE:-http://git.trystack.cn}
NOVNC_REPO=${NOVNC_REPO:-http://git.trystack.cn/kanaka/noVNC.git} # Credentials
DATABASE_PASSWORD=pass
ADMIN_PASSWORD=pass
SERVICE_PASSWORD=pass
SERVICE_TOKEN=pass
RABBIT_PASSWORD=pass
#FLAT_INTERFACE=eth0 HOST_IP=192.168.27.128
SERVICE_HOST=192.168.27.128
MYSQL_HOST=192.168.27.128
RABBIT_HOST=192.168.27.128
GLANCE_HOSTPORT=192.168.27.128: ## Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="192.168.27.0/24"
FIXED_RANGE="10.0.0.0/24"
Q_FLOATING_ALLOCATION_POOL=start=192.168.27.102,end=192.168.27.110
PUBLIC_NETWORK_GATEWAY="192.168.27.2"
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 # Work offline
#OFFLINE=True
# Reclone each time
RECLONE=yes # Branches Now the devstack have bug in keystone and neutron for liberty. so we need use master
#KEYSTONE_BRANCH=stable/liberty
#NOVA_BRANCH=stable/liberty
#NEUTRON_BRANCH=stable/liberty
#SWIFT_BRANCH=stable/liberty
#GLANCE_BRANCH=stable/liberty
#CINDER_BRANCH=stable/liberty
#HEAT_BRANCH=stable/liberty
#TROVE_BRANCH=stable/liberty
#HORIZON_BRANCH=stable/liberty
#SAHARA_BRANCH=stable/liberty
#CEILOMETER_BRANCH=stable/liberty # Logging
# -------
# By default ``stack.sh`` output only goes to the terminal where it runs. It can
# be configured to additionally log to a file by setting ``LOGFILE`` to the full
# path of the destination log file. A timestamp will be appended to the given name.
LOGFILE=/opt/stack/logs/stack.sh.log
VERBOSE=True
LOG_COLOR=True
SCREEN_LOGDIR=/opt/stack/logs # the number of days by setting ``LOGDAYS``.
LOGDAYS=
# Database Backend MySQL
enable_service mysql
# RPC Backend RabbitMQ
enable_service rabbit # Enable Keystone - OpenStack Identity Service
enable_service key
# Horizon - OpenStack Dashboard Service
enable_service horizon
# Enable Swift - Object Storage Service without replication.
enable_service s-proxy s-object s-container s-account
SWIFT_HASH=66a3d6b56c1f479c8b4e70ab5c2000f5
SWIFT_REPLICAS=
# Enable Glance - OpenStack Image service
enable_service g-api g-reg # Enable Cinder - Block Storage service for OpenStack
#VOLUME_GROUP="cinder-volumes"
enable_service cinder c-api c-vol c-sch c-bak
# Enable Heat (orchestration) Service
#enable_service heat h-api h-api-cfn h-api-cw h-eng
# Enable Trove (database) Service
enable_service trove tr-api tr-tmgr tr-cond
# Enable Sahara (data_processing) Service
#enable_service sahara # 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 - Load Balancing
#enable_service q-lbaas
## Neutron - Firewall as a Service
#enable_service q-fwaas
## Neutron - VPN as a Service
#enable_service q-vpn
# VLAN configuration.
Q_PLUGIN=ml2
ENABLE_TENANT_VLANS=True # GRE tunnel configuration
#Q_PLUGIN=ml2
#ENABLE_TENANT_TUNNELS=True
# VXLAN tunnel configuration
#Q_PLUGIN=ml2
#Q_ML2_TENANT_NETWORK_TYPE=vxlan # Enable Ceilometer - Metering Service (metering + alarming)
enable_service ceilometer-acompute ceilometer-acentral ceilometer-collector ceilometer-api
enable_service ceilometer-alarm-notify ceilometer-alarm-eval
enable_service ceilometer-anotification
## Enable NoVNC
enable_service n-novnc [[post-config|$NOVA_CONF]]
[DEFAULT]
# Ceilometer notification driver
instance_usage_audit=True
instance_usage_audit_period=hour
notify_on_state_change=vm_and_task_state
notification_driver=nova.openstack.common.notifier.rpc_notifier
notification_driver=ceilometer.compute.nova_notifier

运行

./stack.sh

看看结果

测试

用admin登录Dashbord,为了测试,我们创建一个project:test,给project创建一个用户

使用该该账户重新登录Dashboard

大概的步骤

  1. 创建lan,分配内网IP地址段,记得设置dns
  2. 创建router,连接外网,同时连接lan
  3. 创建test安全组,允许tcp,udp,icmp全部访问
  4. 上传秘钥,或者创建秘钥
  5. 创建虚拟机,分配floating IP,验证网络所有功能

我是用vmware workstation做实验,我在我的笔记本上,可以直接ssh到虚拟机上,那么基本所有的问题都解决,最好是使用秘钥的方式,这样基本各种功能都测试了一遍。

参考文章

http://docs.openstack.org/developer/devstack/guides/neutron.html

http://blog.chinaunix.net/uid-13152448-id-2906443.html

关于如何重启服务等相关问题

http://www.unixarena.com/2015/08/how-to-stop-and-start-openstack-on-ubuntu.html

http://zqfan.github.io/openstack/2015/01/10/devstack/

ubuntu14.0.4.3 devstack 安装openstack的更多相关文章

  1. Vmware虚拟机Devstack安装openstack(All in one)

    Vmware虚拟机Devstack安装openstack(All in one) 博客园第一篇博客,先练习一下. 官方文档 环境 Vmware虚拟机 OS : Ubuntu 14.04 Nat网络,D ...

  2. devstack安装openstack newton版本

    准备使用devstack安装openstack N版,搞一套开发环境出来.一连整了4天,遇到各种问题,各种错误,一直到第4天下午4点多才算完成. 在这个过程中感觉到使用devstack搭建openst ...

  3. ubuntu18.04系统下用devstack安装openstack(最新版)

    ubuntu18.04系统下用devstack安装openstack(最新版) 2018年12月14日 16:34:14 Cherls 阅读数:427   前期准备: 安装git,升级pip,其他 s ...

  4. 使用devstack安装openstack

    使用devstack安装openstack 环境介绍,宿主机器 Fedora release 29 (Twenty Nine) 40核心cpu,32g内存 设想, 在fedora中安装kvm,虚拟出U ...

  5. devstack安装openstack

    devstack是目前安装OpenStack最为方便的工具,一般用于开发和测试OpenStack.如果想在生产环境安装的话,需要对 devstack做很多定制,或者使用puppet/chef等更成熟的 ...

  6. Devstack 安装OpenStack Pike版本(单机环境)

    问题背景 最近在研究OpenStack的时候,需要对其源代码进行调试,公司服务器上部署的OpenStack环境又不能随意的进行折腾,为了研究的持续性和方便性,就决定再自己的虚拟机上面使用Devstac ...

  7. 使用DevStack安装openstack(单机环境)

    DevStack是一系列可扩展的脚本,用于根据git master的最新版本快速启动完整的OpenStack环境.它以交互方式用作开发环境,并作为OpenStack项目功能测试的基础. 参考源码. 警 ...

  8. 体验devstack安装openstack

    由于公司制度,工作环境是不能直接上网的,所以在工作时间从没有体验过devstack或者其他联网方式安装openstack. 因自己购置了一台不错的主机,因而决定尝试安装一番,经过一段为期不短的内心极度 ...

  9. CentOS7 通过 devstack 安装 OpenStack

    安装前的准备 修改源 (可跳过) 将下载源变更到国内可以时下载速度大大提升 打开下面的文件 vim /etc/yum.repos.d/CentOS-Base.repo 将原来的注释掉改成: [base ...

随机推荐

  1. Java Web编程技术学习要点及方向

    学习编程技术要点及方向亮点: 传统学习编程技术落后,应跟著潮流,要对业务聚焦处理.要Jar, 不要War:以小为主,以简为宝,集堆而成.去繁取简 Spring Boot,明日之春(future of ...

  2. CSS隐藏多余文字的几个方法

    通常偏移掉字体的方式是 (1)使用text-indent:-9999px; 可是他有一个局限性 他只适用于块级元素block而我们往往有时候想偏移掉的a上的字体所以问题就来了text-indent:- ...

  3. 在Activity之间传递参数(一)

    准备: 一.创建主界面:activity_main.xml文件中<Button android:text="启动另一个Activity" android:id="@ ...

  4. VBA笔记(一)

    开启VBA编程环境--VBE 方法一:按<Alt+F11>组合建 方法二:查看代码 宏设置 当然启用宏的设置方式不同,宏的启动方式也不一样. 首先打开"office 按钮&quo ...

  5. 今天在学习NTP时发现了2个网站

    NTP 调整系统时间 一个网站是:http://chrony.tuxfamily.org/doc/1.31/manual.html  这个是专门介绍chrony的,做的很详细. 另外一个是:http: ...

  6. [Data Structure & Algorithm] 八大排序算法

    排序有内部排序和外部排序之分,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存.我们这里说的八大排序算法均为内部排序. 下图为排序 ...

  7. MFC在关闭第二个窗口时关闭主对话框

    AfxGetApp()->m_pMainWnd->SendMessage(WM_CLOSE);//关闭主对话框

  8. 【Android自学日记】搭建Android开发环境

    搭建Android应用开发环境所需工具 1_> JDK(JAVA Development)推荐使用6.0以后版本 配置环境变量(以下是环境变量的具体内容及介绍) ================ ...

  9. Segment set

    题目大意: 在一个平面上,给定N根线段,若某条线段与另一条线段相交,则将它们归于同个集合,给定k,问第k条线段所在的集合中线段的数量. 题目分析: 问题主要考察计算几何和并查集. 首先我们要判断两条线 ...

  10. Python自动化之django视图

    视图 1.获取用户请求数据 request.GET request.POST request.FILES PS: GET:获取数据 POST:提交数据 request其他方法详解:http://dja ...