结构
主节点+StarRocks集群
主节点用于管理,可以混部,但要注意资源的竞争问题。测试环境可以搞试试,生产还是尽量不要混部。
1 集群互信(保证可以自动去执行命令)
在主节点执行,给要分发的集群节点分发
ssh-keygen
ssh-copy-id root@172.26.22.x1
ssh-copy-id root@172.26.22.x2
ssh-copy-id root@172.26.22.x3
ssh-copy-id root@172.26.22.x4
检查
ssh root@172.26.22.x1 date
ssh root@172.26.22.x2 date
ssh root@172.26.22.x3 date
ssh root@172.26.22.x4 date
2 下载StarGo并配置 (go开发)
(首先进入用户目录 )cd ~
wget https://raw.githubusercontent.com/wangtianyi2004/starrocks-controller/main/stargo-pkg.tar.gz
tar -xzvf stargo-pkg.tar.gz
(如果下载失败可以自行去git下载最新版本): https://github.com/wangtianyi2004/starrocks-controller
解压后进入目录,可以看到:
stargo:StarGo 二进制文件,无需安装。
deploy-template.yamlyaml:部署配置文件模板。
repo.yaml:指定 StarRocks 安装包下载库的配置文件。
StarGo支持的版本参考(不断随StarRocks更新中): http://starrocks-thirdparty.oss-cn-zhangjiakou.aliyuncs.com/packageVersion.list
修改deploy-template.yaml文件,主要是FE和BE节点,Broker暂不支持,如不涉及相关导入可以忽略:(下面是3FE+3BE的架构,文件目录配置了会自动创建,确保互信有权限即可)
global:
user: "starrocks" # 请修改为当前操作系统用户。
ssh_port: 22
fe_servers:
- host: 192.168.XX.XX
ssh_port: 22
http_port: 8030
rpc_port: 9020
query_port: 9030
edit_log_port: 9010
deploy_dir: StarRocks/fe
meta_dir: StarRocks/fe/meta
log_dir: StarRocks/fe/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,请在当前配置项中为当前节点指定唯一 IP。
config:
sys_log_level: "INFO"
- host: 192.168.XX.XX
ssh_port: 22
http_port: 8030
rpc_port: 9020
query_port: 9030
edit_log_port: 9010
deploy_dir: StarRocks/fe
meta_dir: StarRocks/fe/meta
log_dir: StarRocks/fe/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,在当前配置项中为当前节点指定唯一 IP。
config:
sys_log_level: "INFO"
- host: 192.168.XX.XX
ssh_port: 22
http_port: 8030
rpc_port: 9020
query_port: 9030
edit_log_port: 9010
deploy_dir: StarRocks/fe
meta_dir: StarRocks/fe/meta
log_dir: StarRocks/fe/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,在当前配置项中为当前节点指定唯一 IP。
config:
sys_log_level: "INFO"
be_servers:
- host: 192.168.XX.XX
ssh_port: 22
be_port: 9060
webserver_port: 8040
heartbeat_service_port: 9050
brpc_port: 8060
deploy_dir : StarRocks/be
storage_dir: StarRocks/be/storage
log_dir: StarRocks/be/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,在当前配置项中为当前节点指定唯一 IP。
config:
create_tablet_worker_count: 3
- host: 192.168.XX.XX
ssh_port: 22
be_port: 9060
webserver_port: 8040
heartbeat_service_port: 9050
brpc_port: 8060
deploy_dir : StarRocks/be
storage_dir: StarRocks/be/storage
log_dir: StarRocks/be/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,在当前配置项中为当前节点指定唯一 IP。
config:
create_tablet_worker_count: 3
- host: 192.168.XX.XX
ssh_port: 22
be_port: 9060
webserver_port: 8040
heartbeat_service_port: 9050
brpc_port: 8060
deploy_dir : StarRocks/be
storage_dir: StarRocks/be/storage
log_dir: StarRocks/be/log
priority_networks: 192.168.XX.XX/24 # 当机器有多个 IP 时,在当前配置项中为当前节点指定唯一 IP。
config:
create_tablet_worker_count: 3
3 部署StarRocks
./stargo cluster deploy <cluster_name> <version> <topology_file>
参数 | 描述 |
---|---|
cluster_name | 创建的集群名 |
version | StarRocks 的版本 |
topology_file | 配置文件名 |
创建成功后,集群将会自动启动。当返回 beStatus 和feStatus 为 true 时,集群部署启动成功。
失败了按照提示修改再运行即可,如果有问题重新删除目录运行即可。
4 查看和修改StarRocks集群信息
mysql -h 127.0.0.1 -P9030 -uroot
修改密码:
set password=password('root');
查看FE节点信息
show frontends\G
查看BE节点信息
show backends\G
查看集群
./stargo cluster list
查看指定集群信息
./stargo cluster display star3
升级版本
starrocks 2.2.0 升级到 2.3.0
./stargo cluster upgrade star3 v2.3.0
除了没有Broker节点功能,自带jdk也是StarGo小缺点。