大数据StarRocks(二) StarRocks集群部署

在这里插入图片描述

一、生产机器资源评估

1.梳理数据量,包括每天增量数据接入和全量数据接入
2.数据存储时间长度(1个月/3个月/半年/1年/三年等)
3.报表的SQL查询数量,SQL查询占用资源的统计,需要提前做好压测
4.压测可以采用官网提供的压测工具先进行测试,根据测试数据进行资源调整,然后再要业务数据进行压测一遍
最终以压测中预期结果最好的机器配置进行申请,如果公司很rich的话,直接用80c/256G的机器配置。

二、部署

划分角色
在这里插入图片描述

(1)安装之前先使用命令检查CPU是否支持,有信息输出则支持,没信息输出则不支持建议更换机器

[root@hadoop1011 /app]# cat /proc/cpuinfo |grep avx2|head -1
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid tsc_known_freq pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm cmp_legacy cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext invpcid_single vmmcall tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves clzero xsaveerptr rdpru wbnoinvd arat vaes vpclmulqdq rdpid

另外检查数据盘挂载情况,cpu核数,内存大小
机器直接的网络连通性

(2)下载tar包,并重命名

[root@hadoop1011 /app]# wget https://releases.starrocks.io/starrocks/StarRocks-3.1.4.tar.gz

(3)解压tar包

[root@hadoop1011 /app]# tar -zxvf StarRocks-3.1.4.tar.gz

(4)部署FE,修改配置文件,添加jvm参数,建议-Xmx参数设置到16G以上

[root@hadoop1011 /app]# cd /app/StarRocks-3.1.4/fe/conf/
[root@hadoop1011 conf]# vim fe.conf 
LOG_DIR = ${STARROCKS_HOME}/log
DATE = "$(date +%Y%m%d-%H%M%S)"
JAVA_OPTS="-Dlog4j2.formatMsgNoLookups=true -Xmx32768m -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:${LOG_DIR}/fe.gc.log.$DATE -XX:+PrintConcurrentLocks"
JAVA_OPTS_FOR_JDK_9="-Dlog4j2.formatMsgNoLookups=true -Xmx32768m -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=7 -XX:+CMSClassUnloadingEnabled -XX:-CMSParallelRemarkEnabled -XX:CMSInitiatingOccupancyFraction=80 -XX:SoftRefLRUPolicyMSPerMB=0 -Xlog:gc*:${LOG_DIR}/fe.gc.log.$DATE:time"
meta_dir = ${STARROCKS_HOME}/meta
sys_log_level = INFO
http_port = 8030
rpc_port = 9020
query_port = 9030
edit_log_port = 9010
mysql_service_nio_enabled = true
[root@hadoop1011 /app]# cd /app/StarRocks-3.1.4/be/conf/
[root@hadoop1011 conf]# vim be.conf
default_rowset_type=beta
be_port=9060
sys_log_level=INFO
sys_log_verbose_modules=
storage_root_path=/mnt/disk1/starrocks/storage;/mnt/disk2/starrocks/storage;/mnt/disk3/starrocks/storage;/mnt/disk4/starrocks/storage;
priority_networks=192.168.10.14/24
webserver_port=8040
brpc_port=8060
heartbeat_service_port=9050
sys_log_roll_num=10
sys_log_roll_mode=SIZE-MB-1024
[root@hadoop1011 /app]# tar -zcvf StarRocks-3.1.4-new.tar.gz StarRocks-3.1.4/
[root@hadoop1011 /app]# python -m SimpleHTTPServer

priority_networks配置随be主机的IP

hadoop1015/hadoop1016

priority_networks=192.168.10.15/24
priority_networks=192.168.10.16/24

其他节点下载安装包并解压
示例:

[root@hadoop1012 /app]# wget 192.168.10.11:8000/StarRocks-3.1.4-new.tar.gz
[root@hadoop1012 /app]# tar -zxvf StarRocks-3.1.4-new.tar.gz

(5)hadoop1011/hadoop1012/hadoop103机器上创建元数据目录

[root@hadoop1011 ]# cd /app/StarRocks-3.1.4/fe
[root@hadoop1011 ]# mkdir -p meta

(6)启动hadoop1011 FE节点

[root@hadoop1011 ]#cd /app/StarRocks-3.1.4/fe
[root@hadoop1011 fe]# bin/start_fe.sh --daemon

(7)启动mysql客户端,访问FE,查看FE状况

[root@hadoop1011 fe]# mysql -h hadoop1011 -uroot -P9030
mysql> SHOW PROC '/frontends'\G
MySQL [(none)]> show frontends \G;
*************************** 1. row ***************************Name: 192.168.10.11_9010_1698302659926IP:  192.168.10.11EditLogPort: 9010HttpPort: 8030QueryPort: 9030RpcPort: 9020Role: LEADERClusterId: 1085778829Join: trueAlive: true
ReplayedJournalId: 1774256LastHeartbeat: 2024-01-03 00:45:22IsHelper: trueErrMsg: StartTime: 2023-11-24 09:53:06Version: 3.1.4-0c4b2a3

(8)添加其他FE节点,角色也分为FOLLOWER,OBSERVER

mysql> ALTER SYSTEM ADD FOLLOWER "hadoop1012:9010";
mysql> ALTER SYSTEM ADD FOLLOWER  "hadoop1013:9010";

(9)启动hadoop1012,hadoop1013 FE节点,第一次启动需指定–helper参数,后续再启动无需指定此参数

[root@hadoop1012 fe]# bin/start_fe.sh --helper hadoop1011:9010 --daemon
[root@hadoop1013 fe]# bin/start_fe.sh --helper hadoop1011:9010 --daemon

(10)全部启动完毕后,再使用mysql客户端查看FE的状况,alive全显示true则无问题

MySQL [(none)]> show frontends \G;
*************************** 1. row ***************************Name: 192.168.10.11_9010_1698302659926IP: 192.168.10.11EditLogPort: 9010HttpPort: 18030QueryPort: 9030RpcPort: 9020Role: LEADERClusterId: 1085778829Join: trueAlive: true
ReplayedJournalId: 1774256LastHeartbeat: 2024-01-03 00:45:22IsHelper: trueErrMsg: StartTime: 2023-11-24 09:53:06Version: 3.1.4-0c4b2a3
*************************** 2. row ***************************Name: 192.168.10.12_9010_1698303243473IP: 192.168.10.12EditLogPort: 9010HttpPort: 8030QueryPort: 9030RpcPort: 9020Role: FOLLOWERClusterId: 1085778829Join: trueAlive: true
ReplayedJournalId: 1774256LastHeartbeat: 2024-01-03 00:45:22IsHelper: trueErrMsg: StartTime: 2023-11-21 15:56:57Version: 3.1.4-0c4b2a3
*************************** 3. row ***************************Name: 192.168.10.13_9010_1698303248816IP: 192.168.10.13EditLogPort: 9010HttpPort: 8030QueryPort: 9030RpcPort: 9020Role: FOLLOWERClusterId: 1085778829Join: trueAlive: true
ReplayedJournalId: 1774256LastHeartbeat: 2024-01-03 00:45:22IsHelper: trueErrMsg: StartTime: 2023-11-21 15:57:49Version: 3.1.4-0c4b2a3

(11) 添加BE

mysql> ALTER SYSTEM ADD BACKEND "hadoop1014:9050";
mysql> ALTER SYSTEM ADD BACKEND "hadoop1015:9050";
mysql> ALTER SYSTEM ADD BACKEND "hadoop1016:9050";

(12)部署BE,用户可以使用命令直接将BE添加到集群中,一般至少布置3个BE,每个BE实例添加步骤相同

[root@hadoop1014 app]# cd StarRocks-3.1.4/be/
[root@hadoop1014 be]# /mnt/disk{1..4}/starrocks/storage
[root@hadoop1014 be]# bin/start_be.sh --daemon 

(13)在每个BE节点上部署Broker,Broker是无状态服务,此角色主要用于后续Broker load使用,启动安装目录的Broker服务

[root@hadoop1014 StarRocks-3.1.4]# cd apache_hdfs_broker/
[root@hadoop1014 apache_hdfs_broker]# bin/start_broker.sh --daemon

(14)添加对应BROKER 节点

mysql> ALTER SYSTEM ADD BROKER broker1 "hadoop1014:8000";
mysql> ALTER SYSTEM ADD BROKER broker2 "hadoop1015:8000";
mysql> ALTER SYSTEM ADD BROKER broker3 "hadoop1016:8000";

(15)查看状态

MySQL [(none)]> SHOW PROC "/brokers"\G
*************************** 1. row ***************************Name: brokerIP: 192.168.10.14Port: 8000Alive: trueLastStartTime: 2023-04-10 21:43:32
LastUpdateTime: NULLErrMsg: 
*************************** 2. row ***************************Name: brokerIP: 192.168.10.15Port: 8000Alive: trueLastStartTime: 2023-04-10 21:44:32
LastUpdateTime: NULLErrMsg: 
*************************** 3. row ***************************Name: brokerIP: 192.168.10.16Port: 8000Alive: trueLastStartTime: 2023-04-10 21:45:32
LastUpdateTime: NULLErrMsg: 

StarRocks集群部署介绍到这里,欢迎评论,收藏,转发~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/319093.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MySQL第三战:CRUD,函数1以及unionunion all

前言 在当今的数字化时代,数据库已经成为信息管理的重要工具。其中,MySQL作为一种流行的关系型数据库管理系统,已经广泛应用于各种业务场景。在本文中,我们将深入探讨MySQL中的核心概念,包括创建(Create&a…

ROS学习记录:在ROS中用C++实现获取激光雷达的数据

一、打开一个终端,输入cd ~/catkin_ws1,进入工作空间 二、输入source ./devel/setup.bash,将ROS工作空间的环境设置(setup)添加到当前终端会话中 三、输入roslaunch wpr_simulation wpb_simple.launch打开机器人仿真环…

【人工智能】百度智能云千帆AppBuilder,快速构建您的专属AI原生应用

大家好,我是全栈小5,欢迎来到《小5讲堂》,此序列是《人工智能》专栏文章。 这是2024年第5篇文章,此篇文章是进行人工智能相关的实践序列文章,博主能力有限,理解水平有限,若有不对之处望指正&…

聚道云软件连接器带给服装行业客户的业务革新

【客户介绍】 某服装制作企业,专注于设计和生产各类服饰。追求时尚与品质的完美结合,以满足不同消费者的需求。凭借丰富的行业经验,该企业不断创新,致力于提供优质的服装产品和服务。我们的目标是成为消费者心目中的首选品牌&…

大模型上下文长度的超强扩展:从LongLora到LongQLora

前言 本文一开始是《七月论文审稿GPT第2版:从Meta Nougat、GPT4审稿到Mistral、LongLora Llama》中4.3节的内容,但考虑到 一方面,LongLora的实用性较高二方面,为了把LongLora和LongQLora更好的写清楚,而不至于受篇幅…

八大算法排序@冒泡排序(C语言版本)

冒泡排序 概念 冒泡排序(Bubble Sort)是一种简单直观的排序算法,它重复地遍历待排序序列,一次比较两个相邻的元素,如果它们的顺序错误就将它们交换过来。通过多次的遍历,使得最大的元素逐渐移动到待排序序…

[C#]基于deskew算法实现图像文本倾斜校正

【算法介绍】 让我们开始讨论Deskeweing算法的一般概念。我们的主要目标是将旋转的图像分成文本块,并确定它们的角度。为了让您详细了解我将使用的方法: 照常-将图像转换为灰度。应用轻微的模糊以减少图像中的噪点。现在,我们的目标是找到带…

关于设计模式的一点总结

一、GoF 23种设计模式 1.分类 GoF 23种设计模式可分为几类:创建型、结构型和行为型。如下表 分类设计模式创建型单例模式、工厂方法模式、抽象工厂模式、原型模式、建造者模式结构型代理模式、适配器模式、装饰者模式、桥接模式、组合模式、门面模式、享元模式行…

打字练习(Python代码模拟打字练习软件效果)

Python代码模拟打字练习软件效果,循环进行单行打字练习,结束时输出平均速度和综合正确率。 (笔记模板由python脚本于2024年01月03日 22:36:34创建,本篇笔记适合熟悉Python字符串和列表基本数据类型的coder翻阅) 【学习的细节是欢悦的历程】 P…

c++语言基础18-开房门

题目描述 假设你手里有一串钥匙,这串钥匙上每把钥匙都有一个编号,对应着一个房门的编号。现给你一个房门编号,你需要判断是否能够打开该房门。 输入描述 测试数据共有多组。 第一行为一个整数 s,表示共有多少组测试数据。 每组第一…

基于springboot智慧食堂管理系统源码和论文

随着Internet的发展,人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化,网络化和电子化。网上管理,它将是直接管理“智慧食堂”系统的最新形式。本论文是以构建“智慧食堂”系统为目标,使用java技术制作&…

Spark Streaming的DStream与窗口操作

实时数据处理已经成为当今大数据时代的一个重要领域,而Spark Streaming是Apache Spark生态系统中的一个关键模块,用于处理实时数据流。本文将深入探讨Spark Streaming中的DStream(离散流)概念以及如何使用窗口操作来处理实时数据。…