StarRocks 集群运维部署工具

StarRocks 部署工具

本工具用于在远程服务器上自动安装和管理 StarRocks 数据库集群。只需一份配置文件,即可一键完成 FE(管理节点)、BE(存储节点)的安装、初始化与日常维护,无需手动登录每台服务器操作。

准备工作

  1. 确认本机已安装 Java 8 或以上(在命令行执行 java -version 能看到版本号即可)。
  2. 拿到工具文件 starrocks-tool.jar 和配置文件 starrocks.conf
  3. 打开 starrocks.conf,按里面的中文注释填写目标服务器地址、账号密码、安装包路径等信息。需要改的通常只有:服务器 IP、密码、安装包在本机的存放路径。

如果要一次管理多台服务器,把多个 IP 用分号 ; 连起来填到 ssh.host 即可,例如 ssh.host=192.168.1.10;192.168.1.11。所有服务器共用同一套账号密码。

如果不知道服务器的 SSH 账号密码,可以直接在目标服务器上运行本工具,并把 starrocks.conf 里的 local.install=true,即可本机安装,无需走 SSH 通道。此时仍需要把本机 IP 填到 ssh.host

命令一览

所有命令都在命令行执行,格式统一为 java -jar starrocks-tool.jar <命令> starrocks.conf

一、安装集群

# 一键安装:先装管理节点(FE),再装存储节点(BE),自动完成上传、解压、配置、启动
java -jar starrocks-tool.jar install starrocks.conf

也可以单独安装某一种节点:

java -jar starrocks-tool.jar install-fe starrocks.conf   # 只安装管理节点 FE
java -jar starrocks-tool.jar install-be starrocks.conf   # 只安装存储节点 BE

安装过程中工具会自动完成:创建目录、上传安装包、解压、生成配置、启动服务,并在启动后检测是否成功。多台服务器时会逐台依次安装。

二、初始化集群

# 安装完成后执行:把存储节点注册到集群、设置数据库密码和连接参数
java -jar starrocks-tool.jar init starrocks.conf

这一步会自动完成:将 BE 加入集群、设置 root 密码、调整最大连接数和查询超时时间等。执行一次即可。

三、查看节点

# 查看当前集群有哪些存储节点(BE)
java -jar starrocks-tool.jar be-list starrocks.conf

# 巡检所有存储节点的健康状况(是否正常、磁盘容量、版本等)
java -jar starrocks-tool.jar be-check starrocks.conf

be-check 发现异常节点时会提示,并在结尾汇总健康/异常数量。

四、重启存储节点

# 逐台重启所有存储节点(一台重启完再处理下一台,不影响整个集群)
java -jar starrocks-tool.jar be-restart starrocks.conf

# 同上,但如果某台停止时卡住超过30秒,会强制结束后再重启
java -jar starrocks-tool.jar be-restart-force starrocks.conf

# 只重启指定的几台(多个 IP 用逗号分隔)
java -jar starrocks-tool.jar be-restart starrocks.conf --only 192.168.1.10,192.168.1.11

五、修改节点配置

# 修改某台/所有存储节点(BE)的配置项(存在则修改,不存在则新增)
java -jar starrocks-tool.jar beconf starrocks.conf mem_limit=90%

# 修改管理节点(FE)的配置项(存在则修改,不存在则新增)
java -jar starrocks-tool.jar feconf starrocks.conf connector_row_size_estimate_bytes=245

写法是 配置项名=值。工具会自动检查该配置项是否已存在:有则更新,没有则在文件末尾追加。多台服务器时同样逐台修改。修改后如需生效,请重启对应节点(用上面的重启命令)。

常见问题

Windows 命令行里中文显示乱码?
运行前先执行 chcp 65001 切换到 UTF-8 编码即可。Linux 和 Mac 一般不会有此问题。

安装/初始化失败怎么办?
请检查 starrocks.conf 里的服务器地址、账号密码、安装包路径是否正确,以及目标服务器网络是否可达、22 端口是否开放。

技术支持

遇到任何问题,请联系开发者:发尔 · 玻尔™

https://gitee.com/human2312/starrocks-tool

https://github.com/lemyhello/starrocks-tool