Doris集群部署

该文详细介绍了ApacheDoris的默认端口号设置,集群部署过程,包括FE(LEADER,FOLLOWER,OBSERVER)和BE节点的配置与启动,以及Broker的可选部署。同时,文章提供了扩容和缩容FE和BE节点的步骤,强调了在操作过程中的注意事项,如软硬限制、元数据存储位置和端口配置等。
摘要由CSDN通过智能技术生成

一、Doris默认端口号

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

二、集群部署

2.1 整体架构

主机1主机2主机3
FE(LEADER)FE(FOLLOWER)FE(OBSERVER)
BEBEBE
BROKERBROKERBROKER
注意:生产环境建议FE和BE分开部署 

 2.2 部署单个doris

1)下载doris二进制包到三个主机上

wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-1.2.4.1-bin-x86_64.tar.xz

2)修改主机可打开文件数

vi /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535

* soft nproc 65535

* hard nproc 65535

注意:*代表允许所有用户操作,soft和hard代表软限制和硬限制,软限制从数值上要小于等于硬限制,nofile表示打开文件,nprox表示打开的进程数

* soft nofile 65535表示允许所有用户操作,当打开文件数大于软限制65535时,会给与警告,当超过了硬限制时,会报错。

 3)部署fe节点

修改配置文件fe.conf

  1. 指定元数据存放位置(启动前要创建目录),meta_dir默认值${DORIS_HOME}/doris-meta
  2. fe.conf 中 JAVA_OPTS 默认 java 最大堆内存为 4GB,建议生产环境调整至 8G 以上

  3. 修改绑定端口priority_networks=192.168.137.128/24(配置自己主机的ip地址)

  4. 启动fe bin/start_fe.sh --daemon

  5. 使用jps -l 查看是否启动成功

4)部署be节点

修改配置文件be.conf

  1. 配置 storage_root_path:数据存放目录。默认在be/storage下,需要预创建,可以指定多个,使用分号分隔
  2. 修改绑定端口priority_networks=192.168.137.128/24(配置自己主机的ip地址)
  3. 启动be bin/start_be.sh --daemon

 5)在FE中添加所有BE节点

  1. 使用 mysql-client(下载MySQL 5.7) 连接到 FE
  2. 执行命令 ALTER SYSTEM ADD BACKEND "be_host:heartbeat-service_port";
  3. 查看BE SHOW BACKENDS\G 

6)部署broker(可选) 

  1. 启动 Broker bin/start_broker.sh --daemon
  2. 添加 Broker 使用 mysql-client 连接启动的 FE 命令: ALTER SYSTEM ADD BROKER broker_name "broker_host1:broker_ipc_port1","broker_host2:broker_ipc_port2",...;
  3. 查看 Broker 状态 SHOW PROC "/brokers";

三、扩容和缩容

1)扩容fe

  1. 使用 mysql-client(下载MySQL 5.7) 连接到 FE,只有一台FE时,默认启动是leader

  2. 添加FE(FOLLOWER )节点 ALTER SYSTEM ADD FOLLOWER "fe_host:edit_log_port" 

  3. 添加FE(OBSERVER) 节点  ALTER SYSTEM ADD OBSERVER "fe_host:edit_log_port" 

  4. 启动FE节点 bin/start_fe.sh --daemon --helper leader-ip:port --daemon,这里只有第一次启动需要加--helper leader-ip:port,来指定leader节点的ip和端口号,后面就不需要了

2)删除fe节点

ALTER SYSTEM DROP FOLLER[OBSERVER] "fe_host:edit_log_port"

注意:Follower FE(包括 Master)的数量必须为奇数

1)扩容

ALTER SYSTEM ADD BACKEND "be_host:be_heartbeat_service_port";
2)缩容

(1)ALTER SYSTEM DROP BACKEND "be_host:be_heartbeat_service_port";(不推荐)

(2)ALTER SYSTEM DECOMMISSION BACKEND "be_host:be_heartbeat_service_port";

注意:推荐第二种,它会在删除之前,将be数据迁移到其他节点

 1)扩容broker

ALTER SYSTEM ADD BROKER broker_name "broker_host:broker_ipc_port";

2)缩容broker

SYSTEM DROP BROKER broker_name "broker_host:broker_ipc_port";

ALTER SYSTEM DROP ALL BROKER broker_name;

### 关于在云服务上安装和部署Doris #### 环境需求与推荐配置 为了成功部署Doris,在硬件和软件环境中需考虑多个因素。对于大多数云计算平台而言,确保有足够的计算资源和支持必要的依赖项至关重要[^1]。 #### 使用预置环境简化部署过程 考虑到手动配置运行环境可能带来的复杂性和时间成本,可以利用官方提供的Docker镜像来加速这一流程。此方法不仅包含了启动Doris所需的一切组件(例如JDK),而且通过简单的`docker pull`指令就能获取最新版本的构建工具链,极大地方便了用户的初次尝试或测试用途[^2]。 ```bash docker pull apache/doris:build-env-ldb-toolchain-latest ``` #### 部署模式的选择 针对不同规模的应用场景,可以选择适合自己的集群扩展策略;而对于具体操作,则应遵循最佳实践以避免潜在的风险。值得注意的是,虽然可以通过调整操作系统内核参数如vm.swappiness试图优化性能表现,但这并不是被广泛认可的做法,尤其是在多变的云端环境下更应该谨慎对待此类改动[^3]。 #### Kubernetes上的自动化部署方案 如果目标是在Kubernetes集群部署Doris实例,那么借助kubectl命令行工具配合YAML文件定义的服务描述符将是实现自动化的有效途径之一。下面展示了创建前端(FE)节点、后端(BE)存储以及Operator控制器所需的几个关键步骤[^4]: ```yaml # 假设这些是预先准备好的资源配置文件路径 fe_st_yaml="path/to/doris-fe-st.yaml" fe_pv_yaml="path/to/doris-fe-pv.yaml" be_st_yaml="path/to/doris-be-st.yaml" be_pv_yaml="path/to/doris-be-pv.yaml" operator_yaml="path/to/operator.yaml" cluster_yaml="path/to/doriscluster.yaml" # 应用上述配置到名为"doris"命名空间下的K8s集群中 kubectl apply -f $fe_st_yaml kubectl apply -f $fe_pv_yaml kubectl apply -f $be_st_yaml kubectl apply -f $be_pv_yaml kubectl apply -f $operator_yaml -n doris kubectl apply -f $cluster_yaml -n doris ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值