Welcome to the Linux Foundation Forum!

pod networking : flannel

aravipati Posts: 1
edited December 2017 in LFS258 Class Forum

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= --kubernetes-version=v1.6.2 --apiserver-advertise-address=

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?



  • serewicz
    serewicz Posts: 1,000

    There was an update to flannel which required access to portmap, but this was not included in any documentation. If you load 

    wget https://github.com/projectcalico/cni-plugin/releases/download/v1.9.1/portmap Move the binary to the expected directory and change the access mode. sudo mv portmap /opt/cni/bin/portmap sudo chmod 755 /opt/cni/bin/portmap Find the current kube-dns container that is not in a Running state. kubectl get pods --all-namespaces .... kube-system kube-dns-545bc4bfd4-xtwn7 0/3 ContainerCreating 0 26m .... Delete the container. It should spawn a new container which will show a Running state quickly. Your container names will be different. kubectl delete pod kube-dns-545bc4bfd4-xtwn7 -n kube-system kubectl get pods --all-namespaces


  • fcioanca
    fcioanca Posts: 1,765
    edited January 2018


    The CKA exam was updated to Kubernetes 1.9.1 this morning.

    Thank you,



Upcoming Training