下一代实时数据库:Apache Doris 【三】集群部署

简介: 下一代实时数据库:Apache Doris 【三】集群部署

2.3 安装要求

2.3.1 软硬件需求

  1. Linux 操作系统要求

linux 系统 版本

Centos 7.1 及以上

Ubuntu 16.04 及以上

2)软件需求

软件 版本

Java 1.8 及以上

GCC 4.8.2 及以上

3)开发测试环境

模块 CPU 内存 磁盘 网络 实例数量

Frontend 8 核+ 8GB SSD 或 SATA ,10GB+ * 千兆网卡 1

Backend 8 核+ 16GB SSD 或 SATA ,50GB+ * 千兆网卡 1-3*

4) 生产环境

模块 CPU 内存 磁盘 网络 实例数量

Frontend 16 核+ 64GB SSD 或 SATA,100GB+ * 万兆网卡 1-5*

Backend 16 核+ 64GB SSD 或 SATA,100GB+ * 万兆网卡 10- 100*

5)注意事项

(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 实例即可。

2.3.2 默认端口

当部署多个 FE 实例时,要保证 FE 的 http_port 配置相同。

部署前请确保各个端口在应有方向上的访问权限。

2.4 集群部署

主机 1 主机 2 主机 3
FE(LEADER) FE(FOLLOWER) FE(OBSERVER)
BE BE BE
BROKER BROKER BROKER

生产环境建议 FE 和 BE 分开。

2.4.1 创建目录并拷贝编译后的文件

1)创建目录并拷贝编译后的文件

mkdir /opt/module/apache-doris-0.15.0
cp   -r   /opt/software/apache-doris-0.15.0-incubating-src/output /opt/module/apache-doris-0.15.0

2)修改可打开文件数 (每个节点)

sudo vim /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535

重启永久生效, 也可以用 ulimit -n 65535 临时生效。

2.4.2 部署 FE 节点

1)创建 fe 元数据存储的目录

mkdir /opt/module/apache-doris-0.15.0/doris-meta

2)修改 fe 的配置文件

vim /opt/module/apache-doris-0.15.0/fe/conf/fe.conf
#配置文件中指定元数据路径:
meta_dir = /opt/module/apache-doris-0.15.0/doris-meta #修改绑定 ip (每台机器修改成自己的 ip)
priority_networks = 192.168.8.101/24

注意:

⚫ 生产环境强烈建议单独指定目录不要放在 Doris 安装目录下,最好是单独的磁盘(如果

有 SSD 最好)。

⚫ 如果机器有多个 ip, 比如内网外网, 虚拟机 docker 等, 需要进行 ip 绑定, 才能正确识 别。

⚫ JAVA_OPTS 默认 java 最大堆内存为 4GB,建议生产环境调整至 8G 以上。

3)启动 hadoop1 的 FE

/opt/module/apache-doris-0.15.0/fe/bin/start_fe.sh --daemon

2.4.3 配置 BE 节点

1)分发 BE

scp -r /opt/module/apache-doris-0.15.0/be hadoop2:/opt/module 
scp -r /opt/module/apache-doris-0.15.0/be hadoop3:/opt/module

2)创建 BE 数据存放目录 (每个节点)

mkdir /opt/module/apache-doris-0.15.0/doris-storage1
mkdir /opt/module/apache-doris-0.15.0/doris-storage2

2)创建 BE 数据存放目录 (每个节点)

3)修改 BE 的配置文件 (每个节点)

vim /opt/module/apache-doris-0.15.0/be/conf/be.conf
#配置文件中指定数据存放路径:
storage_root_path     =     /opt/module/apache-doris-0.15.0/doris- storage1;/opt/module/apache-doris-0.15.0/doris-storage2
#修改绑定 ip (每台机器修改成自己的 ip)
priority_networks = 192.168.8.101/24

注意:

⚫ storage_root_path 默认在 be/storage 下,需要手动创建该目录。多个路径之间使用英文状

态的分号;分隔(最后一个目录后不要加) 。

⚫ 可以通过路径区别存储目录的介质, HDD 或 SSD。可以添加容量限制在每个路径的末

尾,通过英文状态逗号,隔开,如:

storage_root_path=/home/disk1/doris.HDD,50;/home/disk2/doris.SSD, 10;/home/disk2/doris

说明:

/home/disk1/doris.HDD,50,表示存储限制为 50GB ,HDD;

/home/disk2/doris.SSD,10,存储限制为 10GB ,SSD;

/home/disk2/doris,存储限制为磁盘最大容量, 默认为 HDD

⚫ 如果机器有多个 IP, 比如内网外网, 虚拟机 docker 等, 需要进行 IP 绑定,才能正确识 别。

2.4.4 在 FE 中添加所有 BE 节点

BE 节点需要先在 FE 中添加,才可加入集群。可以使用 mysql-client 连接到 FE。 1)安装 MySQL Client

(1) 创建目录

mkdir /opt/software/mysql-client/

(2) 上传相关以下三个 rpm 包到/opt/software/mysql-client/

➢ mysql-community-client-5.7.28- 1.el7.x86_64.rpm

➢ mysql-community-common-5.7.28- 1.el7.x86_64.rpm

➢ mysql-community-libs-5.7.28- 1.el7.x86_64.rpm

(3) 检查当前系统是否安装过 MySQL

sudo rpm -qa |grep mariadb
#如果存在,先卸载
sudo rpm -e --nodeps mariadb mariadb-libs mariadb-server

(4) 安装

rpm -ivh /opt/software/mysql-client/*

2)使用 MySQL Client 连接 FE

mysql -h hadoop1 -P 9030 -uroot

默认 root 无密码, 通过以下命令修改 root 密码。

SET PASSWORD FOR 'root' = PASSWORD('000000');

3)添加 BE

ALTER SYSTEM ADD BACKEND "hadoop1:9050";
ALTER SYSTEM ADD BACKEND "hadoop2:9050";
ALTER SYSTEM ADD BACKEND "hadoop3:9050";

4)查看 BE 状态

SHOW PROC '/backends';

2.4.5 启动 BE

1)启动 BE (每个节点)

/opt/module/apache-doris-0.15.0/be/bin/start_be.sh --daemon

2)查看 BE 状态

mysql -h hadoop1 -P 9030 -uroot -p
SHOW PROC '/backends';

Alive 为 true 表示该 BE 节点存活。

2.4.6 部署 FS_Broker (可选)

Broker 以插件的形式, 独立于 Doris 部署。如果需要从第三方存储系统导入数据, 需要 部署相应的 Broker,默认提供了读取 HDFS、百度云 BOS 及 Amazon S3 的 fs_broker 。 fs_broker 是无状态的,建议每一个 FE 和 BE 节点都部署一个 Broker。

1)编译 FS_BROKER 并拷贝文件

(1) 进入源码目录下的 fs_brokers 目录, 使用 sh build.sh 进行编译

(2) 拷贝源码 fs_broker 的 output 目录下的相应 Broker 目录到需要部署的所有节点 上,改名为: apache_hdfs_broker。建议和 BE 或者 FE 目录保持同级。

方法同 2.2。

2)启动 Broker

/opt/module/apache-doris-                             0.15.0/apache_hdfs_broker/bin/start_broker.sh --daemon

3)添加 Broker

要让 Doris 的 FE 和 BE 知道 Broker 在哪些节点上,通过 sql 命令添加 Broker 节 点列表。

(1) 使用 mysql-client 连接启动的 FE,执行以下命令:

mysql -h hadoop1 -P 9030 -uroot -p
ALTER        SYSTEM        ADD        BROKER        broker_name
"hadoop1:8000","hadoop2:8000","hadoop3:8000";

其中 broker_host 为 Broker 所在节点 ip ;broker_ipc_port 在 Broker 配置文件中的

conf/apache_hdfs_broker.conf。

4)查看 Broker 状态

使用 mysql-client 连接任一已启动的 FE,执行以下命令查看 Broker 状态:

SHOW PROC "/brokers";

注: 在生产环境中, 所有实例都应使用守护进程启动, 以保证进程退出后, 会被自动拉 起, 如 Supervisor (opens new window) 。如需使用守护进程启动, 在 0.9.0 及之前版本中,

需要修改各个 start_xx.sh 脚本,去掉最后的 & 符号。从 0.10.0 版本开始,直接调用 sh start_xx.sh 启动即可。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
11月前
|
消息中间件 OLAP Kafka
Apache Doris 实时更新技术揭秘:为何在 OLAP 领域表现卓越?
Apache Doris 为何在 OLAP 领域表现卓越?凭借其主键模型、数据延迟、查询性能、并发处理、易用性等多方面特性的表现,在分析领域展现了独特的实时更新能力。
862 9
|
10月前
|
存储 自然语言处理 分布式计算
Apache Doris 3.1 正式发布:半结构化分析全面升级,湖仓一体能力再跃新高
Apache Doris 3.1 正式发布!全面升级半结构化分析,支持 VARIANT 稀疏列与模板化 Schema,提升湖仓一体能力,增强 Iceberg/Paimon 集成,优化存储引擎与查询性能,助力高效数据分析。
1145 4
Apache Doris 3.1 正式发布:半结构化分析全面升级,湖仓一体能力再跃新高
|
11月前
|
存储 分布式计算 Apache
湖仓一体:小米集团基于 Apache Doris + Apache Paimon 实现 6 倍性能飞跃
小米通过将 Apache Doris(数据库)与 Apache Paimon(数据湖)深度融合,不仅解决了数据湖分析的性能瓶颈,更实现了 “1+1>2” 的协同效应。在这些实践下,小米在湖仓数据分析场景下获得了可观的业务收益。
1607 9
湖仓一体:小米集团基于 Apache Doris + Apache Paimon 实现 6 倍性能飞跃
|
11月前
|
人工智能 运维 监控
智能运维与数据治理:基于 Apache Doris 的 Data Agent 解决方案
本文基于 Apache Doris 数据运维治理 Agent 展开讨论,如何让 AI 成为 Doris 数据运维工程师和数据治理专家的智能助手,并在某些场景下实现对人工操作的全面替代。这种变革不仅仅是技术层面的进步,更是数据运维治理思维方式的根本性转变:从“被动响应”到“主动预防”,从“人工判断”到“智能决策”,从“孤立处理”到“协同治理”。
1663 11
智能运维与数据治理:基于 Apache Doris 的 Data Agent 解决方案
|
10月前
|
SQL 人工智能 数据挖掘
Apache Doris 4.0 AI 能力揭秘(二):为企业级应用而生的 AI 函数设计与实践
Apache Doris 4.0 原生集成 LLM 函数,将大语言模型能力深度融入 SQL 引擎,实现文本处理智能化与数据分析一体化。通过十大函数,支持智能客服、内容分析、金融风控等场景,提升实时决策效率。采用资源池化管理,保障数据一致性,降低传输开销,毫秒级完成 AI 分析。结合缓存复用、并行执行与权限控制,兼顾性能、成本与安全,推动数据库向 AI 原生演进。
1012 0
Apache Doris 4.0 AI 能力揭秘(二):为企业级应用而生的 AI 函数设计与实践
|
11月前
|
SQL 存储 JSON
Apache Doris 2.1.10 版本正式发布
亲爱的社区小伙伴们,Apache Doris 2.1.10 版本已正式发布。2.1.10 版本对湖仓一体、半结构化数据类型、查询优化器、执行引擎、存储管理进行了若干改进优化。欢迎大家下载使用。
474 5
|
11月前
|
人工智能 自然语言处理 数据挖掘
Apache Doris 4.0 AI 能力揭秘(一):AI 函数之 LLM 函数介绍
在即将发布的 Apache Doris 4.0 版本中,我们正式引入了一系列 LLM 函数,将前沿的 AI 能力与日常的数据分析相结合,无论是精准提取文本信息,还是对评论进行情感分类,亦或生成精炼的文本摘要,皆可在数据库内部无缝完成。
693 0
Apache Doris 4.0 AI 能力揭秘(一):AI 函数之 LLM 函数介绍
|
10月前
|
缓存 关系型数据库 BI
使用MYSQL Report分析数据库性能(下)
使用MYSQL Report分析数据库性能
588 158
|
10月前
|
关系型数据库 MySQL 数据库
自建数据库如何迁移至RDS MySQL实例
数据库迁移是一项复杂且耗时的工程,需考虑数据安全、完整性及业务中断影响。使用阿里云数据传输服务DTS,可快速、平滑完成迁移任务,将应用停机时间降至分钟级。您还可通过全量备份自建数据库并恢复至RDS MySQL实例,实现间接迁移上云。
|
10月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1568 152

热门文章

最新文章

推荐镜像

更多