SR3.0降级到2.5

76 阅读2分钟

一、降级的注意事项

集群信息

172.21.27.29
172.21.27.30
172.21.27.31


# 
mysql -h172.21.27.30 -P9030 -uroot 



二、降级前的准备

通用兼容性设置

降级前,请关闭 Tablet Clone。如果您已经关闭 Balancer,可以跳过该步骤。

ADMIN SET FRONTEND CONFIG ("tablet_sched_max_scheduling_tablets" = "0");
ADMIN SET FRONTEND CONFIG ("tablet_sched_max_balancing_tablets" = "0");
ADMIN SET FRONTEND CONFIG ("disable_balance"="true");
ADMIN SET FRONTEND CONFIG ("disable_colocate_balance"="true");



三、降级FE

  1. 进入fe节点后,停fe服务
# 将 <fe_dir> 替换为 FE 节点的部署目录。
cd <fe_dir>/fe
./bin/stop_fe.sh
  1. 替换部署文件原有路径bin、lib和spark-dpp为旧版本的部署文件
mv lib lib_30bak
mv bin bin_30bak
mv spark-dpp spark-dpp_30bak

#cp -r /tmp/StarRocks-x.x.x/fe/lib  .   
#cp -r /tmp/StarRocks-x.x.x/fe/bin  .
#cp -r /tmp/StarRocks-x.x.x/fe/spark-dpp  .

mv lib_25bak lib
mv bin_25bak bin
mv spark-dpp_25bak spark-dpp

cp lib_30bak/starrocks-bdb-je-18.3.16.jar lib/starrocks-bdb-je-18.3.16.jar

mv lib/je-7.3.7.jar lib/je-7.3.7.jar_bak

注意:

如需将 StarRocks v3.0 降级至 v2.5,则必须在替换部署文件后执行以下步骤:

  1. 将 v3.0 部署文件中的fe/lib/starrocks-bdb-je-18.3.13.jar 复制到 v2.5 部署文件的 fe/lib 路径下。

  2. 删除文件 fe/lib/je-7.*.jar

  3. 启动fe节点

sh bin/start_fe.sh --daemon
  1. 查看节点是否成功启动
ps aux | grep StarRocksFE
  1. 重复以上步骤降级follower,最后降级leader

  2. 创建image

# 所有fe降级完成后,执行
ALTER SYSTEM CREATE IMAGE;

注意

如需将 StarRocks v3.0 降级至 v2.5,则必须在降级完成后执行以下步骤:

  1. 执行 ALTER SYSTEM CREATE IMAGE 创建新的元数据快照文件。
  2. 等待元数据快照文件同步至其他 FE 节点。

如果不运行该命令,部分降级操作可能会失败。ALTER SYSTEM CREATE IMAGE 命令仅在 v2.5.3 及更高版本支持。

  1. 检查fe集群状态
# 
show frontends;



四、降级BE

降级所有 FE 节点后,您可以继续降级 BE 节点。

  1. be节点的停服
# 将 <be_dir> 替换为 BE 节点的部署目录。
cd <be_dir>/be
./bin/stop_be.sh
  1. 替换部署文件原有路径 binlib 为旧版本的部署文件。
mv lib lib_30bak
mv bin bin_30bak


mv bin_25bak bin
mv lib_25bak lib

#cp -r /tmp/StarRocks-x.x.x/be/lib  .
#cp -r /tmp/StarRocks-x.x.x/be/bin  .
  1. 启动该 BE 节点。
sh bin/start_be.sh --daemon
  1. 查看节点是否启动成功。
ps aux | grep starrocks_be
  1. 重复以上步骤降级其他 BE 节点。




五、检查

# 



六、恢复参数

完成降级,并且所有 BE 节点状态变为 Alive 后,您可以重新开启 Tablet Clone。

ADMIN SET FRONTEND CONFIG ("tablet_sched_max_scheduling_tablets" = "10000");
ADMIN SET FRONTEND CONFIG ("tablet_sched_max_balancing_tablets" = "500");
ADMIN SET FRONTEND CONFIG ("disable_balance"="false");
ADMIN SET FRONTEND CONFIG ("disable_colocate_balance"="false");



七、补充

  1. docs.starrocks.io/zh/docs/2.5…