前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Undermoon - 基于 Redis Cluster Protocol 的自管理 Redis 集群系统

Undermoon - 基于 Redis Cluster Protocol 的自管理 Redis 集群系统

作者头像
为少
发布2022-03-31 19:20:09
3790
发布2022-03-31 19:20:09
举报
文章被收录于专栏:黑客下午茶黑客下午茶

项目地址:https://github.com/doyoubi/undermoon

Undermoon 是一个基于 Redis 集群协议的自管理 Redis 集群系统,支持:

  • 水平可扩展性和高可用性
  • 通过 HTTP API 进行集群管理
  • masterreplica 的自动故障转移
  • 快速扩展

任何实现 redis 协议的存储系统也可以以某种方式与 undermoon 一起工作,例如 KeyDB。

  • https://github.com/JohnSully/KeyDB

关于 Redis Cluster Protocol 的更深入解释以及 Undermoon 是如何实现的,请参考 Redis Cluster Protocol。

  • https://github.com/doyoubi/undermoon/blob/master/docs/redis_cluster_protocol.md

架构

Metadata Storage(元数据存储)

Metadata storage 存储了整个 undermoon 集群的所有元数据,包括现有的 Redis 实例、代理和暴露的 Redis 集群。现在它是一个名为 Memory Broker 的内存存储服务器。当使用 undermoon-operator 时,这个 Memory Broker 会改为使用 ConfigMap 来存储数据。

Coordinator(协调器)

Coordinator 将在代理和服务器代理之间同步元数据。它还主动检查服务器代理的活跃度并启动故障转移。

Storage Cluster(存储集群)

Storage Cluster 由服务器代理和 Redis 实例组成。它就像官方的 Redis Cluster 一样为应用程序服务。可以在它和应用程序之间添加一个 Redis Cluster Proxy,这样应用程序就不需要将其 Redis 客户端升级为智能客户端。

Chunk(块)

Chunk 是每个暴露的 Redis 集群的最小构建块。每个块由 4Redis 实例和 2 个服务器代理组成,均匀分布在两台不同的物理机上。所以每个 Redis 集群的节点数将是 4 的倍数,一半 master 一半 replica

chunk 的设计使得构建具有良好拓扑的集群非常容易,以实现工作负载均衡。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 黑客下午茶 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 架构
  • Metadata Storage(元数据存储)
  • Coordinator(协调器)
  • Storage Cluster(存储集群)
  • Chunk(块)
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档