Skip to content

单机部署Doris

事情是这样的,当我写了一篇《五分钟部署Doris的极简部署流程》后,有很多同学向我反馈说Docker无法访问。怎么说呢,这是一个无法言说的事实(科学上网可以减少信息差)。但是对于同学们无限的求知欲,怎么可以让一个小小的Docker给难倒呢。

本文将给大家介绍不依赖Docker,如何单机完成部署Doris。

环境准备

由于是单机部署,大家的开发环境可能就会更复杂多样。如果在部署过程中遇到问题,还需要静下心来慢慢尝试解决。

  • 系统

同学们可以选择一个X86-64 上的主流 Linux 环境,推荐 CentOS 7.1 或者 Ubuntu 16.04 以上版本。

我的开发设备是Windows系统,需要用到Linux环境,我则使用了Windows的子系统(WSL2)。建议所有使用Windows的同学都熟练掌握使用WSL的方法,掌握后,你会发现好像打开了另外一个奇妙的世界。

如何启用WSL同学们可以自动搜索解决。

使用CMD进入WSL环境:

同学们可以看到,我使用的是Ubuntu 20.04.6 LTS

  • Java

Doris需要Java运行环境,使用以下命令验证是否安装Java:

sh
java -version

如果还没有安装Java,可以选择对应的系统进行安装

关注:遇码,回复java,获取java下载地址。

Doris准备

下载Doris安装包

sh
wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-2.0.3-bin-x64.tar.gz

解压安装包

sh
tar zxf apache-doris-2.0.3-bin-x64.tar.gz

为了便于使用,也为了便于讲解,把解压后的目录重命名

sh
mv apache-doris-2.0.3-bin-x64 apache-doris

安装Doris

能做到这里的同学真的已经很棒了,你已经成功了一大半了,再接再厉吧。

再重复一遍Doris的整体架构 Doris只有两类进程:

  • Frontend(FE)

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

  • Backend(BE)

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

接下来我们要做的事情就是分别对FE和BE进行配置并启动。

不管是配置FE还是配置BE,我们需要做的事情都非常简单,就是在FE和BE的配置文件中添加JAVA_HOME,用来告诉Doris你的Java环境的路径在哪里。

获取JAVA_HOME

获取JAVA_HOME的路径(安装Java的时候都会让配置,没有配置的话直接用Java的安装路径也可以)

sh
echo $JAVA_HOME

可以复制该路径,后面会用到。

配置FE

FE的配置文件的路径为apache-doris/fe/conf/fe.conf,使用vim编辑配置文件

sh
vim apache-doris/fe/conf/fe.conf

在配置文件中添加JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre配置,其它配置项可以暂时忽略。

配置BE

BE的配置文件的路径为apache-doris/be/conf/be.conf,使用vim编辑配置文件

sh
vim apache-doris/be/conf/be.conf

在配置文件中添加JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre配置,其它配置项可以暂时忽略。

启动Doris

分别启动FE和BE。

需要注意,当前进入apache-doris目录下。

启动FE
sh
./fe/bin/start_fe.sh --daemon

如果不出意外的话,FE就已经正常启动了。但是意外又总是与我们相伴,给我们开着各种各样的玩笑。

如果同学和我一样,遇到了以下类似的错误,不要慌张,你只需要按照提示执行命令即可解决。

启动BE
sh
./be/bin/start_be.sh --daemon

同样地,启动BE也可能会出现一些错误。还是按照提供执行命令即可解决。

至此,Doris就算已经部署完成了,接下来我们需要使用Doris了。

使用Doris

我们使用Mysql客户端连接Doris FE,没有安装Mysql客户端的需要自行搜索解决。

sh
mysql -u root -P 9030 -h 127.0.0.1

  • root 用户是 Doris 内置的超级管理员用户
  • -P:这里是我们连接 Doris 的查询端口,默认端口是 9030,对应的是 fe.conf 里的 query_port
  • -h:这里是我们连接的 FE IP 地址,如果你的客户端和 FE 安装在同一个节点可以使用 127.0.0.1。

把BE节点添加到集群

# ALTER SYSTEM ADD BACKEND "be_host_ip:heartbeat_service_port";
ALTER SYSTEM ADD BACKEND "127.0.0.1:9050";

  • be_host_ip:要添加 BE 的 IP 地址
  • heartbeat_service_port:要添加 BE 的心跳上报端口,可以查看 be.conf 里的 heartbeat_service_port,默认是 9050。

修改rootadmin的密码为123456(可以是任意密码)

sh
SET PASSWORD FOR 'root' = PASSWORD('123456');

SET PASSWORD FOR 'admin' = PASSWORD('123456');

验证

访问Doris Web UIhttp://127.0.0.1:8030/,使用用户名admin,密码123456登录。

至此,我们就可以愉快地把玩Doris了。

停止Doris

如果需要的话,也可以用以下命令停止Doris。

停止FE

sh
./fe/bin/stop_fe.sh

停止BE

sh
./be/bin/stop_be.sh

进阶

到现在,已经为大家介绍了两种快速体验Doris的部署方式,同学们可以根据自身的情况选择适合自己的部署方式。之所以花这么多时间讲解Doris的部署,就是不想同学们卡在第一步就放弃对Doris的学习了。

接下来同学们就可以安心学习Doris的具体内容啦。你可以关注:遇码,回复doris,获取Doris官方文档。

遇码MeetCoding 开源技术社区