开发者社区 > 云原生 > 正文

Nacos Eureka Sync 集群分片及高可用方案是什么样的?

Nacos Eureka Sync 集群分片及高可用方案是什么样的?

展开
收起
vncamyi27xznk 2021-12-15 10:32:56 590 0
1 条回答
写回答
取消 提交回答
  • image.png 一,服务一致性 Hash 分片路由: 1.根据如图 1 多集群部署,为每个节点设置可配置的虚拟节点数,使其在 Hash 环上能均匀分布; 2.根据业务服务名的 FNV1_32_HASH 算法计算每个业务服务的哈希值,计算该 Hash 值顺时针最近的节点,将任务代理到该节点。 二,同步节点宕机故障转移: 1.节点监听:监听其它节点存活状态,配置 Etcd 集群租约 TTL , TTL 内至少发送 5 个续约心跳以保证一旦出现网络波动避免造成节点丢失; 2.节点宕机:其中某个节点宕机,其任务转移到其它节点,因为有虚拟节点的缘已经故,所以此节点的任务会均衡ReSharding 到其它节点,那么,集群在任何时候,任务处理都是分片均衡的,如图 2 中, B 节点宕机, ##1 、 ##2 虚拟节点的任务会分别转移到 C 和 A 节点,这样避免一个节点承担宕机节点的所有任务造成剩余节点连续雪崩; 3.节点恢复:如图 3,节点的虚拟节点重新添加到 Hash 环中, Sharding 规则变更,恢复的节点会根据新的 Hash 环规则承担其它节点的一部分任务,心跳任务一旦在节点产生都不会自动消失,这时需要清理其它节点的多余任务(即重新分配给复苏节点的任务),给其它节点减负(这一步非常 关键,不然也可能会引发集群的连续雪崩),保障集群恢复到最初正常任务同步状态; 4.节点容灾:如果 Etcd 集群连接不上,则存活节点从配置文件中获取,集群正常运作,但是会失去容灾能力。

    答复内容摘自《云原生技术与架构实践年货小红书》,这本电子书收录开发者藏经阁 下载连接:https://developer.aliyun.com/topic/download?id=1127

    2021-12-15 16:06:36
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
Nacos架构&原理 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-使用Nacos进行服务的动态发现和流量调度 立即下载
Nacos 启航,发布第一个版本, 云原生时代助力用户微服务平台建设 立即下载