首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes的高可用性领导租赁

Kubernetes的高可用性领导租赁
EN

Stack Overflow用户
提问于 2018-09-28 19:22:22
回答 2查看 996关注 0票数 2

我有一个关于Kubernetes的领导者/追随者对kube-控制器-经理和kube-调度器的租赁管理的问题:据我所知,Kubernetes在kube-system名称空间中将当前的领导者跟踪为端点。

你可以通过

代码语言:javascript
复制
$ kubectl get endpoints -n kube-system

NAME                      ENDPOINTS                   AGE
kube-controller-manager   <none>                      20m
kube-scheduler            <none>                      20m

然后,G.

代码语言:javascript
复制
$ kubectl describe endpoints kube-scheduler -n kube-system

Name:         kube-scheduler
Namespace:    kube-system
Annotations:  control-plane.alpha.kubernetes.io/leader={"holderIdentity":"controller-0", ...}

当前的领导者是holderIdentitycontrol-plane.alpha.kubernetes.io/leader注释。

我的问题是:

租约管理(如获取租约、续签租约、生存时间等)是在Kubernetes端点之上的leaderelection.go中实现的。是否有一个具体的原因,租赁管理没有直接实现在Etcd上“开箱即用”Etcd原语,如Etcd的比较和交换操作和时间上的对象?

编辑

  • 添加Etcd比较和交换
  • 增加活的时间
EN

回答 2

Stack Overflow用户

发布于 2018-09-29 16:50:09

以下几个原因:

  1. Etcd可能正在向Kubernetes的网络外部运行,这意味着网络延迟。
  2. Etcd可能很忙/加载,因此速度慢。
  3. etcd集群的节点很可能比Kubernetes主服务器少,这使得它不太可靠。
票数 0
EN

Stack Overflow用户

发布于 2020-04-24 18:41:11

出于安全考虑,只有API服务器才能访问etcd。请记住,如果etcd是按照约定用于领导人租赁的,则使用领导人选举的自定义控制器和操作员也需要访问etcd,考虑到存储在etcd中的数据有多重要,这将是不可取的。

参考文献:https://kubernetes.io/docs/tasks/administer-cluster/configure-upgrade-etcd/#securing-etcd-clusters

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52561516

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档