Jun 052013
 

Grizzly 是4月5号发布,不过我一直折腾Quantum网络是有问题的。其实我相信解决这些问题,应该有很多办法,需要的其实是时间。

过去如果测试Qauntum和OVS,我们需要一台服务器有3块网卡,这样很多朋友是不具备这样的条件,大家的情况都一样,都是只有一台服务器,2块网卡。我这次安装是使用老外的脚本去安装,目前脚本是支持GRE和VLAN模式,如果脚本装完后没问题,那么step by step的安装,其实也就简单。

文档更新记录

2013年6月5日:完成了基本文档,虚拟机可以创建成功,可以ping通虚拟机,不过meta有问题,密钥无法注入。看了一下quantum的配置,发现和Folsom版本差异不小。改天就研究。

网络拓扑

对于Quantum来说,他是至少需要3个网络,

  1. 管理网络(Management/API Network )例如消息队列,mysql访问的网络
  2. 数据网络(Data Network)就是虚拟机间的通讯网络
  3. 公共网络(Public / API Netwrok)  就是外界可以访问的网络
+------------------- Public/API Network
|
+------------+
|vm|vm|...   |
+------------+
| all in one |
+------------+
|     |      
+-----)------------- Management/API Network
      |             
      +------------- Data Network

当服务器只有两块网卡的时候,把Data Network和Management合并。

我的网络设置 /etc/network/interface

auto lo
iface lo inet loopback

# this NIC must be on management network
auto eth0
iface eth0 inet static
address 10.1.199.8
netmask 255.255.255.0
network 10.1.199.0
gateway 10.1.199.1
dns-nameservers 8.8.8.8 8.8.4.4


# this NIC will be used for VM traffic to the internet
auto eth1
iface eth1 inet static
    up ifconfig $IFACE 0.0.0.0 up
    up ip link set $IFACE promisc on
    down ip link set $IFACE promisc off
    down ifconfig $IFACE down
    address 192.168.98.8
    netmask 255.255.255.0

eth0,是管理网络,不过他是需要访问外网,安装的源,需要通过管理网络访问。如果你通过eth1去访问外网,会导致安装到一半的时候中断,因为脚本会对eth1设置bridge,导致网络无法使用。

简单点说,就是管理网络的网关是10.1.199.1,192.168.98.1是公网的IP的网关,这个在脚本里指定。

使用脚本

git clone git://github.com/jedipunkz/openstack_grizzly_install.git
cd openstack_grizzly_install

设置 setup.conf,你需要根据你的情况调整

#HOST_IP='10.200.10.57'
#HOST_PUB_IP='10.200.9.57'
#PUBLICNETWORK_NIC='eth0'
HOST_IP='10.1.199.8'
HOST_PUB_IP='192.168.98.8'
PUBLICNETWORK_NIC='eth1'

#CINDER_VOLUME='/dev/sdb'
CINDER_VOLUME='/dev/sda7'

# ---------------------------------------------------------------
# quantun parameters
# VM will be on this networks
# int_net : internal network
# ext_net : external network (floating ip range)
# ---------------------------------------------------------------
# NETWORK_TYPE must be 'vlan' or 'gre'
NETWORK_TYPE='gre'
INT_NET_GATEWAY='172.24.17.254'
INT_NET_RANGE='172.24.17.0/24'
EXT_NET_GATEWAY='192.168.98.1'
EXT_NET_START='192.168.98.220'
EXT_NET_END='192.168.98.229'
EXT_NET_RANGE='192.168.98.0/24'

# ---------------------------------------------------------------
# OS image paramters
# ---------------------------------------------------------------
#OS_IMAGE_URL="https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img"
#OS_IMAGE_NAME="Cirros 0.3.0 x86_64"
OS_IMAGE_URL="http://10.1.199.5/image/ubuntu-12.04-server-cloudimg-amd64-disk1.img"
OS_IMAGE_NAME="Ubuntu 12.04 x86_64"

运行脚本

脚本会自动添加Grizzly的源。

./setup.sh allinone

附录

https://bugs.launchpad.net/quantum/+bug/1160955

  10 Responses to “Ubuntu 12.04 Openstack Grizzly 安装(单节点 Quantum OpenVswith)”

  1. 您好,陈老师。咨询一个问题。
    在您这篇文章中,您把管理网和data network放到一起了,总感觉这样对管理网不太安全。
    我想把public network 和 data network 放到一起,管理网单独一套网络。我认为 data network走的是二层网络,也不会和 public network 有冲突。不知这样可否?
    多谢。

  2. 老师您好,
    我刚开始接openstack,现在一直不明白如何将这3种网络与物理网卡对应上。
    我已经安装单节点模式用devstack。然后用horizon查看我的network设置,比如我想在上面添加一个管理网,但是horizon上面没有可以与物理网卡关联的配置。不知道如何操作,请赐教。
    我对照VMware的ESXi,上面我可以添加一个vswitch,然后可以将它关联到一个网卡上,这样通过不同的物理网卡,可以清楚地知道网络拓扑。但是在openstack上面,没找到和物理网卡绑定的相关配置….

    • Openstack 网络变化很大,我文档里的东西我想应该是有错误。建议还是直接去看redhat官方文档。https://access.redhat.com/site/documentation/Red_Hat_OpenStack_Preview/?locale=en-US

  3. 陈老师你好,我是一个学生,因为跟着老师做项目用到了Openstack里面的swift部分,现在的主要问题就是需要用keystone来做swift服务的身份验证,但是keystone的安装配置方面的资料实在是太少。目前对于keystone的安装还好,就是配置让其能与swift接上并提供身份验证实在是无从下手哇。今天下午按照官方的文档设置了一下keystone,很遗憾在最后一步Verifying the Identity Service Installation的时候输入命令$ keystone –os-username=admin –os-password=secretword –os-auth-url=http://192.168.0.117:35357/v2.0 token-get 就报错了keystone: error: unrecognized arguments: –os-username=admin –os-password=secretword –os-auth-url=http://192.168.0.117:35357/v2.0。
    希望陈老师能给指一条明路给点意见。谢谢陈老师。

  4. 老师您好,
    我在运行脚本时,到glance这块,遇到了:

    + glance image-create ‘–name=Cirros 0.3.0 x86_64’ –is-public true –container-format bare –disk-format qcow2
    publicURL endpoint for image not found.

    然后我 glance image-list时,显示:
    root@ubuntu:~/openstack_grizzly_install# glance image-create –name myFirstImage –is-public true –container-format bare –disk-format qcow2 –location https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img
    Unable to communicate with identity service: {“error”: {“message”: “The request you have made requires authentication.”, “code”: 401, “title”: “Not Authorized”}}. (HTTP 401)

    请问这个应该如何解决?
    多谢!

 Leave a Reply

(required)

(required)