如需体验Redis新版本的相关功能,您可以在控制台上一键升级Redis实例的大版本,例如从Redis 2.8升级到Redis 4.0。

升级过程概述

不同的架构在升级时所采取的流程有所区别,详情请参见下表:

架构升级过程概述(后台任务)
集群架构
  1. 申请资源:申请新版本实例所需的资源(例如代理节点资源)。
  2. 同步数据:将原实例的全量和增量数据,同步至新版本实例中。
  3. 实例切换:数据同步接近完成时,原实例将被设置为只读并等待数据完全同步(60秒以内),随后系统会将虚拟IP地址VIP(Virtual IP Address)从原实例解绑并绑定至新实例。
    说明 如果选择了可维护时间内执行,系统会在实例的可维护时间段内执行实例切换操作。
  4. 升级完成:释放原实例资源并将新实例的状态为修改为运行中
读写分离架构
标准架构
  1. 升级备库:停止原备库,然后启动新版本的备库。
  2. 同步数据:新版本的备库从主库同步数据。
  3. 主备切换:数据同步接近完成时,实例将被设置为只读并等待数据完全同步(60秒以内),随后系统会将VIP(Virtual IP Address)从主库解绑并绑定至备库,同时执行主备切换,将新版本的备库升级为主库。
    说明 如果选择了可维护时间内执行,系统会在实例的可维护时间段内执行主备切换操作。
  4. 升级备库(即原主库):原先的主库成为了备库,系统会重复执行步骤1和步骤2完成备库的升级和数据同步。
  5. 升级完成:更新实例状态为运行中

升级影响

  • 在申请资源、升级备库或同步数据阶段,对Redis的服务无影响。
  • 在实例切换或主备切换阶段,实例将存在60秒以内的只读状态(等待数据完全同步),同时会发生秒级的连接闪断,请在业务低峰期进行升级。

    升级完成后,源实例的实例ID、连接地址、数据、白名单配置以及已创建的账号密码配置等均不会改变,请您确保应用程序具备重连机制。

  • 如果您的Redis实例为4.0版本,且业务中使用了布隆过滤器相关API(例如BF.ADD),升级大版本后将不再支持。
    说明 由于早期的存量4.0版本实例中,布隆过滤器相关API处于未正式开放的状态,后续的大版本和新购的4.0版本实例中已取消支持,继续使用存在未知风险(例如执行缓存分析失败),建议您将其变配至Tair内存型以支持完善的布隆过滤器。

注意事项

  • 仅本地盘、社区版Redis实例支持升级大版本。
  • 若实例已申请直连地址或已创建DTS任务,会导致升级失败。请在升级前,释放直连地址或关闭DTS任务。
  • 企业版实例无需升级大版本。

操作步骤

  1. 访问Redis实例列表,在上方选择地域,然后单击目标实例ID。
  2. 基本信息区域框,单击右侧的大版本升级
    图 1. 升级大版本
    升级实例的大版本
    说明 如果没有大版本升级按钮,表示该实例已经是最新的大版本。
  3. 在右侧弹出的面板中,选择升级的目标版本和执行时间。
    警告 实例版本升级或主备切换时,实例将产生60秒以内的只读状态和秒级的连接闪断。推荐您选择可维护时间内执行,系统会在实例的可维护时间段内执行实例切换操作,可最大限度地降低影响。关于如何修改实例的可维护时间,请参见设置可维护时间段
  4. 单击确定

相关API

API说明
ModifyInstanceMajorVersion升级Redis实例的大版本。

常见问题

  • Q:为什么选择了执行时间为可维护时间内执行,实例的状态还是变成了大版本升级中?
    A:系统在执行相应的升级前置工作,例如申请资源、同步数据等,不会执行实例切换或主备切换,不会影响实例提供服务。
    说明 只有在执行实例切换或主备切换时,才会产生60秒以内的只读状态和秒级的连接闪断。
  • Q:升级提示失败?

    A:如果您的实例为历史规格(即已下线规格),您需要先完成变更配置操作(可选择内存容量相同的规格),再执行升级大版本的操作。