集群部署从dorisdb到starrocks详细过程
一、环境初始化
1、关闭swapoff -a
2、设置java路径
3、初始化盘
4、准备软件包
二、下载包(从1.19后dorisdb改名为starrocks),解压文件
目前新版本下载路径:https://www.starrocks.com/zh-CN/download/request-download/4
##文件名为4,解压命令:tar -zxvf 4
三、安装部署
1、启动个节点fe
sh ./bin/start_fe.sh --daemon
2、启动其他节点的fe
sh ./bin/start_fe.sh --helper 个节点的ip:9010 --daemon
1、通过mysql客户端登陆,默认密码为空(登陆为个启动的节点):mysql -h12.16.0.11 -P 9030 -uroot
2、其他节点加入集群管理操作
添加:alter system add follower "host:9010" ##edit_log_port
删除:alter system drop follower "host:9010" ##edit_log_port
3、启动be
#sh bin/start_be.sh --daemon
管理be
添加节点:ALTER SYSTEM ADD BACKEND "host:port";
删除节点:
alter system decommission backend "host:port" (优雅删除)
alter system drop backend "host:port" (暴力删除)
直接删除提示异常,对于不同版本:> alter system dropp backend "12.16.0.4:9050"
4、集群验证
查看fe添加情况:SHOW PROC '/frontends';
查看be添加情况:SHOW PROC '/backends';
正常启动的集群情况:
5、集群服务托管选择,通过systemctl来管理开机启动,OOM等自动恢复
1、修改start_fe.sh脚本,添加java_home信息:/home/dorisdb/fe/bin/start_fe.sh
export JAVA_HOME=/usr/local/jdk1.8.0_191
export PATH=$JAVA_HOME/bin:$PATH
#sed -i '/from_conf/i\export JAVA_HOME=/home/jdk1.8.0_91' start_fe.sh
#sed -i '/from_conf/i\export PATH=$JAVA_HOME/bin:$PATH' start_fe.sh
2、修改stop_fe.sh脚本,把原表的内容去掉即可
set -e
sudo systemctl stop dorisdb-9030.service
3、在/etc/systemd/system/下添加服务文件 ,其他服务节点类似操作
[Unit]
Description=fe-9030 service
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
LimitNOFILE=1000000
#LimitCORE=infinity
LimitSTACK=10485760
User=root
ExecStart=/home/dorisdb/fe/bin/start_fe.sh
Restart=always
RestartSec=15s
[Install]
WantedBy=multi-user.target
4、系统服务注册及相关配置
#systemctl daemon-reload
#systemctl enable dorisdb.service
#systemctl start dorisdb.service
#systemctl status dorisdb.service
#systemctl restart dorisdb.service
fe参考配置:
LOG_DIR = /data1/dorisdb/fe/log
DATE = "$(date +%Y%m%d-%H%M%S)"
JAVA_OPTS="-Xmx8192m -XX:+UseMembar -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xloggc:/data1/dorisdb/fe/log/fe.gc.log.$DATE"
JAVA_OPTS_FOR_JDK_9="-Xmx8192m -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xlog:gc*:/data1/dorisdb/fe/log/fe.gc.log.$DATE:time"
sys_log_level = INFO
meta_dir = /data1/dorisdb/fe/doris-meta
http_port = 18030
rpc_port = 19020
query_port = 19030
edit_log_port = 19010
mysql_service_nio_enabled = true
frontend_address = 10.1.1.25
sys_log_dir = /data1/dorisdb/fe/log
audit_log_dir = /data1/dorisdb/fe/log
audit_log_modules = slow_query, query
load_parallel_instance_num=7
enable_statistic_collect = true
be参考配置:
sys_log_level = INFO
be_port = 19060
webserver_port = 18040
heartbeat_service_port = 19050
brpc_port = 18060
priority_networks = 10.101.1.20/24
storage_root_path = /data1/dorisdb/be/storage,medium:SSD;/data1/dorisdb/be/storage_hdd,medium:HDD
max_cumulative_compaction_num_singleton_deltas=100
sys_log_dir = /data1/dorisdb/be/log
streaming_load_max_mb = 16000
default_rowset_type = beta
be数据存储根据实际来划分,具体看配置情况
注意点:
1、初始化集群时候个节点启动后,其他节点启动必须使用--helper指向其他点,借助已经启动的FE节点(master/follower)来扩容新的节点,不能指向自己
2、节点多IP情况,或者存在服务认为是特殊的IP地址时候,默认使用priority_networks绑定FE的IP 可能出问题,使用frontend_address =1.1.1.20
3、meta_dir路径配置需要提前创建好,建议需要配置的路径信息都提前规划好(meta_dir数据非常重要的)
4、注意集群服务器的时间问题,差异大会导致新增的FE无法启动加入集群,修复方法: /usr/sbin/ntpdate 1.1.1.20(此服务器时间作为参考)
5、jkd版本1.8+
6、节点部署be多实例端口,不可以使用已经启动过的be文件包,需要单独分开
7、建议每个服务(be/fe)的配置指定好相关路径情况,默认情况会把启动服务路径当数据目录等问题
8、从dorisdb换成starrocks版本,替换bin和lib文件目录即可,同时需要把监控的json文件含有doris 改成starrocks
********先be--->fe(若有ob先有替换,在follower后master)
————————————————
版权声明:本文为CSDN博主「DBASpace」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_36135773/article/details/121140725
相关文章