集群架构

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

云数据库 Tair(兼容 Redis)支持多副本集群架构实例,同时也支持集群架构开启读写分离功能。可轻松突破Redis自身单线程瓶颈,满足大容量、高性能的业务需求。集群架构支持代理和直连两种连接模式,您可以根据本章节的说明,选择适合业务需求的连接模式。

代理模式(推荐)

代理(Proxy)模式能够大大简化集群架构实例的使用方式,其连接方式与标准架构(主备)相同。代理服务器会自动实现路由转发,将客户端的请求转发到各数据分片,同时代理节点还提供了缓存热点Key、故障转移等高级特性,更多信息请参见Tair Proxy特性说明

代理模式的服务架构图和组件说明如下。

多副本

多副本集群架构代理模式服务

image

集群架构代理模式组件说明

组件

说明

代理服务器(Proxy Server)

负责将客户端的请求转发到各数据分片。集群架构中存在多个Proxy节点提供服务,并互相提供灾备支持。

数据分片(Data Shards)

每个数据分片均为一主多备(分别部署在不同机器上)的高可用架构。备节点的数量范围为1 ~ 4,可以选择部署在备可用区。多个备节点可以提高容灾能力,减少数据丢失的可能性。

高可用服务(HA)

主节点(Master)发生故障后,系统会自动在30秒内切换至备节点(Replica),以保证服务高可用和数据高可靠。如果实例为双可用区部署,当主可用区存在备节点时,主备切换会优先选择主可用区的备节点进行切换,避免业务跨可用区访问。

单节点

单节点的集群架构是指的集群分片服务器由单节点组成,当某服务节点出现故障时,系统会重新拉起一个新的Redis进程(没有数据)。当节点故障业务自动切换完成后,对应故障的节点将损失全部数据,业务数据需要重新进行预热,且流量有可能会冲击到后端数据库,业务上需要做好应用程序的预热保护机制。因此,不建议对数据可靠性要求高的敏感性业务使用该架构。

警告
  • 单节点架构不能保障数据可用性和服务连续性,选用前请务必确认风险,不建议您在生产环境中使用该架构的实例。云数据库 Tair(兼容 Redis)服务等级协议不适用于单节点架构的实例。

  • 单节点架构不支持以下功能:自动或手动备份离线全量Key分析实例回收站。若您对数据有可靠性要求,推荐使用多副本类型。

单节点集群架构代理模式服务架构

image

集群架构代理模式组件说明

组件

说明

代理服务器(proxy servers)

单节点配置,集群架构中会有多个Proxy组成,系统会自动对其实现负载均衡及故障转移。

数据分片(data shards)

每个数据分片均为单节点架构,不支持高可用。数据节点故障之后,系统会在30秒内重新拉起一个Redis进程保证服务高可用,但是该节点的数据将会丢失。

开启读写分离

云原生版集群架构(代理模式)还支持开启读写分离功能,当读请求流量非常大,超过主节点性能上限时,您可以开启集群架构的读写分类功能。更多信息请参见集群架构开启读写分离

直连模式

直连模式为类似连接原生Redis Cluster的方式连接集群。客户端首次连接时会通过DNS将直连地址解析为一个随机数据分片的虚拟IP(VIP)地址,之后即可通过Redis Cluster协议访问各数据分片。集群架构直连模式同样支持多副本与单节点,但不支持开启读写分离,直连模式的服务架构和说明如下。

集群架构直连模式服务架构(以多副本为例)

image
说明

直连模式与代理模式的连接方式区别较大,相关注意事项和连接示例请参见使用直连模式连接实例

使用场景

  • 数据量较大

    相比标准架构,集群架构可以有效地扩展存储量,最大可达16 TB(64 GB * 256分片),能有效地满足业务扩展的需求。

  • 请求负载较大

    标准架构无法支撑较大的请求负载,需要采用多分片的部署方式来突破单分片的性能瓶颈。

    当读请求流量非常大,超过主节点性能上限时,您可以开启集群架构的读写分类功能。

    说明

    由于仅云原生版集群架构(代理模式)实例支持开启读写分离,您可以通过新建实例、使用DTS同步数据的方式将其他版本的实例迁移至集群版(开启读写分离)实例。

  • 吞吐密集型应用

    相比标准架构,集群架构的吞吐量可通过增加分片数量线性扩展,可以更好地支持热点数据读取、大吞吐类业务。

  • KEY操作较少的应用

    由于集群为分布式架构,在一次操作多个KEY时需要确保所有KEY均在同一slot中,因此会对多KEY操作带来一些限制。详情请参见集群架构与读写分离实例的命令限制

  • 延迟敏感应用

    双可用区实例可以在主可用区增加备节点,例如主可用区1个主节点、1个备节点,备可用区1个备节点。既提高了容灾的可靠性,同时也能避免由主备切换后应用跨可用区访问带来延迟升高的问题。

注意事项

  • 云原生版集群架构不支持同时使用代理模式和直连模式,建议选择代理模式。

  • 经典版集群架构仅支持单副本、双副本,不支持开启读写分离。

集群变配操作指南

  • 添加副本节点数:在实例详情页的节点管理页面中,单击修改,可以增减节点数。

  • 添加只读节点:在实例详情页的节点管理页面中,需要先开启读写分离开关,再单击修改,可以增加只读节点数。

  • 添加分片数:在实例详情页的右上角,选择分片调整 > 增加分片数量

  • 变更分片规格:在实例详情页的右上角,选择规格调整 > 规格升降配