Bug 1062701 - [RFE] foreman should allow for the configuration of various network_managers when using nova networking
Summary: [RFE] foreman should allow for the configuration of various network_managers ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-foreman-installer
Version: 4.0
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: z3
: 4.0
Assignee: Jason Guiditta
QA Contact: Ami Jeain
URL:
Whiteboard:
Depends On:
Blocks: 1040649
TreeView+ depends on / blocked
 
Reported: 2014-02-07 18:21 UTC by Steve Reichard
Modified: 2014-03-25 19:23 UTC (History)
8 users (show)

Fixed In Version: openstack-foreman-installer-1.0.5-1.el6ost
Doc Type: Enhancement
Doc Text:
Previously, the ability to configure Compute Network to use other types of network manager, specifically the VLAN manager were not included with OpenStack Foreman Installer. With this release, this enhancement has been added. As a result, Compute Network is now fully configurable, so anything the upstream puppet code allows can be done using the Foreman hostgroup.
Clone Of:
Environment:
Last Closed: 2014-03-25 19:23:50 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2014:0334 0 normal SHIPPED_LIVE Red Hat Enterprise Linux OpenStack Platform 4 Bug Fix and Enhancement Advisory 2014-03-25 23:22:45 UTC

Description Steve Reichard 2014-02-07 18:21:47 UTC
Description of problem:


Currently it is only Flat DHCP, allowing vlan would provide better saclability.


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 2 Crag Wolfe 2014-02-12 23:40:49 UTC
Does packstack currently support this?

Comment 3 Steve Reichard 2014-02-13 14:19:38 UTC

Since I've been told Foreman is the installer, I do not try all things with packstack any longer.  However I did check and see that packstack has the following configuration parameter:


CONFIG_NOVA_NETWORK_MANAGER=

Comment 4 Jason Guiditta 2014-02-13 15:51:50 UTC
Yeah, this is a simple change - we need a new param for the nova network compute node that allows us to set this. 

We currently call it with:

network_manager   => "nova.network.manager.FlatDHCPManager",

so can add a param and change it to:

network_manager   => "nova.network.manager.$nova_network_manager",

or similar

Comment 5 Steve Reichard 2014-02-14 00:55:01 UTC
Not sure is as simple as changing just that variable.

If you do use vlanmanager, you may want to specify other things like vlan_interface,  vlan_start and maybe others.

Comment 6 Jason Guiditta 2014-02-14 01:14:25 UTC
OK, I just took a quick look at the network.pp in the nova module.  It looks like vlan_interface gets set to private_interface, which we already pass in, but that the clan_start param is one we would need to set via config_overrides, which we currently set as:
{"force_dhcp_release" => false}

Searching that file, I don't see any other vlan-related config, but when we test this, we can certainly add any that re needed to make this work. It still doesn't look like a lot of change needed to get the feature you want though, so I am optimistic we can sneak it in for A3.

Comment 7 Jason Guiditta 2014-03-05 21:57:00 UTC
So, is the vlan_interface one you think needs to be more flexible? the nova code uses $private_interface for that value, which we expose already in the hostgroup params as '$nova_network_private_iface', so it can be set to whatever you want currently, unless I am misunderstanding something here.


I think what I am going to do actually, is expose exactly what the nova/network.pp manifest does, and take the overrides as a hash just like they do.  They are listed here:


https://github.com/stackforge/puppet-nova/blob/6c8a4bd5e1d67cce4c6e316c2ba43ed5a4dd4e59/manifests/network.pp#L15

Let me know if that sounds unreasonable or like it obviously misses anything,

Comment 8 Jason Guiditta 2014-03-05 22:19:34 UTC
https://github.com/redhat-openstack/astapor/pull/137

Comment 9 Jason Guiditta 2014-03-07 22:18:07 UTC
Tested this end to end with steve, seems to work as needed, merged.

Comment 10 Ami Jeain 2014-03-10 12:01:12 UTC
Hey Mike,
network is not testing nova-network

Comment 14 Jason Guiditta 2014-03-11 14:33:56 UTC
Following is the nova network configuration now exposed via the Nova Network Compute group:

private_interface => "$network_private_iface",
public_interface  => "$network_public_iface",
fixed_range       => "$network_fixed_range",
num_networks      => $network_num_networks,
network_size      => $network_network_size,
floating_range    => "$network_floating_range",
enabled           => true,
network_manager   => "nova.network.manager.$network_manager",
config_overrides  => $network_overrides,
create_networks   => $network_create_networks,
install_service   => true,


$network_manager defaults to 'FlatDHCPManager', but can be any supported nova manager, like VlanManager.

$network_overrides is a hash, but takes a slightly odd format, which is actually more similar to yaml:
  force_dhcp_release : 'true'
  vlan_start : 'somevalue'

Comment 16 Omri Hochman 2014-03-13 15:41:34 UTC
Verified with openstack-foreman-installer-1.0.5-1.el6ost.noarch:

I have changed the Nova-compute host-group 'network_manager' parameter 
from it's default value network_manager = FlatDHCPManager  
to --> 

1) VlanManager --> Results : nova.conf shows 
network_manager=nova.network.manager.VlanManager

2) FlatManager -->  Results : nova.conf shows 
network_manager=nova.network.manager.FlatManage


Note: 
------
Before changing network_manager to FlatManager the network_overrides need to be empty (change it to :  'network_overrides =    --- {}' ) .
 

Otherwise the following error display when running puppet :
"Error 400 on SERVER: Invalid parameter force_dhcp_release on node"

Comment 18 errata-xmlrpc 2014-03-25 19:23:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-0334.html


Note You need to log in before you can comment on or make changes to this bug.