cloudfoundry-incubator / kubo-deployment

Contains manifests used to deploy Cloud Foundry Container Runtime
https://www.cloudfoundry.org/container-runtime/
Apache License 2.0
275 stars 114 forks source link

ops file for docker standard networking #411

Open jaimegag opened 5 years ago

jaimegag commented 5 years ago

What this PR does / why we need it: Configure docker daemon with standard networking settings (docker0 bridge), letting Kubelet/CNI manage cni0 bridge. With this change the cni0 configuration is no longer kept in the docker store (when persistent disks are attached to the worker nodes) so we solve the problem of stale data sticking around when flannel leases expire, and it should also make it easier to keep cni0 in sync with flannel.1 Idea credit and co-author: @alekssaul

How can this PR be verified? Applying the Ops-file including in the changes and

Is there any change in kubo-release? Not at this time

Is there any change in kubo-ci? Not required, but recommended when approved

Does this affect upgrade, or is there any migration required? No impact.

Which issue(s) this PR fixes: When flannel lease expire and flannel.1 and cni0 go out of sync, rebooting/recreating the worker nodes doesn't solve the problem but make it worse, because the old/stale subnet info is kept in the docker store (/var/vcap/store/docker/docker/network/files/local-kv.d) and that is still used to configure cni0 even after recreating the worker node. With this fix, docker no longer owns cni0 so we can rely on rebootings/bosh-recreate to recover worker nodes out of sync

Release note: NONE

cfdreddbot commented 5 years ago

:white_check_mark: Hey jaimegag! The commit authors and yourself have already signed the CLA.