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集群中。
先前Apache Doris需要自己手动编译源码进行部署安装,现在Apache Doris官方提供了对应编译好的安装包,可以直接下载进行部署。Apache Doris 下载地址为:https://doris.apache.org/zh-CN/download/。这里我们下载最新1.2.1版本。
由于 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 目录下。
根据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 | ★ | ★ | ★ |
首先在部署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是否已经关闭。
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。
下面我们首先在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。
# 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信息:
通过以上可以看到在node1上启动的Follower成为Leader。
6.停止FE
如果想要停止FE,可以指定如下命令,这里不再进行演示。
#进入/software/doris-1.2.1/apache-doris-fe/bin目录,执行如下命令: ./stop_fe.sh
上一篇:什么是MyBatis