这里简要介绍一下使用devstack(stable/juno)部署多节点的Openstack运行环境:

  1. 多节点的Nova-network环境.

2.  多节点Neutron环境.


系统版本:ubuntu 13.10

  • Devstack Multi-host Nova-network

    • 部署时到 error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 错误

    • 遇到的问题:

            这是因为一些依赖包没有安装,可以使用以下命令更新依赖包:

        $sudo apt-get build-dep python-lxml         
     控制节点:
    • ###IP Configuration

    • HOST_IP=IP_ADDRESS

    • #Credentials

    • ADMIN_PASSWORD=password

    • DATABASE_PASSWORD=password

    • RABBIT_PASSWORD=password

    • SERVICE_PASSWORD=password

    • SERVICE_TOKEN=password


    • #MULTINODE CONFIGURATION

    • FLAT_INTERFACE=eth0

    • FIXED_RANGE=10.4.128.0/20

    • FIXED_NETWORK_SIZE=4096

    • FLOATING_RANGE=<>

    • MULTI_HOST=1


    • ####Tempest

    • enable_service tempest

    • #Log Output

    • LOGFILE=/opt/stack/logs/stack.sh.log

    • VERBOSE=True

    • LOG_COLOR=False

    • SCREEN_LOGDIR=/opt/stack/logs




Devstack Multi-host Neutron

  • 控制节点:

    • HOST_IP=172.16.5.106


    • ADMIN_PASSWORD=password

    • MYSQL_PASSWORD=password

    • RABBIT_PASSWORD=password

    • SERVICE_PASSWORD=password

    • SERVICE_TOKEN=tokentoken


    • # Use Quantum instead of nova-network

    • disable_service n-net

    • enable_service q-svc

    • enable_service q-agt

    • enable_service q-dhcp

    • enable_service q-l3

    • enable_service neutron

    • enable_service q-meta

    • enable_service q-metering


    • # Network settings

    • ##VLAN configure

    • Q_PLUGIN=ml2

    • ENABLE_TENANT_VLANS=True

    • ML2_VLAN_RANGES=physnet1:100:200

    • Q_ML2_TENANT_NETWORK_TYPE=vlan

    • Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch

    • Q_ML2_PLUGIN_TYPE_DRIVERS=vlan,local,flat

    • PHYSICAL_NETWORK=physnet1

    • OVS_PHYSICAL_BRIDGE=br-eth1


    • ##Tunnel configure

    • ENABLE_TENANT_TUNNELS=False


    • ##Public Ip configure

    • FLOATING_RANGE=172.16.5.0/24

    • PUBLIC_NETWORK_GATEWAY=172.16.5.80

    • Q_USE_PROVIDERNET_FOR_PUBLIC=True


    • LOGFILE=/opt/stack/data/stack.log

    • SCREEN_LOGDIR=/opt/stack/data/log

    • RECLONE=yes

  • 计算节点:

    • HOST_IP=172.16.5.107

    • SERVICE_HOST=172.16.5.106


    • ADMIN_PASSWORD=password

    • MYSQL_PASSWORD=password

    • RABBIT_PASSWORD=password

    • SERVICE_PASSWORD=password

    • SERVICE_TOKEN=tokentoken


    • ENABLED_SERVICES=n-cpu,rabbit,neutron,q-agt


    • # Openstack services running on controller node

    • MYSQL_HOST=$SERVICE_HOST

    • RABBIT_HOST=$SERVICE_HOST

    • Q_HOST=$SERVICE_HOST

    • GLANCE_HOSTPORT=$SERVICE_HOST:9292

    • #Enable compute vnc server.

    • NOVA_VNC_ENABLED=True


    • # Network settings

    • ##VLAN configure

    • Q_PLUGIN=ml2

    • ENABLE_TENANT_VLANS=True

    • ML2_VLAN_RANGES=physnet1:100:200

    • Q_ML2_TENANT_NETWORK_TYPE=vlan

    • Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch

    • Q_ML2_PLUGIN_TYPE_DRIVERS=vlan,local,flat

    • PHYSICAL_NETWORK=physnet1

    • OVS_PHYSICAL_BRIDGE=br-eth1

    • ##Tunnel configure

    • ENABLE_TENANT_TUNNELS=False



    • LOGFILE=/opt/stack/data/stack.log

    • SCREEN_LOGDIR=/opt/stack/data/log

    • RECLONE=yes

  • 手动执行:

    • ovs-vsctl add-port br-eth1 eth1 #数据网

    • ovs-vsctl add-port br-ex eth0   #公网