Doris集群安装部署

Doris集群安装部署

一、环境搭建

1、环境准备

主机名IP角色
doris1192.168.100.131Frotend,Backend
doris2192.168.100.132Backend
doris3192.168.100.133Backend

2、Doris整体架构

Frontend(FE)

主要负责用户请求的接入、查询解析规划、元数据的管理、节点管理相关工作

Backend(BE)

主要负责数据存储、查询计划的执行

在这里插入图片描述

二、准备工作

1、下载doris安装包

下载链接:https://doris.apache.org/zh-CN/download/

image-20240515094414219

2、系统优化

# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

#永久关闭selinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0  # 临时

# 关闭swap
swapoff -a  # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久



cat >> /etc/security/limits.conf  <<EOF
* soft nofile 65536
* hard nofile 65536
EOF



3、配置jdk

安装jdk及依赖包
yum install -y build-essential gcc-10 g++-10 java-1.8.0-openjdk.x86_64 maven cmake byacc flex automake libtool-bin bison binutils-dev libiberty-dev zip unzip libncurses5-dev curl git ninja-build python

#配置java环境变量
cat >>/etc/profile <<EOF

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

EOF

source /etc/profile

4、上传软件包

mkdir -p /data/businessServer/

三、安装部署

1、创建存储目录

#三台服务器都创建
mkdir -p /data/{storage,doris-meta}

2、解压安装包

doris1既是Fe又是Be,所以需要解压所有文件,
其它两台服务器角色是Be,所以只需要解压
apache-doris-be-1.2.4.1-bin-x86_64-noavx2.tar.xz和apache-doris-dependencies-1.2.4.1-bin-x86_64.tar.xz


tar xvf apache-doris-fe-1.2.4.1-bin-x86_64.tar.xz -C /data/
tar xvf apache-doris-be-1.2.4.1-bin-x86_64-noavx2.tar.xz -C /data/
tar xvf apache-doris-dependencies-1.2.4.1-bin-x86_64.tar.xz -C /data/

在这里插入图片描述

3、主机c7-Lab1操作

cd /data/
mv apache-doris-fe-1.2.4.1-bin-x86_64/ fe
mv apache-doris-be-1.2.4.1-bin-x86_64-noavx2/ be
cd apache-doris-dependencies-1.2.4.1-bin-x86_64/
cp java-udf-jar-with-dependencies.jar /data/be/lib/
#创建安装目录
cd /data
mkdir -p doris-1.2.4.1
mv fe/ doris-1.2.4.1/
mv be/ doris-1.2.4.1/
cd apache-doris-dependencies-1.2.4.1-bin-x86_64/
mv apache_hdfs_broker/ /data/doris-1.2.4.1/

4、主机c7-Lab2和c7-Lab3操作

cd /data/
mv apache-doris-be-1.2.4.1-bin-x86_64-noavx2/ be
cd apache-doris-dependencies-1.2.4.1-bin-x86_64/
cp java-udf-jar-with-dependencies.jar /data/be/lib/
#创建安装目录
cd /data
mkdir -p doris-1.2.4.1
mv be/ doris-1.2.4.1/
cd apache-doris-dependencies-1.2.4.1-bin-x86_64/
mv apache_hdfs_broker/ /data/doris-1.2.4.1/

5、修改三台主机的be配置文件

cd /data/doris-1.2.4.1/be/conf/
vi be.conf

在这里插入图片描述

在这里插入图片描述

image-20240515132507006

6、修改c7-Lab1上fe的配置文件

cd /data/doris-1.2.4.1/fe/conf
vi fe.conf

在这里插入图片描述

四、启动FEimage-20240515133108595

sh /data/doris-1.2.4.1/fe/bin/start_fe.sh --daemon

# 查看运行情况
#通过jps查看
jps
10441 PaloFe
#通过curl方式查看
[root@master bin]# curl http://127.0.0.1:8030/api/bootstrap
{"msg":"success","code":0,"data":{"replayedJournalId":0,"queryPort":0,"rpcPort":0,"arrowFlightSqlPort":0,"version":""},"count":0}

这里 IP 和 端口分别是 FE 的 IP 和 http_port(默认8030),如果是你在 FE 节点执行,直接运行上面的命令即可。

如果返回结果中带有 "msg":"success" 字样,则说明启动成功。

你也可以通过 Doris FE 提供的Web UI 来检查,在浏览器里输入地址
http://192.168.100.131:8030/login

image-20240515133238185

image-20240515133600974

image-20240515133659556

1、在fe添加所有be节点和borkers节点

1、命令行链接Doris
mysql -uroot -P9030 -h192.168.100.131

执行下面的命令查看 FE 运行状态
show frontends\G;
注意:

如果 IsMaster、Join 和 Alive 三列均为true,则表示节点正常。

停止pe节点
sh /data/doris-1.2.4.1/fe/bin/stop_fe.sh

image-20240515133929246

image-20240515134026740

使用数据库管理软件连接数据库(数据库默认没有密码,我这里用的管理工具是DBeaver下载地址:https://dbeaver.io/download/)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

set password = password('stars@2002');

ALTER SYSTEM ADD FOLLOWER "192.168.100.131:9010";

alter system add backend "192.168.100.131:9050";
alter system add backend "192.168.100.132:9050";
alter system add backend "192.168.100.133:9050";

ALTER SYSTEM ADD BROKER broker1 "192.168.100.131:8000";
ALTER SYSTEM ADD BROKER broker2 "192.168.100.132:8000";
ALTER SYSTEM ADD BROKER broker3 "192.168.100.133:8000";

四、所有主机启动BE和brokers

sh /data/doris-1.2.4.1/be/bin/start_be.sh --daemon

报错

在这里插入图片描述

sysctl -w vm.max_map_count=2000000
#再次启动服务
sh /data/doris-1.2.4.1/be/bin/start_be.sh --daemon
#启动brokers
sh /data/doris-1.2.4.1/apache_hdfs_broker/bin/start_broker.sh --daemon


[root@master bin]# jps
9971 DorisFE
11525 DorisBE
16583 Jps
16535 BrokerBootstrap



create database demo;
use demo;

CREATE TABLE IF NOT EXISTS demo.user_lab(
    `user_id` LARGEINT NOT NULL COMMENT "用户id",
    `date` DATE NOT NULL COMMENT "数据灌入日期时间",
    `city` VARCHAR(20) COMMENT "用户所在城市",
    `age` SMALLINT COMMENT "用户年龄",
    `sex` TINYINT COMMENT "用户性别",
    `last_visit_date` DATETIME REPLACE DEFAULT "1970-01-01 00:00:00" COMMENT "用户最后一次访问时间",
    `cost` BIGINT SUM DEFAULT "0" COMMENT "用户总消费",
    `max_dwell_time` INT MAX DEFAULT "0" COMMENT "用户最大停留时间",
    `min_dwell_time` INT MIN DEFAULT "99999" COMMENT "用户最小停留时间"
)
AGGREGATE KEY(`user_id`, `date`, `city`, `age`, `sex`)
DISTRIBUTED BY HASH(`user_id`) BUCKETS 1
PROPERTIES (
    "replication_allocation" = "tag.location.default: 1"
);

五、访问web管理平台

http://ip:8030/ 使用数据库账号和密码登录

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

插件:NGUI

一、版本 安装完毕后重启一下即可&#xff0c;否则可能创建的UI元素不生效 二、使用 Label文字 1、创建Canvs 2、只有根节点的这些脚本全部展开才能鼠标右键创建UI元素 3、选择字体 Sprite图片 1、选择图集 2、选择图集中的精灵 Panel容器 用来装UI的容器&#xff0c;一般UI…

汇编:加减乘除指令

加法指令 (ADD) ADD指令用于将两个操作数相加&#xff0c;结果存储在第一个操作数中。 语法&#xff1a; ADD destination, source 示例&#xff1a; assume cs:code ​ code segmentmov ax,3mov bx,2add ax,bx //相加&#xff0c;结果会放在ax中mov ax,4c00hint 21h co…

Training-Free Consistent Text-to-Image Generation # 论文阅读

URL https://arxiv.org/pdf/2402.03286 TL;DR 2024 年 2 月 nvidia 的文章。提出了一种不需要任何额外训练的主体保持方法&#xff0c;可以一次生成的 batch 中&#xff0c;通过多个 prompt 生成对应的多张图片&#xff0c;这些图片都可以拥有一个主体。 本文提出的方法通过…

怎么判断同步时序逻辑电路和异步时序逻辑电路?

&#x1f3c6;本文收录于「Bug调优」专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收藏&&…

基于Python卷积神经网络的Mnist手写数字识别

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 手写数字识别是机器学习和计算机视觉领域中的一个经典问题。Mnist数据集是一个包含大量手写数…

ACW石子合并-XMUOJ元素共鸣:唤醒神之眼 -区间DP

题目 思路 话不多说&#xff0c;直接上代码 代码 /* ACW石子合并-XMUOJ元素共鸣&#xff1a;唤醒神之眼 JinlongW-2024/05/25 区间DP 当i<j时&#xff0c;f[i][j]min(f[i][k]f[k][j]s[j]-s[i-1]) 当ij时&#xff0c;f[i][j]0 最终答案&#xff1a;f[1][n] *//* 区间DP…

[图解]SysML和EA建模住宅安全系统-07 to be块定义图

1 00:00:01,970 --> 00:00:05,040 入侵者这里有个∞ 2 00:00:05,530 --> 00:00:07,000 说明它下面已经有子图了 3 00:00:07,010 --> 00:00:08,080 我们看看里面子图 4 00:00:10,200 --> 00:00:17,000 这里&#xff0c;我们看位置 5 00:00:19,030 --> 00:00:…

BWVS 靶场测试

一、PHP弱类型 is_numeric() 输入&#xff1a;127.0.0.1/BWVS/bug/php/code.php # 1、源代码分析 如果num不是数字&#xff0c;那么就输出num&#xff0c;同时如果num1&#xff0c;就输出flag。即num要是字符串又要是数字 # 2、函数分析&#xff1a; is_numeric()函数&…

一文通晓mysql

目录 1.mysql在centos7环境上的安装 2.数据库基础 1. 什么是数据库 2.基本认识 3.库的操作 1.创建数据库 2.查看数据库列表 3.删除数据库 4.修改数据库 5.库的备份与修复 4.表的操作 1.创建表 2.查看表 3.修改表 修改表名 给表增加属性。 修改表中的某个属性&…

Android Gradle开发、应用、插件发布(六)—实现打包自动复制文件插件

1. 前言 项目中遇到了一个问题 : 其中一个模块MyLibrary的assets文件夹中&#xff0c;需要存放很多文件(每个文件对应一个功能)。 这样导致的问题是MyLibrary打出的这个aar包体积特别大。 如果把MyLibrary严谨地拆解成若干个Module又比较费时&#xff0c;对于现在业务现状来…

MFC密码对话框之间数据传送实例(源码下载)

新建一个login工程项目对话框&#xff0c;主对话框IDD_LOGIN_DIALOG中一个显示按钮IDC_BUTTON1、一个密码按钮IDC_BUTTON2。添加一个密码对话框IDD_DIALOG1&#xff0c;添加类password&#xff0c;在对话框中添加一个编辑框IDC_EDIT1、一个确定按钮IDC_BUTTON1。 程序功能&…

「数据结构」队列

目录 队列的基本概念 队列的实现 头文件queue.h 实现函数接口 1.初始化和销毁 2.出队列和入队列 3.获取队头元素和队尾元素 4.队列长度判空 后记 前言 欢迎大家来到小鸥的博客~ 个人主页&#xff1a;海盗猫鸥 本篇专题&#xff1a;数据结构 多谢大家的支持啦&#xff…

存储+调优:存储-memcached

存储调优&#xff1a;存储-memcached 什么是memcached? 高性能的分布式内存缓存服务器。通过缓存数据库的查询结果&#xff0c;减少数据库访问次数&#xff0c;以提高动态Web应用的速度、提高可扩展性。 在memcached中存什么&#xff1f; 尽快被保存 访问频率高 1.数据保…

web前端框架设计第十课-组件

web前端框架设计第十课-组件 一.预习笔记 组件&#xff1a;Vue最强大的功能之一 1.局部组件注册 注意事项&#xff1a;template标签中只能有一个根元素 2.全局组件的注册 注意事项&#xff1a;组件名的大小写需要注意&#xff08;实践&#xff09; 3.案例&#xff08;查询框…

【计算机毕业设计】030英语学习交流平台微信小程序

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

在Github上寻找安装ROS软件包

1、创建一个功能包 并下载git sudo apt install git 2、找到自己想在github上要克隆的包 复制此链接 3、克隆到本地 git clone 链接 4.scripts目录用于放置脚本文件和python程序 使用脚本安装编译需要的依赖库 5、下载完成后&#xff0c;在~catkin_ws目录下运行catkin_make进…

DFS:解决二叉树问题

文章目录 了解DFS1.计算布尔二叉树的值思路代码展示 2.求根节点到叶节点数字之和思路代码展示 3.二叉树剪枝思路代码展示 4.验证二叉搜索树思路分析代码展示 5.二叉搜索树中第k小元素思路&#xff1a;代码展示 6.二叉树的所有路径思路分析代码展示 总结 了解DFS 所谓DFS就是就…

python数据类型之元组、集合和字典

目录 0.三者主要作用 1.元组 元组特点 创建元组 元组解包 可变和不可变元素元组 2.集合 集合特点 创建集合 集合元素要求 集合方法 访问与修改 子集和超集 相等性判断 集合运算 不可变集合 3.字典 字典特点 字典创建和常见操作 字典内置方法 pprin模块 0.…

详解http协议

什么是HTTP协议 定义 Http协议即超文本传送协议 (HTTP-Hypertext transfer protocol) 。 它定义了浏览器&#xff08;即万维网客户进程&#xff09;怎样向万维网服务器请求万维网文档&#xff0c;以及服务器怎样把文档传送给浏览器。从层次的角度看&#xff0c;HTTP是面向&am…

缩进在编程中的重要性及正确使用方法

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 前言 缩进不当引发的问题 缩进的正确使用方法 缩进错误的调试与修复 总结 前言 在编程世…