Added LinuxBridge support (vlan tenant networks only, no vxlan support)#147
Added LinuxBridge support (vlan tenant networks only, no vxlan support)#147busterswt wants to merge 3 commits intorcbops-cookbooks:v4.2.2rcfrom
Conversation
|
Running GATE test(s): http://build.monkeypuppetlabs.com:8080/job/GIT-Pull-Request/1517/console |
|
Gate: Submodule Tailor (non-voting): SKIPPED |
|
Gate: syntax error: FAILURE |
|
Gate: FoodCritic validation: FAILURE |
|
Running GATE test(s): http://build.monkeypuppetlabs.com:8080/job/GIT-Pull-Request/1518/console |
|
Gate: Submodule Tailor (non-voting): SKIPPED |
|
Gate: Submodule syntax: SUCCESS |
|
Gate: FoodCritic validation: FAILURE |
Added a restart case when updating linuxbridge_conf.ini
|
Running GATE test(s): http://build.monkeypuppetlabs.com:8080/job/GIT-Pull-Request/1520/console |
|
Gate: Submodule Tailor (non-voting): SKIPPED |
|
Gate: Submodule syntax: SUCCESS |
|
Gate: FoodCritic validation: FAILURE |
There was a problem hiding this comment.
This needs to be merged with service_plugins below:
<% if ! @service_plugins.empty? %> service_plugins = <%= @service_plugins.join(",") %> <% end %>
Otherwise, if you have an override for LoadBalancerPlugin for example, you get:
# fgrep -n service_plugins /etc/neutron/neutron.conf
10:service_plugins = neutron.services.l3_router.l3_router_plugin.L3RouterPlugin
22:service_plugins = neutron.services.loadbalancer.plugin.LoadBalancerPlugin
2014-09-23 01:51:32.414 15604 WARNING neutron.api.extensions [-] Extension router not supported by any of loaded plugins
2014-09-23 02:17:37.674 38030 DEBUG neutron.service [-] service_plugins = ['neutron.services.loadbalancer.plugin.LoadBalancerPlugin'] log_opt_values /usr/lib/python2.7/dist-packages/oslo/config/cfg.py:1941
This took a long time to figure out why I had no router endpoint :(
There was a problem hiding this comment.
One option:
diff --git a/templates/default/neutron.conf.erb b/templates/default/neutron.conf.erb
index 6b76d28..ae8a078 100644
--- a/templates/default/neutron.conf.erb
+++ b/templates/default/neutron.conf.erb
@@ -12,7 +12,15 @@ ovs_use_veth = <%= @neutron_ovs_use_veth %>
<% end %>
<% if @neutron_plugin == "ml2_linuxbridge" %>
core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
+ <% if ! @service_plugins.empty? %>
+service_plugins = neutron.services.l3_router.l3_router_plugin.L3RouterPlugin,<%= @service_plugins.join(",") %>
+ <% else %>
service_plugins = neutron.services.l3_router.l3_router_plugin.L3RouterPlugin
+ <% end %>
+<% else %>
+ <% if ! @service_plugins.empty? %>
+service_plugins = <%= @service_plugins.join(",") %>
+ <% end %>
<% end %>
allow_overlapping_ips = <%= @overlapping_ips %>
use_namespaces = <%= @neutron_namespace %>
@@ -24,10 +32,6 @@ rpc_backend = neutron.openstack.common.rpc.impl_kombu
notification_driver = <%= @notification_driver %>
notification_topics = <%= @notification_topics %>
-<% if ! @service_plugins.empty? %>
-service_plugins = <%= @service_plugins.join(",") %>
-<% end %>
-
# keystone auth - this will cascade to all agents/services
auth_strategy = keystone
auth_url = <%= @keystone_protocol %>://<%= @keystone_api_ipaddress %>:<%= @keystone_admin_port %><%= @keystone_path %>
Added new plugin "ml2_linuxbridge" to install and lay down ML2/LinuxBridge config files. No support for vxlan, as that requires newer kernel and iproute2.
This is meant for new installs ONLY. Uses a new DB: neutron_ml2. Do not switch from OVS to ML2/LB; unexpected results will occur.