1

THis page mentioned Kubernetes API datastore -- https://projectcalico.docs.tigera.io/getting-started/kubernetes/flannel/flannel -- and it seems to suggest that Kubernetes API datastore is a replacement of etcd.

But I have not found more info on this "Kubernetes API datastore" and I do not know how to check if my current k8s instance is using "Kubernetes API datastore" or etcd as data storage component.

Could anyone tell me more about it?

Jing He
  • 121
  • 3

1 Answers1

1

So, it seems you must click on the last box of each "geek details" to have it show you the trade-offs: the datastore etcd

or you can view them in their source repo: https://github.com/projectcalico/calico/blob/master/calico/_includes/geek-details/datastore-kubernetes.md and https://github.com/projectcalico/calico/blob/master/calico/_includes/geek-details/datastore-etcd.md

The best tl;dr I can come up with is: if you have so many Pods that you end up overwhelming your kubernetes API with just Calico api chatter, then you can run a separate, dedicated, etcd just for Calico. Otherwise, pick the Kubernetes API because it's one less moving part to keep healthy

My experience is that it is a special circle of hell trying to keep an etcd cluster alive and healthy, so I would not wish a 2nd one upon my worst enemy (with the first one being the mandatory one backing the Kubernetes control plane)

mdaniel
  • 2,561
  • 1
  • 9
  • 13