StarRocks-3.1.6升级

news/2025/3/2 2:40:08/

1、升级路径

1.1、小版本升级

您可以跨小版本升级您的 StarRocks 集群,例如,从 v2.2.6 直接升级到 v2.2.11。

1.2、大版本升级

从 StarRocks v2.0 开始,您可以跨大版本升级 StarRocks 集群,例如,从 v2.2.x 直接升级到 v2.5.x。但出于兼容性和安全原因,我们强烈建议您将 StarRocks 集群按大版本逐级升级。例如,要将 StarRocks v2.2 集群升级到 v2.5,需要按照以下顺序升级:v2.2.x --> v2.3.x --> v2.4.x --> v2.5.x。

1.3、重大版本升级

您必须从 v1.19 升级到 v2.0。
您必须从 v2.5 升级到 v3.0。

2、升级流程

StarRocks 支持滚动升级,允许您在不停止服务的情况下升级您的集群。按照设计,BE 和 CN 向后兼容 FE。因此,您需要先升级 BE 和 CN,然后升级 FE,以便让您的集群在升级的同时也能正常运行。 错误的升级顺序可能会导致 FE 与 BE/CN 不兼容,进而导致服务崩溃。对于 FE 节点,您必须先升级所有 Follower FE 节点,最后升级 Leader FE 节点。

3、兼容性配置

如需进行大版本或重大版本升级,则必须进行兼容性配置。除了通用的兼容性配置外,还需根据升级前版本进行具体配置。

- 通用兼容性配置
升级前,请关闭 Tablet Clone。

ADMIN SET FRONTEND CONFIG ("max_scheduling_tablets" = "0");
ADMIN SET FRONTEND CONFIG ("max_balancing_tablets" = "0");
ADMIN SET FRONTEND CONFIG ("disable_balance"="true");
ADMIN SET FRONTEND CONFIG ("disable_colocate_balance"="true");

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

ADMIN SET FRONTEND CONFIG ("max_scheduling_tablets" = "2000");
ADMIN SET FRONTEND CONFIG ("max_balancing_tablets" = "100");
ADMIN SET FRONTEND CONFIG ("disable_balance"="false");
ADMIN SET FRONTEND CONFIG ("disable_colocate_balance"="false");
  • 自 v2.0 升级

自 v2.0 版本升级至其他大版本时,您需要设置以下 BE 设置项以及系统变量。

如果您曾经修改过 BE 配置项 vector_chunk_size,升级前必须将其设置为4096。由于该配置项为静态参数,所以必须在 BE 配置文件 be.conf 中修改,并且在修改完成后重启节点使修改生效。

全局设置系统变量 batch_size 为小于等于 4096 的值。

SET GLOBAL batch_size = 4096;

4、准备工作

4.1、解压安装包

tar -zxf StarRocks-3.1.6.tar.gz

4.2、修改FE目录名称

mv bin bin.316
mv spark-dpp spark-dpp.316
mv llib ib.316

4.3、修改BE目录名称

mv bin bin.316
mv llib ib.316

4.4、修改broker目录名称

mv bin bin.316
mv llib ib.316

4.5、修改start_broker.sh

vi start_broker.shexport JAVA_HOME=/usr/java/jdk-17

5、升级 BE

5.1、分发bin目录

ansible be -m copy -a 'src=/opt/soft/StarRocks-3.1.6/be/bin.316 dest=/opt/module/starrocks/be/ mode=0755'

5.2、分发lib目录

ansible be -m copy -a 'src=/opt/soft/StarRocks-3.1.6/be/lib.316 dest=/opt/module/starrocks/be/'

5.3、修改老版本目录名称

ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/lib /opt/module/starrocks/apache_hdfs_broker/lib.315"ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/bin /opt/module/starrocks/apache_hdfs_broker/bin.315"

5.4、修改新版本目录名称

ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/bin.316 /opt/module/starrocks/apache_hdfs_broker/bin"ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/lib.316 /opt/module/starrocks/apache_hdfs_broker/lib"

5.5、启动该 BE 节点

./bin/stop_be.shsh bin/start_be.sh --daemonansible be -m shell -a "sh /opt/module/starrocks/be/bin/start_be.sh --daemon"

5.6、查看节点是否启动成功

ps aux | grep starrocks_beansible be -m shell -a "ps aux | grep starrocks_be"

5.7、重复以上步骤升级其他 BE 节点

6、升级 Broker

6.1、分发bin目录

ansible be -m copy -a 'src=/opt/soft/StarRocks-3.1.6/apache_hdfs_broker/bin.316 dest=/opt/module/starrocks/apache_hdfs_broker/ mode=0755'

6.2、分发lib目录

ansible be -m copy -a 'src=/opt/soft/StarRocks-3.1.6/apache_hdfs_broker/lib.316 dest=/opt/module/starrocks/apache_hdfs_broker/'

6.3、修改老版本目录名称

ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/lib /opt/module/starrocks/apache_hdfs_broker/lib.315"ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/bin /opt/module/starrocks/apache_hdfs_broker/bin.315"

6.4、修改新版本目录名称

ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/bin.316 /opt/module/starrocks/apache_hdfs_broker/bin"ansible be -m shell -a "mv /opt/module/starrocks/apache_hdfs_broker/lib.316 /opt/module/starrocks/apache_hdfs_broker/lib"

6.5、启动该 Broker节点


ansible be -m shell -a "sh /opt/module/starrocks/apache_hdfs_broker/bin/start_broker.sh --daemon"

6.6、查看节点是否启动成功

ps aux |grep BrokerBootstrapansible be -m shell -a "ps aux |grep BrokerBootstrap"

7、升级 CN

7.1、进入 CN 节点工作路径,并优雅停止该节点

# 将 <cn_dir> 替换为 CN 节点的部署目录。
cd <cn_dir>/be
./bin/stop_cn.sh --graceful

7.2、替换部署文件原有路径 bin 和 lib 为新版本的部署文件

mv lib lib.bak 
mv bin bin.bak
cp -r /tmp/StarRocks-x.x.x/be/lib  .
cp -r /tmp/StarRocks-x.x.x/be/bin  .

7.3、启动该 CN 节点

sh bin/start_cn.sh --daemon

7.4、查看节点是否启动成功

ps aux | grep starrocks_be

7.5、重复以上步骤升级其他 CN 节点。

8、升级 FE

8.1、分发bin目录

ansible fe -m copy -a 'src=/opt/soft/StarRocks-3.1.6/fe/bin.316 dest=/opt/module/starrocks/fe/'

8.2、分发lib目录

ansible fe -m copy -a 'src=/opt/soft/StarRocks-3.1.6/fe/lib.316 dest=/opt/module/starrocks/fe/'

8.3、分发spark-dp目录

ansible fe -m copy -a 'src=/opt/soft/StarRocks-3.1.6/fe/spark-dpp.316 dest=/opt/module/starrocks/fe/'

8.4、修改老版本目录名称

ansible fe -m shell -a "mv /opt/module/starrocks/fe/lib /opt/module/starrocks/fe/lib.315"
ansible fe -m shell -a "mv /opt/module/starrocks/fe/bin /opt/module/starrocks/fe/bin.315"
ansible fe -m shell -a "mv /opt/module/starrocks/fe/spark-dpp /opt/module/starrocks/fe/spark-dpp.315"

8.5、修改新版本目录名称

ansible fe -m shell -a "mv /opt/module/starrocks/fe/lib.316 /opt/module/starrocks/fe/lib"
ansible fe -m shell -a "mv /opt/module/starrocks/fe/bin.316 /opt/module/starrocks/fe/bin"
ansible fe -m shell -a "mv /opt/module/starrocks/fe/spark-dpp.316 /opt/module/starrocks/fe/spark-dpp"

8.6、启动该 FE 节点

./bin/stop_fe.shsh bin/start_fe.sh --daemonansible fe -m shell -a "sh /opt/module/starrocks/fe/bin/start_fe.sh --daemon"

8.7、查看节点是否启动成功

ps aux | grep StarRocksFEansible fe -m shell -a "ps aux | grep StarRocksFE"

8.8、重复以上步骤升级其他 Follower FE 节点,最后升级 Leader FE 节点。

9、查看集群状态

9.1、查看FE节点

show frontends;

9.2、查看BE节点

show backends;

9.3、查看Broker节点

show proc '/brokers';

http://www.ppmy.cn/news/1285037.html

相关文章

在uniapp中使用背景渐变色与背景图不生效问题

list上有文字详情以及背景图&#xff0c;从背景可以看出是渐变色和 背景图片的结合。 因为使用到渐变色&#xff0c;所以要结合 background-blend-mode 属性来实现与背景图片叠加显示&#xff0c;否则只通过 background: linear-gradient(); background-image: url(); 设置不会…

信息泄露总结

文章目录 一、备份文件下载1.1 网站源码1.2 bak文件泄露1.3 vim缓存1.4 .DS_Store 二、Git泄露2.1 git知识点2.1 log2.2 stash 三、SVN泄露3.1 SVN简介3.2 SVN的文件3.3 SVN利用 四、Hg泄露 一、备份文件下载 1.1 网站源码 常见的网站源码备份文件后缀&#xff1a; tartar.gz…

Matlab实时读取串口数据并实时画图方法

** Matlab实时读取串口数据并实时画图方法 ** 按照数据串口协议如&#xff1a;$KT2,1.80,88.18,39.54,42.86,LO[0.72,-1.04,0.35]&#xff0c;举例。 s serialport("COM12",115200,"Timeout",5); poszeros(100000,3); j1; data1 read(s,1,"uint8&…

组合[中等]

一、题目 给定两个整数n和k&#xff0c;返回范围[1, n]中所有可能的k个数的组合。你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2&#xff1a; 输入&#xff1a;n 1…

PicGo+GitHub搭建免费图床

PicGoGitHub搭建免费图床 步骤 1: 安装 PicGo步骤 2:创建图床仓库步骤 3: 配置 GitHub Token步骤 4: 配置 PicGo步骤 5: 上传图片步骤 6: 访问图片 使用 GitHub 作为图床的优势在于免费、稳定且具有版本控制功能&#xff0c;特别适合个人博客、小型项目等。PicGo作为一个开源的…

一篇文章掌握 NestJS 所有的生命周期以及生命周期的执行时机

前言 NestJS 是一个用于构建高效、可扩展的 Node.js 服务器端应用程序的框架&#xff0c;它使用 TypeScript 作为开发语言&#xff0c;也支持原生的 JavaScript。在 NestJS 中&#xff0c;生命周期事件是一个重要的概念。在我们构建和管理应用程序时&#xff0c;有时需要在特定…

C# Onnx yolov8n forklift detection

目录 效果 模型 项目 代码 下载 C# Onnx yolov8n forklift detection 效果 模型 Model Properties ------------------------- date&#xff1a;2023-12-25T16:22:05.530078 author&#xff1a;Ultralytics task&#xff1a;detect license&#xff1a;AGPL-3.0 https:/…

六、文件操作

文章目录 1.文件的打开与关闭1&#xff09;打开文件2&#xff09;关闭文件3&#xff09;写数据4&#xff09;读数据(read)5&#xff09;读数据&#xff08;readlines&#xff09;6&#xff09;读数据&#xff08;readline&#xff09;7&#xff09;获取当前读写的位置8&#xf…