Backport ovs related additions from crowbar-core #331
Conversation
@vuntz, @dirkmueller, @jdsn as I am still not able to add Labels here could you please add the wip and/or donotmerge labels here? |
@@ -453,6 +500,22 @@ def kill_nic(nic) | |||
action :delete | |||
end | |||
end | |||
|
|||
if node[:platform] == "suse" && node[:platform_version].to_f < 12.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vuntz I am specifically interested in feedback on this part here. Since it will significantly change how we handle SLE11 nodes. Are you ok with this. Or would you prefer the SLE11 code path unchanged. I've the slight feeling that the code in neutron barclamp will get really messy if we try to keep current SLE11 approach (handling everything in the neutron cookbooks) working as it currently is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm fine with changing this, as long as we fully test an upgrade from before the patch to after the patch.
interestingly, the labels are missing here... Not sure why. |
@rhafer I added the labels |
Cherry-picked from 18d9e362c4cbed9a06e69f4f89f9ba7ee95c5270 (crowbar-core)
Cherry-picked from 7dd36280f9e93133feeac9e41275a69b0dd9782c (crowbar-core)
Cherry-picked from 57de7e03391bbc197e323ce103f0c5fb69dc0cc0 (crowbar-core)
This is a workaround for bnc#945219 to avoid network connectivity issue. Cherry-picked from 486c4cff7481f171febc7ae373c33a052152fa80 (crowbar-core)
Cherry-picked from 8f3484bc967a283d957c1c5cf9839256290e55a5 (crowbar-core)
This is the network barclamp's part of moving the SLE11 workaround init scripts to configure the IP on ovs bridges during boot (formerly know as ovs-usurp-config-br-*) from the neutron to the network barclamp. As the network barclamp now handles the creation the bridges and create ifcfg files for them the new init scripts could also be kept very simple (they just call ifup).
Avoid doing it on every chef-client run Cherry-picked from 5f7af45e27c769697bab081b08a6b9c2b5f933a8 (crowbar-core)
As documented on https://en.opensuse.org/Portal:Wicked/OpenvSwitch. There is not need to restart wicked immediately as the ovs bridges on the running enviroment where already correctly setup by crowbar. Cherry-picked from 88a243d797e6e3edb3cc86fc696fc69ce5c63d12 (crowbar-core)
Update this with the latest fixes from crowbar-core. Still need to update the commit references once crowbar/crowbar-core#105 is merged. |
https://bugzilla.suse.com/show_bug.cgi?id=935912 Cherry-picked from 77c120e5e7008d4fa2e98c725a7c814919b53f0d (crowbar-core)
Some nodes, e.g. compute nodes when using ovs+gre/vxlan, need openvswitch running without requiring any bridges been created by the barclamp. This commit decouples the installion of the packages and startup of the service from the "add_ovs_bridge" attribute. And adds the new "needs_openvswitch" attribute. This attribute in not present in the proposal as it's specific to single nodes and not for the whole deployment of a network proposal. https://bugzilla.suse.com/show_bug.cgi?id=950798 Cherry-picked from 557e1bb44a6e42543fd8842afebcf85bba8cd4f6 (crowbar-core)
We're using the systemd unit file there now. Which has a different name. Cherry-picked from 4e7f9260c66d67d05c14e086f1f8447858238c32 (crowbar-core)
I added the wip label back. Depending on what wicked (and ovs packaging) changes are released for SLE12 we might need to backport the recent fixes from master as well. Need to check that first before we can merge anything here. |
According to the SLES12-SP1 documentation STARTMODE can be "auto" for OvsBridges as well. We need the OVS_BRIDGE='yes' and OVS_BRIDGE_PORT_DEVICE_* settings as wicked will remove the bridge during shutdown and recreate them at boottime. (Which went unnoticed until recently because of a bug in the openvswitch service dependencies) Cherry-picked from 8f27eb66e9974b3674eb3de764e0b54106f59c05 (crowbar-core)
They are no longer needed with the latest wicked (>= 0.6.28) Cherry-picked from 5f55f228a7e38f69c71a954624ce1952ebfb0637 (crowbar-core)
Should be "static" (with no IP Address) for OVS slaves. "none" causes reboot problems at least on SLE11 nodes, but this change should be save for SLE12 as well. Cherry-picked from 64f8c1f99b840c9d5b3aa040987e3b41eb5f5eba (crowbar-core)
Rebased and imported the latest adjustments from crowbar-core. This is finally ready for review. |
Note: it should be safe to merge this independently of: crowbar/barclamp-neutron#260 |
+1 |
+1 |
service "ovs-ifup-#{nic.name}" do | ||
# Don't start it here. It only needs to be executed during boot. | ||
action [:nothing] | ||
subscribes :enable, resources("template[/etc/init.d/ovs-ifup-#{nic.name}]") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What about implementing https://github.com/crowbar/barclamp-neutron/pull/262/files here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, right. Forgot about that one.
Except from the small comment, this looks good to me. |
With a notification, if chef-client crashes before the end, the script will never be enabled. Just always enable it, there's no reason why we would want to not do this in the case where we have the script.
@vuntz addressed. |
+1 |
Backport ovs related additions from crowbar-core
Currently this also contains the commit from #328, but I'll rebase once that is merged. Or we can handle all of it here and close the other PR.