
Doris单节点部署
本文最后更新于 2024-02-29,文章内容可能已经过时。
部署前准备:
1.修改Cent1OS最大句柄数:
如果不修改这个句柄数大于等于60000,回头启动doris的be节点的时候就会报如下的错
如果报错:Please set the maximum number of open file descriptors to be 65536 using 'ulimit -n 65536'.
代表句柄数没有生效,需要临时设置或者重启电脑
编辑文件limits.conf:
vim /etc/security/limits.conf
在文件最后添加下面几行信息(注意* 也要复制进去)
* soft nofile 65536
* hard nofile 65536
* soft nproc 65536
* hard nproc 65536
2.修改VMA(虚拟内存区域)的数量:
编辑文件sysctl.conf:
vim /etc/sysctl.conf
在文件最后一行添加
vm.max_map_count=2000000
输入以下命令使其永久生效:
让他永久生效
sysctl -p
检查是否生效
sysctl -a|grep vm.max_map_count
3.时钟同步
Doris 的元数据要求时间精度要小于5000ms,所以所有集群所有机器要进行时钟同步,避免因为时钟问题引发的元数据不一致导致服务出现异常。
安装时间同步软件ntpdate:
yum install ntpdate -y
开始同步时间:
ntpdate ntp.sjtu.edu.cn
美国标准技术院时间服务器:time.nist.gov(192.43.244.18)
上海交通大学网络中心NTP服务器地址:ntp.sjtu.edu.cn(202.120.2.101)
中国国家授时中心服务器地址:cn.pool.ntp.org(210.72.145.44)
# 将当前时间写入bios,这样才能永久生效不变,不然reboot后还会恢复到原来的时间
clock -w
注意事项:
1. FE 的磁盘空间主要用于存储元数据,包括日志和 image。通常从几百 MB 到几个GB 不等。
2. BE 的磁盘空间主要用于存放用户数据,总磁盘空间按用户总数据量* 3(3 副本)计算,然后再预留额外 40%的空间用作后台 compaction 以及一些中间数据的存放。
3. 一台机器上可以部署多个 BE 实例,但是只能部署一个 FE。如果需要 3 副本数 据,那么至少需要 3 台机器各部署一个 BE 实例(而不是 1 台机器部署 3 个 BE 实例)。多 个 FE 所在服务器的时钟必须保持一致(允许最多 5 秒的时钟偏差)
4. 测试环境也可以仅适用一个 BE 进行测试。实际生产环境,BE 实例数量直接决定了整体查询延迟。
5. 所有部署节点关闭 Swap。
6. FE 节点数据至少为 1(1 个 Follower)。当部署 1 个 Follower 和 1 个 Observer 时,可以实现读高可用。当部署 3 个 Follower 时,可以实现读写高可用(HA)。
7. Follower 的数量必须为奇数,Observer 数量随意。
8. 根据以往经验,当集群可用性要求很高时(比如提供在线业务),可以部署 3 个Follower 和 1-3 个 Observer。如果是离线业务,建议部署 1 个 Follower 和 1-3 个 Observer。
9. Broker 是用于访问外部数据源(如 HDFS)的进程。通常,在每台机器上部署一个 broker 实例即可。
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 如果有一天
音乐天地