December 14, 2017

pod networking : flannel

Hi [Sebastian],

Since the exam is using Ubuntu Xenial (16.04) and Kubernetes v1.6.2, I am trying to create a cluster using these versions. And I am trying to do this in Vagrant so that I can test locally.

My topology has one master and one worker. I also ensured that both the nodes have Docker 1.12.6~cs13-0~ubuntu-xenial.

[On the master] I created the cluster using the following command:

  kubeadm init --pod-network-cidr=10.244.0.0/16 --kubernetes-version=v1.6.2 --apiserver-advertise-address=10.0.0.10

I edited kube-flannel.yml to add "--iface=eth1" and then did 

  kubectl apply -f kube-flannel.yml

I can see that a new pod is created for flannel and it is "Running". However the dns pod is stuck in "Pending".

The master node is also stuck in "NotReady".

I checked the logs for the flannel pod and it has no errors. I also ensured that a flannel configuration file exists in "/etc/cni/net.d/10-flannel.conflist".

I also connected to the etcd pod and did a query as I expect flannel to insert a KV. But etcdctl returned no results.

[On the worker] I joined the worker node to the cluster and can see that a new flannel pod is created. However the worker is also stuck in "NotReady". I can see that the worker node has the flannel configuration file in "/etc/cni/net.d/10-flannel.conflist".

The cluster goes to "Ready" if I use the Weave plugin

  kubectl apply -f https://git.io/weave-kube-1.6

Is there a flannel manifest that is specific to Kubernetes 1.6.2?

Thanks.

Click Here!