相关推荐recommended
Apache Doris (四) :Doris分布式部署(一) FE部署及启动
作者:mmseoamin日期:2023-12-21

目录

1.Apache Doris下载

2.节点划分

3. 节点配置

​​​​​​​4. FE部署及启动

​​​​​


进入正文之前,欢迎订阅专题、对博文点赞、评论、收藏,关注IT贫道,获取高质量博客内容!


部署Apache Doris时需要分别部署FE、BE、Broker。然后再建立FE,BE两者关系。

Apache Doris 中部署多FE的思路为先在一台节点上配置部署一个FE并启动,相当于是启动Doris服务,然后配置更多的FE节点,添加到Doris服务中给该Doris的FE进行扩容,最终形成多节点FE。FE又分为Leader、Follwer和Observer三种角色,多节点FE中首先启动的FE节点自动为Leader,部署完成一个FE节点后,按照集群划分将其他Follower和Observer节点加入到FE中即可。

部署BE时我们也需要部署FE完成后,然后配置BE各个节点并启动,通过对应命令将多个BE节点添加到Apache Doris集群中即可,即创建了FE、BE两者关系。

Broker的部署是可选的,如果需要从第三方存储系统导入数据,需要部署相应的 Broker,默认提供了读取 HDFS 、对象存储的 fs_broker。Borker以插件的形成独立于Doris集群,部署时也需部署完成FE和BE后,将各个Broker节点添加到 Doris集群中。

1.Apache Doris下载

先前Apache Doris需要自己手动编译源码进行部署安装,现在Apache Doris官方提供了对应编译好的安装包,可以直接下载进行部署。Apache Doris 下载地址为:https://doris.apache.org/zh-CN/download/。这里我们下载最新1.2.1版本。

Apache Doris (四) :Doris分布式部署(一) FE部署及启动,第1张

Apache Doris (四) :Doris分布式部署(一) FE部署及启动,第2张

由于 Apache 服务器文件大小限制,1.2 版本的二进制程序被分为三个包:

 

apache-doris-fe-1.2.1-bin-x86_64.tar.xz
apache-doris-be-1.2.1-bin-x86_64.tar.xz
apache-doris-dependencies-1.2.1-bin-x86_64.tar.xz

 其中新增的 apache-doris-dependencies 包含用于支持 JDBC 外表和 JAVA UDF 的jar包,以及 Broker 和 AuditLoader。下载后,需要将其中的 java-udf-jar-with-dependencies.jar 放到 be/lib 目录下。

2.节点划分

根据Doris官方建议,部署Doris时FE和BE分开部署,这里我们部署Doris集群时部署3个Follower(Leader和Follow统称为Follower)、2个Observer、3个BE、5个Broker,共使用5台节点完成,每个节点的使用4core和4G内存,角色和节点分布如下:

节点IP

节点名称

FE(Follower)

FE(Observer)

BE

Broker(可选)

192.168.179.4

node1

192.168.179.5

node2

192.168.179.6

node3

192.168.179.7

node4

192.168.179.8

node5

3. 节点配置

首先在部署Doris各个节点上按照如下步骤进行设置。

1. 设置文件句柄数

在node1~node5各个节点上配置/etc/security/limits.conf文件如下内容,设置系统最大打开文件句柄数:

# 打开limits.conf文件,vim /etc/security/limits.conf 
* soft nofile 65536
* hard nofile 65536

注意各个节点配置完成后,如果是ssh连接到各个节点需要重新打开新的ssh窗口生效或者重新启动机器生效。查看生效命令如下:

#查看可以打开最大文件描述符的数量,默认是1024
ulimit -n

2. 时间同步

在node1~node5各节点上进行时间同步。首选在各个节点上修改本地时区及安装ntp服务:

yum -y install ntp
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
/usr/sbin/ntpdate -u pool.ntp.org

然后设置定时任务自动同步时间,设置定时任务,每10分钟同步一次,配置/etc/crontab文件,实现自动执行任务。建议直接crontab -e 来写入定时任务。使用crontab -l 查看当前用户定时任务。

#各个节点执行 crontab -e 写入以下内容
*/10 * * * *  /usr/sbin/ntpdate -u pool.ntp.org >/dev/null 2>&1
#重启定时任务   
service crond restart
#查看日期
date

​​​​​​​​​​​​​​3. 关闭Swap分区

在node1~node5各个节点上关闭Swap分区。各个节点上修改/etc/fstab文件,注释掉带有swap的行。如下:

#注释掉swap 行 ,vim /etc/fstab
...
#/dev/mapper/centos-swap swap swap    defaults        0 0
...

以上配置完成后,需要重启机器生效,如果不想重启机器可以在各个节点上执行“swapoff  -a”临时关闭swap分区。执行后,可以通过“free -m”命令查看swap是否已经关闭。

Apache Doris (四) :Doris分布式部署(一) FE部署及启动,第3张

4. 调大单个进程的虚拟内存区域数量

BE 启动脚本会通过 /proc/sys/vm/max_map_count 检查数值是否大于200W,否则启动失败。只需要在部署BE的节点上设置“sysctl -w vm.max_map_count=2000000”调大即可,这里在node1~node5节点上都做设置。

#限制单个进程的虚拟内存区域数量(临时设置)
sysctl -w vm.max_map_count=2000000

 以上是临时设置,当节点重启后会失效,可以在/etc/sysctl.conf中加入vm.max_map_count=2000000做永久设置。在node1~node5节点上配置/etc/sysctl.conf进行永久设置:

#vim /etc/sysctl.conf (追加参数,永久设置)
...
vm.max_map_count=2000000
...

设置成功后,重启机器,可以通过cat /proc/sys/vm/max_map_count 命令检查此值为200W。

​​​​​​​​​​​​​​4. FE部署及启动

下面我们首先在node1节点上部署Doris FE,然后再对Doris进行FE扩容,最终形成3台节点的FE。

1. 创建doris部署目录

在node1~node5节点上创建“/software/doris-1.2.1”方便后续操作。

#各个节点创建目录/software/doris-1.2.1
mkdir -p /software/doris-1.2.1

​​​​​​​2.上传安装包并解压

在node1节点上传“apache-doris-fe-1.2.1-bin-x86_64.tar.xz”安装包到doris-1.2.1目录并解压。

#在node1节点上进行解压
[root@node1 ~]# tar -xvf /software/doris-1.2.1/apache-doris-fe-1.2.1-bin-x86_64.tar.xz 
#node1节点上对解压的文件进行改名
[root@node1 ~]# cd /software/doris-1.2.1/&&mv apache-doris-fe-1.2.1-bin-x86_64 apache-doris-fe

​​​​​​​​​​​​​​3. 修改fe.conf配置文件

在node1节点上修改/software/doris-1.2.1/apache-doris-fe/conf/fe.conf配置文件,这里我们主要修改两个参数:priority_networks 及 meta_dir。

  • priority_networks:指定FE唯一的IP地址,必须配置,尤其当节点有多个网卡时要配置正确。
  • meta_dir:元数据目录,可以不配置,默认是Doris FE安装目录下的doris-meta目录,如果指定其他目录需要提前创建好目录。在生成环境中建议目录放在单独的磁盘上。
    # vim /software/doris-1.2.1/apache-doris-fe/conf/fe.conf
    ...
    meta_dir = /software/doris-1.2.1/apache-doris-fe/doris-meta
    priority_networks = 192.168.179.4/24 #注意不同节点IP配置不同
    ...

    ​​​​​​​​​​​​​​4. 启动FE

    在node1节点FE安装目录下执行如下命令,完成FE的启动。

    #启动FE 
    [root@node1 ~]# cd /software/doris-1.2.1/apache-doris-fe/bin
    [root@node1 ~]# ./start_fe.sh --daemon

    FE进程启动进入后台执行,日志默认存放在 FE解压目录log/ 下。如启动失败,可以通过查看 log/fe.log 或者 log/fe.out 查看错误信息。

    ​​​​​​​5. 访问 FE

    启动Doris FE后,我们可以通过Doris FE 提供的Web UI 来检查是否启动成功,在浏览器中输入:http://node1:8030,看到如下页面代表FE启动成功。用户名为root,密码为空。登录FE后可以查看frontends来查看FOLLOWER信息:

    Apache Doris (四) :Doris分布式部署(一) FE部署及启动,第4张

     Apache Doris (四) :Doris分布式部署(一) FE部署及启动,第5张

     

    通过以上可以看到在node1上启动的Follower成为Leader。

    6.停止FE

    如果想要停止FE,可以指定如下命令,这里不再进行演示。

    #进入/software/doris-1.2.1/apache-doris-fe/bin目录,执行如下命令:
    ./stop_fe.sh

    ​​​​​