Closed brathina-spectro closed 3 years ago
Is there any particular reason that you want to use host-local ipam? Does calico-ipam not work for your use-case?
@lwr20 calico-ipam works fine.
Our use case is deploying calico on Kubernetes clusters. The nodes in the Kubernetes clusters are configured with a Pod CIDR range. Calico host-local ipam allows us to use the addresses set in the nodes using Node.Spec.PodCIDR. This way, we can avoid configuring the IP range manually in Calico.
But why do you want to use the Node.Spec.PodCIDR?
@lwr20 : Not sure if I understand your question correctly. But, as I said before, the idea is to use the existing PodCIDR property set in nodes so that, the PodsCIDR IP range need not be configured manually in Calico daemonset. Do you see a problem with this approach ?
Background here is that this scenario does not work (as you've discovered). There's some extra code needed to set the VXLAN tunnel up, but at the time it was judged that it wouldn't be needed. I was wondering if you had a particular use case that would justify the work required.
For my part, I'm not sure I understand why configuring the pod-cidr into Calico is a problem for you? I do know that recent versions of Calico will read the pod-cidr out of the kubeadm-config configmap (which obviously assumes that the cluster was set up with kubeadm). But even with versions of Calico that don't support that, we're talking about setting one value in one manifest.
I raised an enhancement request here: https://github.com/projectcalico/calico/issues/4294
VXLAN encap isn't supported with host-local IPAM in Calico today. I'd recommend either using IPIP encap, or switching to Calico IPAM, in the meantime.
Calico daemonset installation on Kubernetes cluster doesn't create vxlan.calico interface.
Expected Behavior
vxlan.calico interface gets created and calico runs fine
Current Behavior
vxlan.calico interface fails to get created
Steps to Reproduce (for bugs)
calico-node daemonset setting
calico-config comfigmap setting
calico-node log
Environment
Operating system : Ubuntu 18.04.5 LTS Kubernetes version : 1.16.15 Calico version : 3.16.5 IPAM type : host-local Cloud : Self-managed on azure
Observations
Tried calico-ipam type on the same environment and that works fine. This issue is seen only when ipam type is host-local and using podCidr from nodes.