Bug 1062701
Summary: | [RFE] foreman should allow for the configuration of various network_managers when using nova networking | ||
---|---|---|---|
Product: | Red Hat OpenStack | Reporter: | Steve Reichard <sreichar> |
Component: | openstack-foreman-installer | Assignee: | Jason Guiditta <jguiditt> |
Status: | CLOSED ERRATA | QA Contact: | Ami Jeain <ajeain> |
Severity: | urgent | Docs Contact: | |
Priority: | unspecified | ||
Version: | 4.0 | CC: | cpelland, cwolfe, dnavale, morazi, ohochman, rhos-maint, sreichar, yeylon |
Target Milestone: | z3 | Keywords: | FutureFeature, OtherQA, Rebase, Triaged, ZStream |
Target Release: | 4.0 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
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.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2014-03-25 19:23:50 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1040649 |
Description
Steve Reichard
2014-02-07 18:21:47 UTC
Does packstack currently support this? 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= 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 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. 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. 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, Tested this end to end with steve, seems to work as needed, merged. Hey Mike, network is not testing nova-network 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' 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" 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 |