一、Doris默认端口号
注意:当部署多个FE实例时,要保证FE的http_port配置相同。
二、集群部署
2.1 整体架构
主机1 主机2 主机3 FE(LEADER) FE(FOLLOWER) FE(OBSERVER) BE BE BE BROKER BROKER BROKER
注意:生产环境建议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
- 指定元数据存放位置(启动前要创建目录),meta_dir默认值${DORIS_HOME}/doris-meta
fe.conf 中 JAVA_OPTS 默认 java 最大堆内存为 4GB,建议生产环境调整至 8G 以上。
修改绑定端口priority_networks=192.168.137.128/24(配置自己主机的ip地址)
启动fe bin/start_fe.sh --daemon
使用jps -l 查看是否启动成功
4)部署be节点
修改配置文件be.conf
- 配置
storage_root_path
:数据存放目录。默认在be/storage下,需要预创建,可以指定多个,使用分号分隔- 修改绑定端口priority_networks=192.168.137.128/24(配置自己主机的ip地址)
- 启动be bin/start_be.sh --daemon
5)在FE中添加所有BE节点
- 使用 mysql-client(下载MySQL 5.7) 连接到 FE
- 执行命令 ALTER SYSTEM ADD BACKEND "be_host:heartbeat-service_port";
- 查看BE SHOW BACKENDS\G
6)部署broker(可选)
- 启动 Broker bin/start_broker.sh --daemon
- 添加 Broker 使用 mysql-client 连接启动的 FE 命令: ALTER SYSTEM ADD BROKER broker_name "broker_host1:broker_ipc_port1","broker_host2:broker_ipc_port2",...;
- 查看 Broker 状态 SHOW PROC "/brokers";
三、扩容和缩容
1)扩容fe
使用 mysql-client(下载MySQL 5.7) 连接到 FE,只有一台FE时,默认启动是leader
添加FE(FOLLOWER )节点 ALTER SYSTEM ADD FOLLOWER "fe_host:edit_log_port"
添加FE(OBSERVER) 节点 ALTER SYSTEM ADD OBSERVER "fe_host:edit_log_port"
启动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;