脚本安装Doris2.10和Doris Manager
安装过程参考官方文档:
手动部署存算一体集群 - Apache Doris
这里写了脚本一键安装,包括了系统参数配置,文件解压缩,参数文件修改等
将脚本和doris安装包,java包放在同一个目录下,然后执行脚本输入一些安装配置参数后,开始安装,安装完成之后使用doris用户进行管理
1.使用doris.sh进行安装
#########################################################
##########Doris Setup Scripts by Brent,2025-06-09
#########################################################
Please Enter Doris Setup Directory:[/opt/doris]
/data/doris
Please Enter Doris Setup Role:[1-fe,2-be,3-fe and be]
3
Please Enter Doris FE DATA Directory:[DEFAULT or like /data/doris-meta]
/data/doris/meta
Please Enter Doris BE DATA Directory:[DEFAULT or like /data1,/data2]
/data/doris/data
Please Enter Doris LOG Directory:[DEFAULT or like /data/log]
/data/doris/log
Please Enter Doris Setup Package:[apache-doris-2.1.10-bin-x64.tar.gz]
apache-doris-2.1.10-bin-x64.tar.gz
Please Enter Doris priority_networks:[like 192.168.1.0/24;192.168.2.0/24]
192.168.1.0/24
Do You Want Setup Java:[yes/no]
yes
Please Enter Doris JAVA Package:[jdk-8u421-linux-x64.tar.gz]
jdk-8u421-linux-x64.tar.gz
Please Enter Java Setup HOME:[/opt/java]
/data/doris/java
Begin Setup...
groupadd: group 'doris' already exists
useradd: user 'doris' already exists
---------------------------------Setup Summary-----------------------------
*Setup_Role: Java Setup_JAVA_HOME: /data/doris/java/jdk1.8.0_421
*Setup_Role: fe Setup_HOME: /data/doris/apache-doris-2.1.10-bin-x64/fe Setup_DATA_HOME: /data/doris/meta Setup_LOG_HOME: /data/doris/log/fe
*Setup_Role: be Setup_HOME: /data/doris/apache-doris-2.1.10-bin-x64/be Setup_DATA_HOME: /data/doris/data Setup_LOG_HOME: /data/doris/log/be
这里需要注意,如果是doris2.X jdk使用java8,如果是doris3.x jdk使用java17
端口规划:
实例名称 | 端口名称 | 默认端口 | 通信方向 | 说明 |
---|---|---|---|---|
BE | be_port | 9060 | FE -> BE | BE 上 Thrift Server 的端口,用于接收来自 FE 的请求 |
BE | webserver_port | 8040 | BE <-> BE | BE 上的 HTTP Server 端口 |
BE | heartbeat_service_port | 9050 | FE -> BE | BE 上的心跳服务端口(Thrift),用于接收来自 FE 的心跳 |
BE | brpc_port | 8060 | FE <-> BE,BE <-> BE | BE 上的 BRPC 端口,用于 BE 之间的通信 |
FE | http_port | 8030 | FE <-> FE,Client <-> FE | FE 上的 HTTP Server 端口 |
FE | rpc_port | 9020 | BE -> FE,FE <-> FE | FE 上的 Thrift Server 端口,每个 FE 的配置需保持一致 |
FE | query_port | 9030 | Client <-> FE | FE 上的 MySQL Server 端口 |
FE | edit_log_port | 9010 | FE <-> FE | FE 上的 bdbje 通信端口 来源: 集群规划 - Apache Doris |
2.启动doris
su - doris
进入安装目录bin,分别启动fe和be
bin/start_fe.sh --daemo
bin/start_be.sh --daemo
查询fe是否正常启动
curl http://192.168.56.77:8030/api/bootstrap
3.登录doris fe
使用mysql客户端登录:mysql -uroot -P<fe_query_port> -h<fe_ip_address>
mysql -uroot -P9030 -h127.0.0.1
4.添加多个fe或者observer
## registe a new FE follower node
ALTER SYSTEM ADD FOLLOWER "<fe_ip_address>:<fe_edit_log_port>"
## register a new FE observer node
ALTER SYSTEM ADD OBSERVER "<fe_ip_address>:<fe_edit_log_port>"
alter system add follower "xxxx:9010"
注意
FE Follower(包括 Master)节点的数量建议为奇数,建议部署 3 个组成高可用模式。
当 FE 处于高可用部署时(1 个 Master,2 个 Follower),我们建议通过增加 Observer FE 来扩展 FE 的读服务能力
如果是follower
bin/start_fe.sh --helper <helper_fe_ip>:<fe_edit_log_port> --daemon
其中,helper_fe_ip 是 FE 集群中任何存活节点的 IP 地址。--helper 参数仅在第一次启动 FE 时需要,之后重启无需指定。
5.添加be节点
登录fe后注册
## registe BE node
ALTER SYSTEM ADD BACKEND "<be_ip_address>:<be_heartbeat_service_port>"
alter system add backend "192.168.56.77:9050";
6.修改root密码
SET PASSWORD = PASSWORD('Dsg_123');
7.测试表
MySQL [testdb]> create database testdb PROPERTIES ("replication_num"="1");
Query OK, 0 rows affected (0.01 sec)
CREATE TABLE testdb.table_hash
(
k1 TINYINT,
k2 DECIMAL(10, 2) DEFAULT "10.5",
k3 VARCHAR(10) COMMENT "string column",
k4 INT NOT NULL DEFAULT "1" COMMENT "int column"
)
COMMENT "my first table"
DISTRIBUTED BY HASH(k1) BUCKETS 32;
SELECT * from testdb.table_hash;
8.安装doris-manager
下载doris-manager:
SelectDB Enterprise下载-SelectDB
(1)上传文件到服务器并解压缩,并将文件移动到你希望安装的目录
(2)配置 WebServer 服务(可选)
修改 webserver/conf/manager.conf
文件可以配置 WebServer 服务,配置说明如下:
配置 | 默认值 | 说明 |
---|---|---|
MANAGER_PORT | 8004 | Doris Manager Web 服务组件监听的端口 |
DB_TYPE | h2 | 服务依赖的数据库类型:mysql、h2 或者 postgresql |
DATA_PATH | ../data | Manager 元数据存储路径,只在 DB_TYPE 为 h2 时生效 |
DB_HOST | - | 数据库的访问地址,只在 DB_TYPE 为 mysql/postgresql 时生效 |
DB_PORT | - | 数据库的访问端口,只在 DB_TYPE 为 mysql/postgresql 时生效 |
DB_USER | - | 数据库的访问用户,只在 DB_TYPE 为 mysql/postgresql 时生效 |
DB_PASS | - | 数据库的访问密码,只在 DB_TYPE 为 mysql/postgresql 时生效 |
DB_DBNAME | - | 数据库的访问库名,只在 DB_TYPE 为 mysql/postgresql 时生效 |
DB_URL_SUFFIX | - | MySQL 数据连接 URL 的后缀 |
HTTP_CONNECT_TIMEOUT | 30 | HTTP 握手超时时间(单位为秒) |
HTTP_SOCKET_TIMEOUT | 60 | 配置 HTTP 接收响应超时时间(单位为秒) |
LISTEN_PROTOCOL | ALL | 服务监听的 IP 协议,支持 ALL、IPV4 和 IPV6,ALL 表示同时支持 IPV4 和 IPV6 |
FE_MIN_DISK_SPACE_FOR_UPGRADE | 10 | 升级时 FE 模块安装路径最小的空余磁盘空间(单位为 GB) |
BE_MIN_DISK_SPACE_FOR_UPGRADE | 10 | 升级时 BE 模块安装路径最小的空余磁盘空间(单位为 GB) |
(3)启动 WebServer 服务
通过以下命令可以启动 WebServer 服务,启动后可以观察 MANAGER_PORT 端口情况,默认为 8004:
webserver/bin/start.sh
(4)登录doris-manager并初始化用户
通过浏览器打开 http://{webserver-ip}:{manager-port} 可以进入 WebServer 服务。
- 初始化 Doris Manager 管理员账户
第一次访问 Web 服务,进入初始化用户页面,创建第一个 Doris Manager 管理员用户。
Doris Manager 管理员账户独立于集群账户,只用于 Manager 权限管控。
- 配置服务组件部署信息
以下页面可以配置服务信息:
-
配置说明如下:
配置 说明 监控告警服务 可选项,用于配置 Doris Manager 的监控告警模块,会安装 Grafana、Prometheus、Alertmanager,需要在安装 Doris Manager 的机器上选择三个可用的端口。 邮件告警 配置邮件服务器,随后可以使用告警中的“邮件告警”渠道。 代理配置 如果生产环境和外网隔离,可以设置代理发送通知到公网办公通讯软件。 安装包配置 配置本地的 Doris Core、Doris Manager 安装包存放路径,用于新建、升级集群。 来源: 部署 Doris Manager | SelectDB
(5)安装doris agentd
在需要安装的服务器上面,进入目录,例如我想把doris agent安装的/opt/doris-agent中,执行下面的命令,把其中的地址改成doris-manager的地址和端口
wget http://192.168.56.77:8004/api/download/deploy.sh -O deploy_agent.sh && chmod +x deploy_agent.sh && ./deploy_agent.sh
(6)集群接管
上面我们已经安装好了doris,这里只要接管已经安装的集群即可
接管成功: