Support multiple floating networks

Bug #1513887 reported by Roman Sokolkov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
Wishlist
Sergey Kolekonov

Bug Description

Neutron is able to handle multiple external/floating networks.

Here is the one of the ways to configure Neutron:
http://blog.oddbit.com/2014/05/28/multiple-external-networks-wit/

Let's say we want to have:
Floating_1 - 200.0.0.0/24 which are "white" internet addresses
Floating_2 - 172.16.0.0/24 which are "private" intra-company addresses

Which is the use case if user wants some VMs to be available from Internet, some just within the company.

I see the major obstacle here:
- Every NEW network to be presented on Controllers (and on Computes in case of DVR)

Please analyze a cost of implementation.

Tags: area-mos
Dmitry Klenov (dklenov)
Changed in fuel:
assignee: nobody → MOS Neutron (mos-neutron)
tags: added: area-mos
Changed in fuel:
milestone: none → 8.0
importance: Undecided → Wishlist
status: New → Confirmed
Revision history for this message
Alexander Ignatov (aignatov) wrote :

@Roman, @Dmitry, It looks like a feature request to MOS, please check jira, we have already such task in backlog.

Changed in fuel:
assignee: MOS Neutron (mos-neutron) → Sergey Kolekonov (skolekonov)
Revision history for this message
Sergey Kolekonov (skolekonov) wrote :

All changes that allow to configure multiple external networks on MOS were merged as a part of this blueprint https://blueprints.launchpad.net/fuel/+spec/dyn-gen-physnet-set. The following steps are required now to create an additional external network:

- create all required bridges and set up interfaces (depends on network configuration)
- add appropriate bridge mappings to [ovs] section of /etc/neutron/plugin.ini on nodes with Neutron L2 agent, e.x:
  bridge_mappings=physnet1:br-floating,physnet2:br-new, where br-new - the additional external ovs bridge
- create new external network, e.x:
  neutron net-create --provider:network_type=flat --provider:physical_network=physnet2 --router:external new_floating_net
  neutron subnet-create --name=new_floating_net__subnet --gateway-ip=192.168.122.1 --disable-dhcp --allocation-pool=start=192.168.122.50,end=192.168.122.60 new_floating_net 192.168.122.0/24

Required configuration also can be performed in astute.yaml before cluster deployment.
The default external network is also created with 'flat' type, so it will work correctly after adding additional external networks.

I checked this on the ISO #241

Changed in fuel:
status: Confirmed → Fix Committed
Revision history for this message
Kristina Berezovskaia (kkuznetsova) wrote :

Verify on
VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "8.0"
  api: "1.0"
  build_number: "543"
  build_id: "543"
  fuel-nailgun_sha: "baec8643ca624e52b37873f2dbd511c135d236d9"
  python-fuelclient_sha: "4f234669cfe88a9406f4e438b1e1f74f1ef484a5"
  fuel-agent_sha: "658be72c4b42d3e1436b86ac4567ab914bfb451b"
  fuel-nailgun-agent_sha: "b2bb466fd5bd92da614cdbd819d6999c510ebfb1"
  astute_sha: "b81577a5b7857c4be8748492bae1dec2fa89b446"
  fuel-library_sha: "e2d79330d5d708796330fac67722c21f85569b87"
  fuel-ostf_sha: "3bc76a63a9e7d195ff34eadc29552f4235fa6c52"
  fuel-mirror_sha: "fb45b80d7bee5899d931f926e5c9512e2b442749"
  fuelmenu_sha: "78ffc73065a9674b707c081d128cb7eea611474f"
  shotgun_sha: "63645dea384a37dde5c01d4f8905566978e5d906"
  network-checker_sha: "a43cf96cd9532f10794dce736350bf5bed350e9d"
  fuel-upgrade_sha: "616a7490ec7199f69759e97e42f9b97dfc87e85b"
  fuelmain_sha: "87dfb6bc25d4650264f09c338ed77c21a3d6fe87"
(neutron+vxlan)

Create one more external net, new private net, add router between new external and private nets, boot vm1 in admin_internal_net, vm2 in new private net, associate floating IP for them. Go on vms via ssh and floating IPs, ping 8.8.8.8. Ping is available from both vms

Changed in fuel:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.