此页提到了 Kubernetes API 数据存储——https://projectcalico.docs.tigera.io/getting-started/kubernetes/flannel/flannel——这似乎表明 Kubernetes API 数据存储是 etcd 的替代品。
但是我没有找到有关此“Kubernetes API 数据存储区”的更多信息,而且我不知道如何检查我当前的 k8s 实例是否使用“Kubernetes API 数据存储区”或 etcd 作为数据存储组件。
有人能告诉我更多相关信息吗?
答案1
因此,您似乎必须单击每个“极客详细信息”的最后一个框才能让它向您显示权衡:
或者您可以在其源代码仓库中查看它们:https://github.com/projectcalico/calico/blob/master/calico/_includes/geek-details/datastore-kubernetes.md和 https://github.com/projectcalico/calico/blob/master/calico/_includes/geek-details/datastore-etcd.md
我能想到的最好的总结是:如果你有太多的 Pod,以至于你的 kubernetes API 最终被 Calico api chatter 压垮,那么你可以为 Calico 运行一个单独的、专用的 etcd。否则,选择 Kubernetes API,因为它可以减少一个需要保持健康的活动部件
我的经验是,试图保持 etcd 集群的活力和健康就像是地狱一般,所以我不希望第二对我最大的敌人进行打击(第一个是强制支持 Kubernetes 控制平面的敌人)