From b5303b9978e841d20c44109049267c5a263b1cb0 Mon Sep 17 00:00:00 2001 From: Prashanth Balasubramanian Date: Sat, 12 Dec 2015 13:18:21 -0800 Subject: [PATCH] Tell kubernetes-master not to wait on flannel. --- cluster/saltbase/salt/kubelet/default | 7 ++++++- pkg/kubelet/kubelet.go | 8 -------- 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/cluster/saltbase/salt/kubelet/default b/cluster/saltbase/salt/kubelet/default index 1cfb73a4dd1..6cc30e29005 100644 --- a/cluster/saltbase/salt/kubelet/default +++ b/cluster/saltbase/salt/kubelet/default @@ -85,8 +85,13 @@ {% set configure_cbr0 = "--configure-cbr0=" + pillar['allocate_node_cidrs'] -%} {% endif -%} +# The master kubelet cannot wait for the flannel daemon because it is responsible +# for starting up the flannel server in a static pod. So even though the flannel +# daemon runs on the master, it doesn't hold up cluster bootstrap. All the pods +# on the master run with host networking, so the master flannel doesn't care +# even if the network changes. We only need it for the master proxy. {% set experimental_flannel_overlay = "" -%} -{% if pillar.get('network_provider', '').lower() == 'flannel' %} +{% if pillar.get('network_provider', '').lower() == 'flannel' and grains['roles'][0] != 'kubernetes-master' %} {% set experimental_flannel_overlay = "--experimental-flannel-overlay=true" %} {% endif -%} diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index d4f98079ff3..d4ca9fdf940 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -335,14 +335,6 @@ func NewMainKubelet( if klet.flannelExperimentalOverlay { glog.Infof("Flannel is in charge of podCIDR and overlay networking.") } - if klet.kubeClient == nil { - // The master kubelet cannot wait for the flannel daemon because it is responsible - // for starting up the flannel server in a static pod. So even though the flannel - // daemon runs on the master, it doesn't hold up cluster bootstrap. All the pods - // on the master run with host networking, so the master flannel doesn't care - // even if the network changes. We only need it for the master proxy. - klet.flannelExperimentalOverlay = false - } if plug, err := network.InitNetworkPlugin(networkPlugins, networkPluginName, &networkHost{klet}); err != nil { return nil, err } else {