[新手教程]使用VMware搭建简易DorisDB学习环境(三)

在前两篇教程中,我们已经对doris01、doris02和doris03三台虚拟机完成了DorisDB标准版所需的配置,接下来,我们开始手动部署Doris集群,也即该新手教程的最后一篇:

三、虚拟机下CentOS7部署DorisDB标准版

一)首次部署
1、使用官方给出的下载链接下载最新版的DorisDB,以DorisDB-SE-1.13.1.tar.gz为例,打开谷歌浏览器,粘贴:
http://dorisdb-release.oss-cn-zhangjiakou.aliyuncs.com/DorisDB-SE-1.13.1.tar.gz?Expires=1615866363&OSSAccessKeyId=LTAI4GFYjbX9e7QmFnAAvkt8&Signature=LUoU%2FPtISQfjnGVwxXDzzrjiVVY%3D
浏览器将自动下载,该链接具有时效性,若链接失效,可联系官方人员获取。

2、将下载完成的部署包DorisDB-SE-1.13.1.tar.gz使用Xftp工具分别至doris01、doris02和doris03根目录,三台虚拟机ip在前篇中已配置为固定IP,分别为192.168.110.116、192.168.110.117、192.168.110.118:


3、因为当前有三台虚拟机系统,每台配置都比较低,我们不必考虑最佳性能,可以在doris01上部署FE FOLLOWER使其成为Leader,在doris02上部署FE令其作为OBSERVER,在doris03部署一个Broker方便后面学习数据导入。
同时,Doris使用数据模型时需要至少三个BE,我们就在doris01、doris02和doris03各部署一个BE。

下文所有指令都为桌面右键打开终端后执行,期间终端无需关闭:

4、针对doris01服务器
解压部署包:

tar -zxvf DorisDB-SE-1.13.1.tar.gz

根目录下新建dorisdb及fe、be文件夹:

mkdir -p dorisdb/fe
mkdir -p dorisdb/be

移动DorisDB-SE-1.13.1文件夹下fe文件夹和be文件夹到dorisdb对应目录:

mv DorisDB-SE-1.13.1/fe/* dorisdb/fe
mv DorisDB-SE-1.13.1/be/* dorisdb/be

因为虚拟机网卡通常有多个ip,在fe.conf中绑定ip:

vim dorisdb/fe/conf/fe.conf

编辑fe配置文件priority_networks参数,绑定ip,

priority_networks=192.168.110.116/24

如图:
02
保存退出。

在be.conf中绑定ip:

vim dorisdb/be/conf/be.conf

编辑be配置文件priority_networks参数,绑定ip,

priority_networks=192.168.110.116/24

如图:
03
保存退出。默认配置足以启动集群,后续熟悉后可以依据需求场景自行优化配置。

在fe目录中创建元数据目录:

mkdir -p dorisdb/fe/doris-meta

启动fe,首个启动的fe自动成为leader:

./dorisdb/fe/bin/start_fe.sh --daemon


使用doris01上安装好的mysql-client访问doris:

mysql -h 127.0.0.1 -P9030 -uroot


输入sql指令,查看FE状态:

SHOW PROC ‘/frontends’


IsMaster:判断是否为Leader

Alive:判断节点是否添加成功

5、接下来暂时对doris02服务器操作:

解压部署包:

tar -zxvf DorisDB-SE-1.13.1.tar.gz

根目录下新建dorisdb及fe、be文件夹:

mkdir -p dorisdb/fe
mkdir -p dorisdb/be

移动DorisDB-SE-1.13.1文件夹下fe文件夹和be文件夹到dorisdb对应目录:

mv DorisDB-SE-1.13.1/fe/* dorisdb/fe
mv DorisDB-SE-1.13.1/be/* dorisdb/be

因为虚拟机网卡通常有多个ip,在fe.conf中绑定ip:

vim dorisdb/fe/conf/fe.conf

编辑配置文件priority_networks参数,绑定ip,

priority_networks=192.168.110.117/24

如图:
07
保存退出。

在be.conf中绑定ip:

vim dorisdb/be/conf/be.conf

编辑be配置文件priority_networks参数,绑定ip,

priority_networks=192.168.110.117/24

如图:
08
保存退出。

在doris02的fe目录中也创建元数据目录:

mkdir -p dorisdb/fe/doris-meta

因为doris01上已有启动的fe,doris02的fe是作为observer。doris02的fe首次启动时需要指定doris01中的doris01作为helper(仅首次需要):

./dorisdb/fe/bin/start_fe.sh --helper 192.168.110.116:9010 --daemon

6、回到doris01服务器,使用sql命令添加doris02中fe的节点至集群,按照咱们的规划,将doris02的fe作为observer,sql为:

ALTER SYSTEM ADD OBSERVER “192.168.110.117:9010”;

如图:
10
执行完毕后再次执行下面语句来查看fe集群状态:

SHOW PROC ‘/frontends’


查看信息,Role: OBSERVER ,Alive:ture,证明doris02中的节点作为OBSERVER已添加成功。

7、对doris03服务器操作
解压部署包:

tar -zxvf DorisDB-SE-1.13.1.tar.gz

根目录下新建dorisdb及be、apache_hdfs_broker文件夹:

mkdir -p dorisdb/be
mkdir -p dorisdb/apache_hdfs_broker

移动DorisDB-SE-1.13.1文件夹下be文件夹和apache_hdfs_broker文件夹到dorisdb对应目录:

mv DorisDB-SE-1.13.1/be/* dorisdb/be
mv DorisDB-SE-1.13.1/apache_hdfs_broker/* dorisdb/apache_hdfs_broker

分别绑定be和broker的IP:

be中方法如上:

vim dorisdb/be/conf/be.conf

配置为:

priority_networks=192.168.110.118/24

broker中,

vim dorisdb/apache_hdfs_broker/conf/apache_hdfs_broker.conf


新增配置为:

priority_networks=192.168.110.118/24

如图:
13
8、回到doris01,不要动正在访问doris的终端窗口,在桌面用右键再打开终端。

先创建数据存放目录:

mkdir -p dorisdb/be/storage

启动be:

./dorisdb/be/bin/start_be.sh --daemon

14
切换到访问doris的mysql-client终端,输入sql,将该be加入集群:

ALTER SYSTEM ADD BACKEND “192.168.110.116:9050”;

15
查看be状态,确认添加成功:

SHOW PROC ‘/backends’\G


9、转到doris02服务器,先创建数据存放目录:

mkdir -p dorisdb/be/storage

启动be:

./dorisdb/be/bin/start_be.sh --daemon

回到doris01,使用sql,将doris02的be加入集群:

ALTER SYSTEM ADD BACKEND “192.168.110.117:9050”;

同样,用命令查询状态:

SHOW PROC ‘/backends’\G


10、转到doris03服务器,先创建数据存放目录:

mkdir -p dorisdb/be/storage

启动be:

./dorisdb/be/bin/start_be.sh --daemon

回到doris01,使用sql,将doris03的be加入集群:

ALTER SYSTEM ADD BACKEND “192.168.110.118:9050”;

继续,用命令查询状态:

SHOW PROC ‘/backends’\G

不再截图,alive:true即为成功加入集群。

11、再转到doris03,启动broker。

启动broker:

./dorisdb/apache_hdfs_broker/bin/start_broker.sh --daemon

回到doris01,输入sql将broker加入集群,假设doris03服务器的broker随意命名为broker03

ALTER SYSTEM ADD BROKER broker03 “192.168.110.118:8000”;

18
输入sql查看broker状态:

SHOW PROC “/brokers”\G

19

这样,一个简易的DorisDB标准版集群就部署完成啦,若想省点磁盘空间,可以清理安装包和安装包解压后的文件夹。

后续使用DorisDB,可以通过doris01服务器中的mysql-client客户端连接doris01 Leader FE实例的query_port(9030),DorisDB内置root用户,密码默认为空:

mysql -h fe_host -P9030 -u root

这时咱们也能发现,前文中咱们添加FE、BE和Broker节点,其实已经是通过mysql-client访问Doris来操作的。

进入Doris后,我们就可以建用户、建数据库、建表、导数据,进而开始一系列的上手学习。

附带一提,因为Doris非常友好的兼容MySQL,所以我们也可以使用Navicat for MySQL、SQLyog等数据库工具将DorisDB视为MySQL数据库直接链接(注意端口默认为9030),目前来看兼容性都还不错。

二)集群启停

1、集群搭建完成后,我们继续了解下集群的启停,首先是关闭,我们需要执行fe或be的bin中的stop_**.sh。关闭顺序无特别要求,按照习惯,通常先关闭所有be,再关闭observer fe,最后是Leader fe。Broker是无状态的进程,可以随意启停。

2、转到doris03,关闭doris03中的broker和be:

./dorisdb/be/bin/stop_be.sh
./dorisdb/apache_hdfs_broker/bin/stop_broker.sh

3、转到doris02,关闭be:

./dorisdb/be/bin/stop_be.sh

4、转到doris01,输入exit,退出mysql-client

关闭be:

./dorisdb/be/bin/stop_be.sh

3、转到doris02,关闭fe:

./dorisdb/fe/bin/stop_fe.sh

4、转到doris01,关闭fe:

./dorisdb/fe/bin/stop_fe.sh

集群关闭完成,可以重启三台服务器,或当前不重启直接练习启动,启动顺序也无特别要求,习惯先启动fe leader和fe observer(多节点启动的时候,建议先逐台启动Follower,然后启动Leader),再启动be和broker。broker在前面练习时如果不需要,那不启动也行。

doris01:

./dorisdb/fe/bin/start_fe.sh --daemon
./dorisdb/be/bin/start_be.sh --daemon

doris02:

./dorisdb/fe/bin/start_fe.sh --daemon
./dorisdb/be/bin/start_be.sh --daemon

doris03:

./dorisdb/be/bin/start_be.sh --daemon
./dorisdb/apache_hdfs_broker/bin/start_broker.sh --daemon

5、如果服务器异常关机,像服务没正常关闭时服务器突然挂掉,可以在重启服务器后分别删除fe、be等bin目录下的.pid文件,而后按照4中的指令正常启动Doris。

更多集群启停及升级操作,参考官方DorisDB文档的“8.2 集群管理”。

很枯燥但或许有人需要的新手教程到此结束,若在操作过程中出现什么问题或者文中有哪些地方表达不到位或有错误内容,欢迎沟通指正!

Enjoy the DorisDB!

3赞