本文介绍云数据库 ClickHouse 社区兼容版如何通过克隆进行内核大版本升级。
前提条件
云数据库 ClickHouse 社区兼容版版本为20.3、20.8、21.8和22.8的实例。
注意事项
不同内核大版本间可能存在写入和查询的功能、语法、性能的差异。生产环境,请提前测试验证,确保已排除这些差异对业务的影响。
云数据库 ClickHouse 社区兼容版部分版本为20.3、20.8、21.8的早期实例不适用于本方法,只允许通过数据迁移的方式来完成内核大版本的升级。查看集群是否为早期实例详情请参见查看是否为早期实例。
社区兼容版和企业版之间进行大版本升级,只允许通过数据迁移的方式来完成内核大版本的升级。
生产环境正式升级前,请通过测试验证流程并确认实例完成版本升级所需要消耗的时间。克隆是基于快照进行,会在几分钟内完成(数据量不影响克隆快照的耗时),但版本升级过程会多次重启实例,部分实例由于库表数量、分区(Parts)数量过多等因素单次启动过程需要较长时间。
开启了冷热分层的实例,克隆仅包含热数据(即新实例无法查询到冷数据)。
无法克隆Kafka、MySQL、RabbitMQ等的同步表或外表,在克隆完成后相关表会被删除。
升级流程
推荐先进行克隆,完成测试验证,测试验证业务兼容新版本后,再进行第二次克隆完成版本升级。
参考流程如下。
测试验证(非线上生产环境可选择跳过)。
恢复实例(基于实时备份,同时升级大版本)。
验证业务 。
验证成功 。
实例停写 。
准备正式升级。
正式升级。
重要为保证正式克隆时实例拥有全部数据,请在正式克隆之前停止实例写入。
制定正式升级方案(含业务快速验证方法)。
实例停写 。
恢复实例(基于实时备份,同时升级大版本)。
快速验证业务。
验证成功。
读取、写入链路切换连接串到新实例 。
完成。
验证业务方法(可选)
通过拉取原实例上的query_log,在新实例上重新运行,验证业务查询的新版本兼容性。
全量回归业务功能。
操作步骤
使用阿里云账号登录云数据库ClickHouse控制台。
在页面左上角,选择目标集群所在的地域。
在左侧导航栏,单击集群列表。
找到目标集群,单击集群ID,进入集群信息页面。
单击左侧导航栏备份恢复,在备份恢复页单击恢复实例按钮。
在弹出的克隆实例购买页面,确认目标实例内核版本,按需调整新实例配置后,进行下单。
下单完成后,查看新实例内核大版本已为目标版本且运行状态变为运行中时,即内核大版本升级完成。
查看是否为早期实例
使用阿里云账号登录云数据库ClickHouse控制台。
在页面左上角,选择目标集群所在的地域。
在左侧导航栏,单击集群列表。
找到目标集群,单击集群ID,进入集群信息页面。
在集群信息页面的配置信息中查看小版本信息,若显示为“-”,则为早期实例。