热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

0047.SStarRocks小版本升级

StarRocks可以通过滚动升级的方式,平滑进行升级。升级顺序是先升级BE,然后再升级FE,最后升级Broker。FE升级切换会有短暂业务中断,可采用硬件负载均衡、DNS轮询、j

StarRocks可以通过滚动升级的方式,平滑进行升级。升级顺序是先升级BE,然后再升级FE,最后升级Broker。FE升级切换会有短暂业务中断,可采用硬件负载均衡如F5、软件负载均衡如nginx、DNS轮询、jdbc连接串轮询、LVS、keeplive等多种方式实现平滑升级。





0. ENV



0.1 升级版本

1.15.1到1.15.2属小版本升级,1.14.x到1.15.x属大版本升级

  • StarRocks-SE-1.15.1.tar.gz

  • StarRocks-SE-1.15.2.tar.gz


0.2 升级说明

  • StarRocks可以通过滚动升级的方式,平滑进行升级。升级顺序是先升级BE,然后再升级FE。StarRocks保证BE后向兼容FE。升级的过程可以分为:测试升级的正确性,滚动升级,观察服务。

  • 如果是大版本升级,则需要升级其他文件(包括但不限于bin/ lib/等等)如果您不清楚是否需要替换其他文件,建议全部替换即可,但需要保留配置文件、数据文件。

  • 通常小版本升级,BE只需升级starrocks_be,而FE只需升级starrocks-fe.jar,本次为小版本升级,Broker不需要升级。




1. 升级步骤



解压需要升级的文件starrocks_be和starrocks-fe.jar

[root@sr1 ~]# tar zxvf soft/StarRocks-SE-1.15.2.tar.gz StarRocks-SE-1.15.2/be/lib/starrocks_be
[root@sr1 ~]# tar zxvf soft/StarRocks-SE-1.15.2.tar.gz StarRocks-SE-1.15.2/fe/lib/starrocks-fe.jar




2. 升级前版本查看


查看fe版本:

[root@sr01 ~]# show_fe_version.sh
Commit hash: 6fb71ad
Build type: RELEASE
Build time: 2021-05-20 22:02:49
Build user: jenkins@ci01
Java compile version: java full version "1.8.0_202-b08"

查看be版本:

[root@sr01 ~]# show_be_version.sh
1.15.1 RELEASE (build 6fb71ad)
Built on 2021-05-20 21:54:06 by jenkins@ci01




3. BE升级



采用滚动升级,逐个升级BE。BE不区分先后,以节点sr01为例。


1) 停止be

[root@sr01 ~]# starrocks/be/bin/stop_be.sh --daemon


2) 确保进程已停止

[root@sr01 ~]# ps -ef |grep be
root       4202   1969  0 23:54 pts/0    00:00:00 grep --color=auto be


3) 备份BE

[root@sr01 ~]# mv starrocks/be/lib/starrocks_be starrocks/be/lib/starrocks_be.1.15.1


4) 升级BE

[root@sr01 ~]# cp -af StarRocks-SE-1.15.2/be/lib/starrocks_be starrocks/be/lib/


5) 确认权限(1007:1007)

[root@sr01 ~]# ls -lrt starrocks/be/lib/starrocks_be*
-rwxr-xr-x. 1 1007 1007 1240089360 Mar 30 23:54 starrocks/be/lib/starrocks_be.1.15.1
-rwxr-xr-x  1 1007 1007 1240128152 Apr 27 23:55 starrocks/be/lib/starrocks_be


6) 启动be

[root@sr01 ~]# starrocks/be/bin/start_be.sh --daemon


7) 确认版本-当前已升级成功

[root@sr01 ~]# starrocks/be/bin/show_be_version.sh
1.15.2 RELEASE (build 673a01e)
Built on 2021-06-01 15:43:51 by jenkins@ci01


8) 同样逐个升级sr02、sr03节点的BE


9)运行正常后,清理备份

[root@sr01 ~]# rm -f starrocks/be/lib/starrocks_be.1.15.1




4. FE升级



采用滚动升级,逐个升级FE。FE先升级FOLLOWER,最后升级Master,以节点sr02为例。


1) 停止FE

[root@sr02 ~]# /starrocks/fe/bin/stop_fe.sh --daemon
stop java, and remove pid file.


2) 确保进程已停止

[root@sr02 ~]# jps
7068 Jps


3) 备份FE

[root@sr02 ~]# mv /starrocks/fe/lib/starrocks-fe.jar /starrocks/fe/lib/starrocks-fe.jar.1.15.1


4) 升级BE

[root@sr02 ~]# cp -af StarRocks-SE-1.15.2/fe/lib/starrocks-fe.jar /starrocks/fe/lib/


5)确认属主和属组

[root@sr02 ~]# ll /starrocks/fe/lib/starrocks-fe.jar*
-rw-rw-r--  1 1007 1007 9738668 Apr 28 00:02 /starrocks/fe/lib/starrocks-fe.jar
-rw-rw-r--. 1 1007 1007 9738682 Mar 30 23:54 /starrocks/fe/lib/starrocks-fe.jar.1.15.1


6) 启动fe

[root@sr02 ~]# /starrocks/fe/bin/start_fe.sh --daemon


7) 升级后版本-当前已升级成功

[root@sr02 ~]# /starrocks/fe/bin/show_fe_version.sh
Commit hash: 673a01e
Build type: RELEASE
Build time: 2021-06-01 15:50:48
Build user: jenkins@ci01
Java compile version: java full version "1.8.0_202-b08"


8) 查看FE进程状态

mysql> show proc '/frontends';


9) 同样,升级其它FE节点,如sr01




5. 升级完成后验证



be http port默认为8040

http://192.168.80.31:8040/api/health
{"status": "OK","msg": "To Be Added"}


fe http port默认为8030

http://192.168.80.31:8030/api/bootstrap
输入root,密码为空

{"online_backend_num":1,"total_backend_num":3,"status":"OK"}



6. 小结



通过小版本升级展示,以StarRocks从1.15.1升级到1.15.2为例,修复bug,提升稳定性。


往期参考:0045.D StarRocks大版本升级








推荐阅读
author-avatar
平和-3699
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有