Kubernetes发布分散式键值资料库Etcd 3.4强化后端储存与客户端平衡器功能
原标题:Kubernetes发布分散式键值资料库Etcd 3.4强化后端储存与客户端平衡器功能
Kubernetes团队发布了分散式键值资料库Etcd 3.4,这个版本强化了储存后端的效能,并改进Raft投票程序,还加入了全新的客户端平衡器(Client Balancer)。Etcd是一个分散式具高可靠性的键值储存,可用来储存分散式系统的重要资料,在去年底,CoreOS团队将Etcd专案捐赠给CNCF。
新版Etcd对大规模Kubernetes工作负载进行了最佳化,大幅提升了执行效能,其最重要的更新,便是提供更好的存储后端。在之前的版本,即便没有任何写入任务,Etcd也会在大量读取交易的时候出现效能问题,花费过长的时间执行唯读工作,而原因在于,储存后端在提交等待写入操作时,会阻挡进来的读取交易,而且即便没有待处理的写入资料,也会发生同样的问题。现在,提交不会阻挡读取工作,而这能改善长时间的读取交易效能。
另外,开发团队也让后端读取交易更加并行,这将使得资料吞吐量大增70%,长时间进行读取操作的情况下,P99写入延迟减少了90%。官方也对租约储存(Lease Storage)进行了许多改进,以提高整体操作效能,新版本还新增实验性的租约检查点功能,能透过共识机制,保存租约物件的剩余生存时间值。
Etcd使用Raft共识演算法进行资料複製,过去在当一个新的成员加入或是离开丛集时,可能会影响整体丛集的可用性,而这个情况在网路分区(Network Partition)时更加严重。开发团队在Etcd 3.4改进了Raft投票流程,并加入预投票功能,以解决在网路分区的情况下,可能出现的中断问题。
Etcd 3.4的重大更新还包括添加新的客户端平衡器。Etcd被设计成可以容忍各种系统和网路故障,即便其中一个节点发生故障,多伺服器架构下的逻辑丛集看起来仍然运作正常,但是这种情况却无法保证客户端也能够正确运作,而过去Etcd客户端採用了複杂的协定,以确保在任何错误情况发生时,仍然可以维持正确性与可用性。
但由于Etcd客户端平衡器过度依赖旧的gRPC介面,因此当gRPC相依项目升级时,便会破坏客户端的行为,因此开发团队花了许多的心力修复这些问题,但叠床架屋的结果,使得客户端对伺服器的连接机制过于複杂。Etcd 3.4客户端简化了平衡器故障转移逻辑,不再维护不健康的端点列表,因为当端点连结中断时,列表就可能过时,现在客户端与当前端点连结中断,便会由下一个端点轮替,客户端也就不用追蹤端点状态。 另外,新客户端会创建自己的凭证綑绑包,以修正安全端点的故障转移问题,开发团队提到,之前当第一个Etcd伺服器故障的时候,kube-apiserver就无法与Etcd丛集连结,而Etcd 3.4更新修正了这个存在一年的臭虫。
-
手表和手串怎么一起带(手表与佛珠手串应该怎样带)
2023-01-11 -
微软Kubernetes服务AKS开始支援Windows Server容器
2023-01-07 -
Google正式整合Kubernetes引擎与GPU服务
2022-12-16 -
Apache Kafka 2.7.0发布加速移除分散式系统协调服务Zookeeper
2022-12-07 -
报文是什么(报文信息是什么)
2022-12-06 -
怎么打开种子(百度云bt种子怎么用手机打开)
2022-11-22 -
Windows Server应用程式现可在GKE上执行
2022-10-25 -
推特的问题您'不是唯一的一个
2022-10-05 -
微软侦测到大规模锁定K8s的挖矿攻击
2022-09-18 -
增添容器OS安全遵循与OVN网路红帽OpenShift迈入4.6版
2022-09-12 -
电池医生哪个好(金山电池医生官方下载)
2022-09-08 -
AWS让用户以自定义资源在K8s丛集部署SageMaker机器学习
2022-09-07 -
AWS更新Amazon ElastiCache相容Redis 6
2022-07-10